summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan Cholasta <jcholast@redhat.com>2015-08-27 07:23:39 +0200
committerJan Cholasta <jcholast@redhat.com>2015-08-27 15:53:42 +0200
commit43ee695195c2024c2875663f7bc1d9c3c291865d (patch)
treedf9df275264557c8c69f3ffac8cefee746bbe390
parenta78e75120990341434e92b370cd3386fd1f8fed3 (diff)
downloadfreeipa-43ee695195c2024c2875663f7bc1d9c3c291865d.tar.gz
freeipa-43ee695195c2024c2875663f7bc1d9c3c291865d.tar.xz
freeipa-43ee695195c2024c2875663f7bc1d9c3c291865d.zip
cert renewal: Include KRA users in Dogtag LDAP update
https://fedorahosted.org/freeipa/ticket/5253 Reviewed-By: Alexander Bokovoy <abokovoy@redhat.com>
-rw-r--r--ipaserver/install/cainstance.py13
1 files changed, 9 insertions, 4 deletions
diff --git a/ipaserver/install/cainstance.py b/ipaserver/install/cainstance.py
index 60c41b6d2..c8b834f78 100644
--- a/ipaserver/install/cainstance.py
+++ b/ipaserver/install/cainstance.py
@@ -1575,7 +1575,7 @@ def update_people_entry(dercert):
Returns True or False
"""
- base_dn = DN(('ou','People'), ('o','ipaca'))
+ base_dn = DN(('o', 'ipaca'))
serial_number = x509.get_serial_number(dercert, datatype=x509.DER)
subject = x509.get_subject(dercert, datatype=x509.DER)
issuer = x509.get_issuer(dercert, datatype=x509.DER)
@@ -1591,9 +1591,14 @@ def update_people_entry(dercert):
conn = ldap2.ldap2(api, ldap_uri=dogtag_uri)
conn.connect(autobind=True)
- db_filter = conn.make_filter(
- {'description': ';%s;%s' % (issuer, subject)},
- exact=False, trailing_wildcard=False)
+ db_filter = conn.combine_filters(
+ [
+ conn.make_filter({'objectClass': 'inetOrgPerson'}),
+ conn.make_filter(
+ {'description': ';%s;%s' % (issuer, subject)},
+ exact=False, trailing_wildcard=False),
+ ],
+ conn.MATCH_ALL)
try:
entries = conn.get_entries(base_dn, conn.SCOPE_SUBTREE, db_filter)
except errors.NotFound: