LDAP User Directory Tool
A Python tool for interacting with LDAP user and group directories, particularly useful for Active Directory management.
Features
- List users and groups from LDAP directories
- Manage group memberships (add/remove users)
- Query user information by username or email
- Recursive group membership resolution
- Support for MS SFU (Services for Unix) attributes
- Paged results for large directories
Installation
pip install ldapuserdir
Usage
# List groups matching a pattern
ldapuserdir-ctl 'svc-cluster_*'
# Get group memberships for a user
ldapuserdir-ctl -g username
# Add users to a group
ldapuserdir-ctl -a groupname user1 user2 user3
# Remove users from a group
ldapuserdir-ctl -d groupname user1 user2
# List users matching a pattern
ldapuserdir-ctl -u 'username*'
# List users by email pattern
ldapuserdir-ctl -m '*@example.com'
Configuration
Create a configuration file at ~/.ldapuserdir-ctl.cfg or /etc/ldapuserdir-ctl.cfg:
[Ldap]
serverurl = ldaps://your-ldap-server:636
user_ou = OU=Users,DC=example,DC=com
group_ou = OU=Groups,DC=example,DC=com
default_user_dn = CN=service-account,OU=Service Accounts,DC=example,DC=com
default_user_pw = service-account-password
default_group_filter = svc-*
Requirements
- Python 3.6+
- python-ldap 3.0.0+
- Access to an LDAP server (Active Directory or other LDAP-compatible directory)
License
GPLv3+
Description
Languages
Python
99.9%