summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan Cholasta <jcholast@redhat.com>2013-03-22 11:15:51 +0100
committerMartin Kosek <mkosek@redhat.com>2013-06-27 17:06:51 +0200
commitea7db35b6224b8c67b789ac1eb35c9bc6c3eb6b5 (patch)
tree6bef91fb844bdbe262bcb5e0257fb731f359be04
parentf5bc155f56a3673a419f921db18e64f8647065ec (diff)
downloadfreeipa-ea7db35b6224b8c67b789ac1eb35c9bc6c3eb6b5.tar.gz
freeipa-ea7db35b6224b8c67b789ac1eb35c9bc6c3eb6b5.tar.xz
freeipa-ea7db35b6224b8c67b789ac1eb35c9bc6c3eb6b5.zip
Enable SASL mapping fallback.
Assign a default priority of 10 to our SASL mappings. https://fedorahosted.org/freeipa/ticket/3330
-rw-r--r--freeipa.spec.in8
-rw-r--r--install/share/Makefile.am1
-rw-r--r--install/share/sasl-mapping-fallback.ldif4
-rw-r--r--install/updates/10-config.update10
-rw-r--r--ipaserver/install/dsinstance.py4
-rw-r--r--ipaserver/install/krbinstance.py5
6 files changed, 28 insertions, 4 deletions
diff --git a/freeipa.spec.in b/freeipa.spec.in
index fcbad3e97..5a143b643 100644
--- a/freeipa.spec.in
+++ b/freeipa.spec.in
@@ -17,7 +17,7 @@ Source0: freeipa-%{version}.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
%if ! %{ONLY_CLIENT}
-BuildRequires: 389-ds-base-devel >= 1.3.0
+BuildRequires: 389-ds-base-devel >= 1.3.1.1
BuildRequires: svrcore-devel
BuildRequires: policycoreutils >= %{POLICYCOREUTILSVER}
BuildRequires: systemd-units
@@ -89,7 +89,7 @@ Group: System Environment/Base
Requires: %{name}-python = %{version}-%{release}
Requires: %{name}-client = %{version}-%{release}
Requires: %{name}-admintools = %{version}-%{release}
-Requires: 389-ds-base >= 1.3.0.5
+Requires: 389-ds-base >= 1.3.1.1
Requires: openldap-clients > 2.4.35-4
%if 0%{?fedora} == 18
Requires: nss >= 3.14.3-2
@@ -815,6 +815,10 @@ fi
%endif # ! %{ONLY_CLIENT}
%changelog
+* Wed Jun 26 2013 Jan Cholasta <jcholast@redhat.com> - 3.2.99-3
+- Bump minimum version of 389-ds-base to 1.3.1.1 for SASL mapping priority
+ support.
+
* Mon Jun 17 2013 Petr Viktorin <pviktori@redhat.com> - 3.2.99-2
- Add the freeipa-tests subpackage
diff --git a/install/share/Makefile.am b/install/share/Makefile.am
index 8823723e8..1e56d2c53 100644
--- a/install/share/Makefile.am
+++ b/install/share/Makefile.am
@@ -63,6 +63,7 @@ app_DATA = \
replica-s4u2proxy.ldif \
copy-schema-to-ca.py \
upload-cacert.ldif \
+ sasl-mapping-fallback.ldif \
$(NULL)
EXTRA_DIST = \
diff --git a/install/share/sasl-mapping-fallback.ldif b/install/share/sasl-mapping-fallback.ldif
new file mode 100644
index 000000000..ef7f1cc09
--- /dev/null
+++ b/install/share/sasl-mapping-fallback.ldif
@@ -0,0 +1,4 @@
+dn: cn=config
+changetype: modify
+replace: nsslapd-sasl-mapping-fallback
+nsslapd-sasl-mapping-fallback: on
diff --git a/install/updates/10-config.update b/install/updates/10-config.update
index e377689ea..c631b2c23 100644
--- a/install/updates/10-config.update
+++ b/install/updates/10-config.update
@@ -47,3 +47,13 @@ only:nsslapd-minssf-exclude-rootdse:on
# POSIX winsync plugin
dn: cn=ipa-winsync,cn=plugins,cn=config
only: nsslapd-pluginPrecedence: 60
+
+# Enable SASL mapping fallback
+dn: cn=config
+only:nsslapd-sasl-mapping-fallback: on
+
+dn: cn=Full Principal,cn=mapping,cn=sasl,cn=config
+addifnew:nsSaslMapPriority: 10
+
+dn: cn=Name Only,cn=mapping,cn=sasl,cn=config
+addifnew:nsSaslMapPriority: 10
diff --git a/ipaserver/install/dsinstance.py b/ipaserver/install/dsinstance.py
index 01b082a70..e48ced4b8 100644
--- a/ipaserver/install/dsinstance.py
+++ b/ipaserver/install/dsinstance.py
@@ -215,6 +215,7 @@ class DsInstance(service.Service):
self.step("configure autobind for root", self.__root_autobind)
self.step("configure new location for managed entries", self.__repoint_managed_entries)
self.step("configure dirsrv ccache", self.configure_dirsrv_ccache)
+ self.step("enable SASL mapping fallback", self.__enable_sasl_mapping_fallback)
self.step("restarting directory server", self.__restart_instance)
def __common_post_setup(self):
@@ -657,6 +658,9 @@ class DsInstance(service.Service):
def __enable_ldapi(self):
self._ldap_mod("ldapi.ldif", self.sub_dict)
+ def __enable_sasl_mapping_fallback(self):
+ self._ldap_mod("sasl-mapping-fallback.ldif", self.sub_dict)
+
def add_hbac(self):
self._ldap_mod("default-hbac.ldif", self.sub_dict)
diff --git a/ipaserver/install/krbinstance.py b/ipaserver/install/krbinstance.py
index 33cd3489d..a16e4d5f0 100644
--- a/ipaserver/install/krbinstance.py
+++ b/ipaserver/install/krbinstance.py
@@ -277,6 +277,7 @@ class KrbInstance(service.Service):
nsSaslMapRegexString=['\(.*\)@\(.*\)'],
nsSaslMapBaseDNTemplate=[self.suffix],
nsSaslMapFilterTemplate=['(krbPrincipalName=\\1@\\2)'],
+ nsSaslMapPriority=['10'],
)
self.admin_conn.add_entry(entry)
@@ -288,8 +289,8 @@ class KrbInstance(service.Service):
cn=["Name Only"],
nsSaslMapRegexString=['^[^:@]+$'],
nsSaslMapBaseDNTemplate=[self.suffix],
- nsSaslMapFilterTemplate=[
- '(krbPrincipalName=&@%s)' % self.realm],
+ nsSaslMapFilterTemplate=['(krbPrincipalName=&@%s)' % self.realm],
+ nsSaslMapPriority=['10'],
)
self.admin_conn.add_entry(entry)