# 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 ```bash pip install ldapuserdir ``` ## Usage ```bash # 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`: ```ini [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+