{"id":22747256,"url":"https://github.com/savchuk1985/roundup-ldap3","last_synced_at":"2025-03-30T05:40:46.206Z","repository":{"id":213794118,"uuid":"719891945","full_name":"savchuk1985/roundup-ldap3","owner":"savchuk1985","description":"LDAP extension for Roundup Issue Tracker","archived":false,"fork":false,"pushed_at":"2023-12-13T16:42:43.000Z","size":6,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-05T07:49:08.092Z","etag":null,"topics":["account-management","extension","helpdesk","issue-tracker","ldap","ldap-authentication","ldaps","mit-licensed","python","python3","roundup","user-authentication","user-management","user-synchronization"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/savchuk1985.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2023-11-17T05:51:30.000Z","updated_at":"2023-12-13T16:59:51.000Z","dependencies_parsed_at":"2023-12-23T06:54:15.980Z","dependency_job_id":"a22210d0-e514-448d-add1-a7b5c366db9f","html_url":"https://github.com/savchuk1985/roundup-ldap3","commit_stats":null,"previous_names":["savchuk1985/roundup-ldap3"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/savchuk1985%2Froundup-ldap3","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/savchuk1985%2Froundup-ldap3/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/savchuk1985%2Froundup-ldap3/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/savchuk1985%2Froundup-ldap3/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/savchuk1985","download_url":"https://codeload.github.com/savchuk1985/roundup-ldap3/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246281218,"owners_count":20752207,"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","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":["account-management","extension","helpdesk","issue-tracker","ldap","ldap-authentication","ldaps","mit-licensed","python","python3","roundup","user-authentication","user-management","user-synchronization"],"created_at":"2024-12-11T03:13:59.305Z","updated_at":"2025-03-30T05:40:46.184Z","avatar_url":"https://github.com/savchuk1985.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"LDAP extension for Roundup Issue Tracker\n========================================\n\nThe extension provides authentication against an LDAP directory for Roundup\nIssue Tracker. It uses the pure Python `ldap3` library to communicate over LDAP.\n\nHow It Works\n------------\n\nAuthentication is performed using direct binding to the LDAP directory. User\nproperties stored in the database are not used for authentication and are always\ncreated or updated according to information derived from the LDAP attributes.\n\nProperties will be forced to update if present in the `user` class:\n\n| Property              | Attribute                                |\n| --------------------  | ---------------------------------------- |\n| `address`             | `mail`                                   |\n| `alternate_addresses` | `mail`, if multiple                      |\n| `organization`        | `o`                                      |\n| `phone`               | `telephoneNumber` or `mobile`            |\n| `realname`            | `displayName`                            |\n| `roles`               | `memberOf` or search result for `member` |\n\nUser passwords are not synchronized. During the user creation on the tracker, a\nrandom password is generated. This way, user accounts are always protected, even\nif LDAP authentication is disabled.\n\nGroup membership information can also be used for authorization if provided. In\nthis case, the `memberOf` attribute will be checked first. Group entries will\nonly be searched if the user entry does not contain this attribute.\n\nThe extension uses the advanced logging capabilities of the `ldap3` module. LDAP\nmessage activation and detail levels can be set in the extension configuration.\n\nInstallation\n------------\n\nInstall the `ldap3` Python module on your operating system, virtual environment,\nor container, depending on how your tracker is installed. Save the extension and\nconfiguration file in the `extensions` directory of your tracker home. Change\nthe configuration settings and then restart the tracker.\n\nTesting\n-------\n\nYou can also test the extension using your Roundup demo installation and the\nFreeIPA demo server `ipa.demo1.freeipa.org`. This can be done using the\nconfiguration file distributed in this repository, which already contains the\nrequired values.\n\nMore information about the FreeIPA demo instance, including credentials, can be\nfound here: \u003chttps://www.freeipa.org/page/Demo\u003e\n\nTo test secure connections, you also need to download the CA certificate from\n\u003chttps://ipa.demo1.freeipa.org\u003e, then edit the extension configuration and\nspecify the CA file path. Note that when using a relative path, the root\ndirectory is `extensions` and not the tracker home.\n\nRestrictions\n------------\n\n* This was not designed to work with complex LDAP trees\n* Authentication against Active Directory is not supported\n* SASL bindings are not implemented\n\nContributing\n------------\n\nIf you would like to contribute to the project:\n\n* Open pull request with improvements\n* Discuss ideas in issues\n* Spread the word\n* Reach out with any feedback\n\nLicense\n-------\n\nDistributed under the MIT License. See `LICENSE.txt` for more information.\n\nContact\n-------\n\nAnton Savchuk \u003cmailto:a.savchuk@gmx.com\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsavchuk1985%2Froundup-ldap3","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsavchuk1985%2Froundup-ldap3","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsavchuk1985%2Froundup-ldap3/lists"}