summaryrefslogtreecommitdiffstats
path: root/ipaserver
diff options
context:
space:
mode:
authorTomas Krizek <tkrizek@redhat.com>2016-10-05 17:42:32 +0200
committerMartin Basti <mbasti@redhat.com>2016-11-07 11:34:03 +0100
commitde58a5c60596de8b45c8016c3318bac78305477a (patch)
tree80ea270b7dd694ab2ecd6404526e156858758260 /ipaserver
parent5760b7e983da6bda8f5383d9079551e4acb4c2da (diff)
downloadfreeipa-de58a5c60596de8b45c8016c3318bac78305477a.tar.gz
freeipa-de58a5c60596de8b45c8016c3318bac78305477a.tar.xz
freeipa-de58a5c60596de8b45c8016c3318bac78305477a.zip
ipaldap: merge simple_bind into LDAPClient
* Use LDAPClient.simple_bind instead of extra call to IPAdmin.do_simple_bind * Rename binddn to bind_dn * Rename bindpw to bind_password * Explicitly specify bind_dn in all calls https://fedorahosted.org/freeipa/ticket/6461 Reviewed-By: Martin Basti <mbasti@redhat.com> Reviewed-By: Jan Cholasta <jcholast@redhat.com>
Diffstat (limited to 'ipaserver')
-rw-r--r--ipaserver/install/cainstance.py4
-rw-r--r--ipaserver/install/dsinstance.py13
-rw-r--r--ipaserver/install/ldapupdate.py4
-rw-r--r--ipaserver/install/replication.py12
-rw-r--r--ipaserver/install/server/replicainstall.py6
5 files changed, 21 insertions, 18 deletions
diff --git a/ipaserver/install/cainstance.py b/ipaserver/install/cainstance.py
index f115624bc..e6a7e24f6 100644
--- a/ipaserver/install/cainstance.py
+++ b/ipaserver/install/cainstance.py
@@ -1500,8 +1500,8 @@ def replica_ca_install_check(config):
with ipaldap.LDAPClient(ca_ldap_url,
start_tls=True,
force_schema_updates=False) as connection:
- connection.simple_bind(DN(('cn', 'Directory Manager')),
- config.dirman_password)
+ connection.simple_bind(bind_dn=ipaldap.DIRMAN_DN,
+ bind_password=config.dirman_password)
rschema = connection.schema
result = rschema.get_obj(ldap.schema.models.ObjectClass,
objectclass)
diff --git a/ipaserver/install/dsinstance.py b/ipaserver/install/dsinstance.py
index aaaba0788..c18a8f329 100644
--- a/ipaserver/install/dsinstance.py
+++ b/ipaserver/install/dsinstance.py
@@ -659,8 +659,8 @@ class DsInstance(service.Service):
root_logger.debug("Waiting for memberof task to complete.")
conn = ipaldap.IPAdmin(self.fqdn)
if self.dm_password:
- conn.do_simple_bind(
- DN(('cn', 'directory manager')), self.dm_password)
+ conn.simple_bind(bind_dn=ipaldap.DIRMAN_DN,
+ bind_password=self.dm_password)
else:
conn.do_sasl_gssapi_bind()
replication.wait_for_task(conn, dn)
@@ -794,7 +794,8 @@ class DsInstance(service.Service):
'restart_dirsrv %s' % self.serverid)
conn = ipaldap.IPAdmin(self.fqdn)
- conn.do_simple_bind(DN(('cn', 'directory manager')), self.dm_password)
+ conn.simple_bind(bind_dn=ipaldap.DIRMAN_DN,
+ bind_password=self.dm_password)
mod = [(ldap.MOD_REPLACE, "nsSSLClientAuth", "allowed"),
(ldap.MOD_REPLACE, "nsSSL3Ciphers", "default"),
@@ -830,7 +831,8 @@ class DsInstance(service.Service):
trust_flags = dict(reversed(dsdb.list_certs()))
conn = ipaldap.IPAdmin(self.fqdn)
- conn.do_simple_bind(DN(('cn', 'directory manager')), self.dm_password)
+ conn.simple_bind(bind_dn=ipaldap.DIRMAN_DN,
+ bind_password=self.dm_password)
nicknames = dsdb.find_root_cert(self.cacert_name)[:-1]
for nickname in nicknames:
@@ -853,7 +855,8 @@ class DsInstance(service.Service):
subject_base=self.subject_base)
conn = ipaldap.IPAdmin(self.fqdn)
- conn.do_simple_bind(DN(('cn', 'directory manager')), self.dm_password)
+ conn.simple_bind(bind_dn=ipaldap.DIRMAN_DN,
+ bind_password=self.dm_password)
self.import_ca_certs(dsdb, self.ca_is_configured, conn)
diff --git a/ipaserver/install/ldapupdate.py b/ipaserver/install/ldapupdate.py
index 8744caa2b..5f8eb79c9 100644
--- a/ipaserver/install/ldapupdate.py
+++ b/ipaserver/install/ldapupdate.py
@@ -59,8 +59,8 @@ def connect(ldapi=False, realm=None, fqdn=None, dm_password=None, pw_name=None):
conn = ipaldap.IPAdmin(fqdn, ldapi=False, realm=realm, decode_attrs=False)
try:
if dm_password:
- conn.do_simple_bind(binddn=DN(('cn', 'directory manager')),
- bindpw=dm_password)
+ conn.simple_bind(bind_dn=ipaldap.DIRMAN_DN,
+ bind_password=dm_password)
elif os.getegid() == 0:
try:
# autobind
diff --git a/ipaserver/install/replication.py b/ipaserver/install/replication.py
index fcd0b320a..5e1b11366 100644
--- a/ipaserver/install/replication.py
+++ b/ipaserver/install/replication.py
@@ -117,7 +117,8 @@ def enable_replication_version_checking(hostname, realm, dirman_passwd):
"""
conn = ipaldap.IPAdmin(hostname, realm=realm, ldapi=True)
if dirman_passwd:
- conn.do_simple_bind(bindpw=dirman_passwd)
+ conn.simple_bind(bind_dn=ipaldap.DIRMAN_DN,
+ bind_password=dirman_passwd)
else:
conn.do_sasl_gssapi_bind()
entry = conn.get_entry(DN(('cn', 'IPA Version Replication'),
@@ -217,7 +218,8 @@ class ReplicationManager(object):
else:
self.conn = ipaldap.IPAdmin(hostname, port=port, cacert=CACERT)
if dirman_passwd:
- self.conn.do_simple_bind(bindpw=dirman_passwd)
+ self.conn.simple_bind(bind_dn=ipaldap.DIRMAN_DN,
+ bind_password=dirman_passwd)
else:
self.conn.do_sasl_gssapi_bind()
else:
@@ -1009,7 +1011,7 @@ class ReplicationManager(object):
start_tls=True)
if r_bindpw:
- r_conn.do_simple_bind(binddn=r_binddn, bindpw=r_bindpw)
+ r_conn.simple_bind(r_binddn, r_bindpw)
else:
r_conn.do_sasl_gssapi_bind()
@@ -1115,7 +1117,7 @@ class ReplicationManager(object):
def convert_to_gssapi_replication(self, r_hostname, r_binddn, r_bindpw):
r_conn = ipaldap.IPAdmin(r_hostname, port=PORT, cacert=CACERT)
if r_bindpw:
- r_conn.do_simple_bind(binddn=r_binddn, bindpw=r_bindpw)
+ r_conn.simple_bind(r_binddn, r_bindpw)
else:
r_conn.do_sasl_gssapi_bind()
@@ -1145,7 +1147,7 @@ class ReplicationManager(object):
# allow connections using two different CA certs
r_conn = ipaldap.IPAdmin(r_hostname, port=PORT, cacert=CACERT)
if r_bindpw:
- r_conn.do_simple_bind(binddn=r_binddn, bindpw=r_bindpw)
+ r_conn.simple_bind(r_binddn, r_bindpw)
else:
r_conn.do_sasl_gssapi_bind()
diff --git a/ipaserver/install/server/replicainstall.py b/ipaserver/install/server/replicainstall.py
index 683dfb508..b016dbd19 100644
--- a/ipaserver/install/server/replicainstall.py
+++ b/ipaserver/install/server/replicainstall.py
@@ -51,8 +51,6 @@ from .common import BaseServer
if six.PY3:
unicode = str
-DIRMAN_DN = DN(('cn', 'directory manager'))
-
def get_dirman_password():
return installutils.read_password("Directory Manager (existing master)",
@@ -637,7 +635,7 @@ def install_check(installer):
replman = None
try:
# Try out the password
- conn.connect(bind_dn=DIRMAN_DN, bind_pw=config.dirman_password,
+ conn.connect(bind_dn=ipaldap.DIRMAN_DN, bind_pw=config.dirman_password,
tls_cacertfile=cafile)
replman = ReplicationManager(config.realm_name,
config.master_host_name,
@@ -791,7 +789,7 @@ def install(installer):
remote_api = installer._remote_api
conn = remote_api.Backend.ldap2
try:
- conn.connect(bind_dn=DIRMAN_DN, bind_pw=config.dirman_password,
+ conn.connect(bind_dn=ipaldap.DIRMAN_DN, bind_pw=config.dirman_password,
tls_cacertfile=cafile)
# Install CA cert so that we can do SSL connections with ldap