summaryrefslogtreecommitdiffstats
path: root/ipaserver
diff options
context:
space:
mode:
authorRob Crittenden <rcritten@redhat.com>2009-09-28 10:13:06 -0400
committerJason Gerard DeRose <jderose@redhat.com>2009-09-28 22:27:42 -0600
commit0d70c68395f180ad61b6cefedcef9d8d428df46c (patch)
tree22085cc6fb8acf6eecf4c6913915c8a398f2f14e /ipaserver
parente4877c946f71b2d091d01edfd64768ce7a7a47ee (diff)
downloadfreeipa-0d70c68395f180ad61b6cefedcef9d8d428df46c.tar.gz
freeipa-0d70c68395f180ad61b6cefedcef9d8d428df46c.tar.xz
freeipa-0d70c68395f180ad61b6cefedcef9d8d428df46c.zip
Fix aci plugin, enhance aci parsing capabilities, add user group support
- The aci plugin didn't quite work with the new ldap2 backend. - We already walk through the target part of the ACI syntax so skip that in the regex altogether. This now lets us handle all current ACIs in IPA (some used to be ignored/skipped) - Add support for user groups so one can do v1-style delegation (group A can write attributes x,y,z in group B). It is actually quite a lot more flexible than that but you get the idea) - Improve error messages in the aci library - Add a bit of documentation to the aci plugin
Diffstat (limited to 'ipaserver')
-rw-r--r--ipaserver/plugins/ldap2.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/ipaserver/plugins/ldap2.py b/ipaserver/plugins/ldap2.py
index 1b133e570..2bdf51a87 100644
--- a/ipaserver/plugins/ldap2.py
+++ b/ipaserver/plugins/ldap2.py
@@ -39,6 +39,8 @@ from ldap.controls import LDAPControl
# for backward compatibility
from ldap.functions import explode_dn
+import krbV
+
from ipalib import api, errors
from ipalib.crud import CrudBackend
from ipalib.encoder import Encoder, encode_args, decode_retval
@@ -547,7 +549,7 @@ class ldap2(CrudBackend, Encoder):
def _generate_modlist(self, dn, entry_attrs):
# get original entry
- (dn, entry_attrs_old) = self.get_entry(dn)
+ (dn, entry_attrs_old) = self.get_entry(dn, ['*', 'aci'])
# get_entry returns a decoded entry, encode it back
# we could call search_s directly, but this saves a lot of code at
# the expense of a little bit of performace