From 6af8628d5dcb36ae06c01f2308a8c4791b8de0c7 Mon Sep 17 00:00:00 2001 From: kakwa Date: Mon, 25 May 2015 18:52:14 +0200 Subject: [PATCH] adding search template --- conf/ldapcherry.ini | 3 ++- ldapcherry/backend/backendLdap.py | 2 ++ tests/cfg/ldapcherry.ini | 1 + tests/test_BackendLdap.py | 23 ++++++++++++----------- 4 files changed, 17 insertions(+), 12 deletions(-) diff --git a/conf/ldapcherry.ini b/conf/ldapcherry.ini index b2a00f9..3a8de08 100644 --- a/conf/ldapcherry.ini +++ b/conf/ldapcherry.ini @@ -76,7 +76,8 @@ ldap.ca = '/etc/dnscherry/TEST-cacert.pem' ldap.starttls = 'on' ldap.checkcert = 'off' ldap.user_filter_tmpl = '(uid=%(username)s)' -ldap.group_filter_tmpl = '(member=%(userdn)s)' +ldap.group_filter_tmpl = '(member=%(username)s)' +ldap.search_filter_tmpl = '&(uid=%(searchstring)s*)(sn=%(searchstring)s*)' ldap.timeout = 1 diff --git a/ldapcherry/backend/backendLdap.py b/ldapcherry/backend/backendLdap.py index 19575a9..5bc928e 100644 --- a/ldapcherry/backend/backendLdap.py +++ b/ldapcherry/backend/backendLdap.py @@ -26,6 +26,8 @@ class Backend(ldapcherry.backend.Backend): self.userdn = self.get_param('userdn') self.groupdn = self.get_param('groupdn') self.user_filter_tmpl = self.get_param('user_filter_tmpl') + self.group_filter_tmpl = self.get_param('group_filter_tmpl') + self.search_filter_tmpl = self.get_param('search_filter_tmpl') self.attrlist = [] for a in attrslist: try: diff --git a/tests/cfg/ldapcherry.ini b/tests/cfg/ldapcherry.ini index f157b26..d7f1b4d 100644 --- a/tests/cfg/ldapcherry.ini +++ b/tests/cfg/ldapcherry.ini @@ -77,6 +77,7 @@ ldap.starttls = 'on' ldap.checkcert = 'off' ldap.user_filter_tmpl = '(uid=%(username)s)' ldap.group_filter_tmpl = '(member=%(userdn)s)' +ldap.search_filter_tmpl = '&(uid=%(searchstring)s*)(sn=%(searchstring)s*)' ldap.timeout = 1 ad.module = 'ldapcherry.backend.backendSamba4' diff --git a/tests/test_BackendLdap.py b/tests/test_BackendLdap.py index f85c9e5..426a58e 100644 --- a/tests/test_BackendLdap.py +++ b/tests/test_BackendLdap.py @@ -14,17 +14,18 @@ import cherrypy from ldap import SERVER_DOWN cfg = { -'module' : 'ldapcherry.backend.ldap', -'groupdn' : 'ou=group,dc=example,dc=org', -'userdn' : 'ou=People,dc=example,dc=org', -'binddn' : 'cn=dnscherry,dc=example,dc=org', -'password' : 'password', -'uri' : 'ldap://ldap.ldapcherry.org:390', -'ca' : './tests/test_env/etc/ldapcherry/TEST-cacert.pem', -'starttls' : 'off', -'checkcert' : 'off', -'user_filter_tmpl' : '(uid=%(username)s)', -'group_filter_tmpl' : '(member=%(userdn)s)', +'module' : 'ldapcherry.backend.ldap', +'groupdn' : 'ou=group,dc=example,dc=org', +'userdn' : 'ou=People,dc=example,dc=org', +'binddn' : 'cn=dnscherry,dc=example,dc=org', +'password' : 'password', +'uri' : 'ldap://ldap.ldapcherry.org:390', +'ca' : './tests/test_env/etc/ldapcherry/TEST-cacert.pem', +'starttls' : 'off', +'checkcert' : 'off', +'user_filter_tmpl' : '(uid=%(username)s)', +'group_filter_tmpl' : '(member=%(userdn)s)', +'search_filter_tmpl' : '&(uid=%(searchstring)s*)(sn=%(searchstring)s*)', } cherrypy.log.error = syslog_error