{"id":18637933,"url":"https://github.com/particlekit/ldapkit","last_synced_at":"2026-02-11T17:31:37.272Z","repository":{"id":62575386,"uuid":"113774179","full_name":"particleKIT/ldapKIT","owner":"particleKIT","description":"ldapKIT - a python-ldap wrapper library and scripts.","archived":false,"fork":false,"pushed_at":"2023-05-22T12:29:06.000Z","size":77,"stargazers_count":1,"open_issues_count":1,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-07-23T03:47:41.858Z","etag":null,"topics":["ldap","python-ldap","usermanagement"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/particleKIT.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-12-10T18:42:34.000Z","updated_at":"2021-12-17T10:28:29.000Z","dependencies_parsed_at":"2024-11-07T05:49:06.661Z","dependency_job_id":null,"html_url":"https://github.com/particleKIT/ldapKIT","commit_stats":{"total_commits":32,"total_committers":3,"mean_commits":"10.666666666666666","dds":0.15625,"last_synced_commit":"e7cdd2a7b9d0a34512ef6a8e5be917d01e1272ff"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/particleKIT/ldapKIT","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/particleKIT%2FldapKIT","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/particleKIT%2FldapKIT/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/particleKIT%2FldapKIT/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/particleKIT%2FldapKIT/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/particleKIT","download_url":"https://codeload.github.com/particleKIT/ldapKIT/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/particleKIT%2FldapKIT/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270082388,"owners_count":24523720,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-12T02:00:09.011Z","response_time":80,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ldap","python-ldap","usermanagement"],"created_at":"2024-11-07T05:38:23.728Z","updated_at":"2026-02-11T17:31:37.217Z","avatar_url":"https://github.com/particleKIT.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# LDAP User Script Toolkit\n\nA collection of python scripts that act as a wrapper/cli for the python-ldap library. There is an overall config file config.yml. The scripts have the following functionalities:\n\n  * add/delete LDAP accounts,\n  * create/archive user directories (and set quotas) belonging to these accounts on all fileservers according to the settings in the config.yml,\n  * change email addresses in LDAP, GitLab and mailing list subscriptions\n  * reset passwords\n  * create/remove groups in ldap\n  * add/remove users from LDAP groups\n\nAll scripts provide ``--help``, ``--verbose`` and ``--dryrun`` flags.\n\n# Install\n```\npip install ldapKIT\n```\n\n# User add/delete\n\nTo add/delete users, you can use the scripts: ``particleldapuseradd`` and ``particleldapuserdel -–user NAME``.  \nThere is also the functionality to search for users that are inactive for ``n`` days (inactive means: last password change older than  ``m`` days) and delete them with ``particleldapuserdel –-cleanup``.  \nThe userdel script does not only remove the ldap user but is also able to run post-deletion tasks via ansible e.g. to backup user directories.\n  \n# Group add/delete/modify\n\nThis is done via the tool ``particleldapgroup``. Usage:\n```bash\n# particleldapgroup --help\nusage: particleldapgroup [-h] [--verbose] [--dryrun]\n                         {create,delete,adduser,deluser,cleanup} ...\n\npositional arguments:\n  {create,delete,adduser,deluser,cleanup}\n    create              create new group\n    delete              delete group\n    adduser             add users to group\n    deluser             remove users from group\n    cleanup             remove non-existant users from group\n\noptional arguments:\n  -h, --help            show this help message and exit\n  --verbose, -v         add more ouput\n  --dryrun, -d          don't write anything\n```\n\n\n# Changing E-Mail Addresses\n\nThere is the script ``particleldapchangeemail`` which changes the email of an user in its:\n\n  * LDAP account,\n  * GitLab account (which somehow does not update its database when an ldap account changes its email)\n  * and removes/adds its old/new email to a configured mailing list.\n\n# Example configuration\nSee the [config.yml](./example/config.yml) for an example configuration which uses the full functionality. Also see the [userdir.yml](./example/userdir.yml) which is an ansible playbook invoked by ``particleldapuser{add,del}`` to create/archive user dirs on foregin file servers (set in the config.yml).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fparticlekit%2Fldapkit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fparticlekit%2Fldapkit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fparticlekit%2Fldapkit/lists"}