{"id":15199909,"url":"https://github.com/nupplaphil/kopano-ldap","last_synced_at":"2026-02-28T11:02:52.116Z","repository":{"id":90987622,"uuid":"157420305","full_name":"nupplaphil/kopano-ldap","owner":"nupplaphil","description":"LDAP Command Line Interface for Kopano","archived":false,"fork":false,"pushed_at":"2018-12-08T13:06:54.000Z","size":91,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-07-01T07:08:31.753Z","etag":null,"topics":["cli","docker-image","golang","kopano","ldap-client"],"latest_commit_sha":null,"homepage":"","language":"Go","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/nupplaphil.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":"2018-11-13T17:33:17.000Z","updated_at":"2025-03-27T20:02:57.000Z","dependencies_parsed_at":null,"dependency_job_id":"9dbc7c80-5428-4b6f-8afc-0b3826790a32","html_url":"https://github.com/nupplaphil/kopano-ldap","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/nupplaphil/kopano-ldap","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nupplaphil%2Fkopano-ldap","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nupplaphil%2Fkopano-ldap/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nupplaphil%2Fkopano-ldap/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nupplaphil%2Fkopano-ldap/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nupplaphil","download_url":"https://codeload.github.com/nupplaphil/kopano-ldap/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nupplaphil%2Fkopano-ldap/sbom","scorecard":{"id":698800,"data":{"date":"2025-08-11","repo":{"name":"github.com/nupplaphil/kopano-ldap","commit":"fae0776a3ced77157e474c35287fcbb946b50240"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3,"checks":[{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":0,"reason":"Found 0/17 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: GNU General Public License v3.0: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Pinned-Dependencies","score":3,"reason":"dependency not pinned by hash detected -- score normalized to 3","details":["Warn: containerImage not pinned by hash: Dockerfile:1","Warn: containerImage not pinned by hash: Dockerfile:9: pin your Docker image by updating fbartels/openldap:1.2.3 to fbartels/openldap:1.2.3@sha256:2eb7bc9fb95d052b38860bee5e9b5ed8c5c4f0bb1daaf6a3d00cb59766b1272e","Info:   0 out of   2 containerImage dependencies pinned","Info:   1 out of   1 goCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 18 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-22T04:34:29.731Z","repository_id":90987622,"created_at":"2025-08-22T04:34:29.731Z","updated_at":"2025-08-22T04:34:29.731Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29931062,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-28T09:58:13.507Z","status":"ssl_error","status_checked_at":"2026-02-28T09:57:57.047Z","response_time":90,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["cli","docker-image","golang","kopano","ldap-client"],"created_at":"2024-09-28T02:20:55.059Z","updated_at":"2026-02-28T11:02:52.075Z","avatar_url":"https://github.com/nupplaphil.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Build Status](https://travis-ci.com/nupplaphil/kopano-ldap.svg?branch=master)](https://travis-ci.com/nupplaphil/kopano-ldap)\n[![codecov](https://codecov.io/gh/nupplaphil/kopano-ldap/branch/master/graph/badge.svg)](https://codecov.io/gh/nupplaphil/kopano-ldap)\n[![Go Report Card](https://goreportcard.com/badge/github.com/nupplaphil/kopano-ldap)](https://goreportcard.com/report/github.com/nupplaphil/kopano-ldap)\n\n# LDAP Command Line Interface for Kopano\n\nThis CLI is built for the User Management of [Kopano](https://kopano.io).\nIt is inspired by `kopano-cli` and is written in [Go](https://golang.org).\n\nIt should be used in combination with the general `kopano-cli` tool. `kopano-ld` starts, where `kopano-cli` stops with LDAP support.\n\n## General usage of `kopano-ld` tool\n\nThe `kopano-ld` is an administration tool for managing user and groups in LDAP. \nIf you use an other backend than `ldap` for Kopano (f.e `DB` or `unix`), please look for the [8. User Management](https://documentation.kopano.io/kopanocore_administrator_manual/user_management.html) in Kopano.\n\nThe tool can be used to get more information about users and groups too.\n\n### Listing users\n\nAll available users or groups can be displayed by using the following commands:\n\n```bash\n\u003e kopano-ld user --list\n\u003e kopano-ld group --list\n```\n\n## Users\n\n### Displaying details\n\nTo display more information of a specific user, use:\n```bash\n\u003e kopano-ld user john\nName:                     johndoe\nFull name:                John Doe\nEmail address:            john@doe.com\nActive:                   yes\nAdministrator:            no\nFeatures Enabled:         mobile\nFeatures Disabled:        imap; pop3\n```\n\nTo display more information of a specific group, use:\n\n```bash\nTO BE DEFINED (TODO)\n```\n\n### Creating users with LDAP\n\nTo create a new user, use the following command:\n\n```bash\n\u003e kopano-ld user create --user \u003cuser name\u003e \\\n                      --password \u003cpassword\u003e \\\n                      --email \u003cemail\u003e \\\n                      --fullname \u003cfull name\u003e \\\n                      --active \u003cactive\u003e \\\n                      --admin-evel \u003cadministrator\u003e\n```\n\nThe fields between \u003c\u003e should be filled in as follows:\n\n   - `User name`: The name of the user. With this name the user will log on to the store.\n   - `Password`: The password in plain text. The password will be stored encrypted in LDAP.\n   - `Email`: The email address of the user. Often this is `\u003cuser name\u003e@\u003cemail domain\u003e`. \n              You can define more than one email address, which will be set as an alias for this user\n   - `Active`: The active state of this user. If set to `yes` (or not set), the user is able to login, otherwise `no`\n   - `Administrator`: This value should be `0` or `1`. When a use is administrator, the user will be allowed to open all Kopano stores of any user.\n                      **(TODO - not working yet)**\n                      \n### Updating user information with LDAP\n\nThe same `kopano-ld` tool can be used to update LDAP information. Use the following command to update:\n\n```bash\nTO BE DEFINED (TODO)\n```\n\n### Deleting users with LDAP\n\nTo delete a user from LDAP, use the following command:\n\n```bash\n\u003e kopano-ld user delete --user \u003cuser name\u003e\n```\n\nThe user will be deleted from LDAP. However the store will be kept in the database.\n\n## Groups\n\nTO BE DEFINED (TODO)\n\n## Creating Groups with LDAP\n\nTO BE DEFINED (TODO)\n\n## Deleting Groups with LDAP\n\nTO BE DEFINED (TODO)\n\n## Kopano Feature management\n\nSome features within KC can be disabled. \nBy default, all features are disabled. \nEnabling can be done globally or on a per-user basis. \nWhen a feature has been globally disabled, you may enable the feature in a per-user basis too. \n\nCurrently the only features that can be controlled are **`imap`**, **`pop3`** and **`mobile`**.\n\nIf the **`pop3`** feature is disabled, users won’t be able to login using the POP3 protocol.\nThe same goes for the **`imap`** feature, but this has an extra effect aswell. \nWhen a user receives email when the **`imap`** feature is enabled, the original email and some other imap optimized data will also be saved in the Kopano database and attachment directory.\nThis will make the IMAP services provided by the kopano-gateway more reliable. \nOn the other hand, it will also use more diskspace. \n\nDisabling the **`imap`** feature will thus save diskspace.\n\n### Globally enabling features\n\nsee [8.7.1. Globally enabling features](https://documentation.kopano.io/kopanocore_administrator_manual/user_management.html#globally-enabling-features)\n\n### Per-user en- or disabling features\n\nManaging the feature per user in LDAP, the `kopano-ld` tool has to be used to control the features:\n\n```bash\n\u003e kopano-ld user feature add --user john --add imap\n\u003e kopano-ld user feature rem --user john --rem mobile\n``` \n\nIn LDAP, the features will be managed from the two attributes `kopanoEnabledFeatures` and `kopanoDisabledFeatures`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnupplaphil%2Fkopano-ldap","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnupplaphil%2Fkopano-ldap","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnupplaphil%2Fkopano-ldap/lists"}