diff --git a/seafile-ldap.py b/seafile-ldap.py index 224646c..9c96255 100644 --- a/seafile-ldap.py +++ b/seafile-ldap.py @@ -249,8 +249,14 @@ for ldapGroup in ldapGroups: if seafileGroup['name'] == ldapGroup.name: seafileGroupMembers = request('admin/groups/{0}/members/'.format(seafileGroup['id']), seafileURL, seafileToken)['response']['members'] for ldapGroupMember in ldapGroup.member: - print(ldapGroupMember) - + logger.debug("Searching for LDAP user {0}".format(ldapGroupMember)) + ldap.search(ldapBase, '(distinguishedName={0})'.format(ldapGroupMember), attributes=['*']) + count = len(ldap.entries) + logger.debug("Found {0} LDAP user.".format(count)) + if count == 1 and [item for item in seafileGroupMembers if ldap.entries.mail in item ]: + continue + else: + print("User {0} is not in Seafile Group {1}".format(ldap.entries.mail, ldapGroup.name)) else: continue