{"_id":"@crmackey/verdaccio-activedirectory","_rev":"2-6c9bf04632667eb2d5d18f8e96336b16","name":"@crmackey/verdaccio-activedirectory","dist-tags":{"latest":"1.1.0"},"versions":{"1.0.1":{"name":"@crmackey/verdaccio-activedirectory","version":"1.0.1","keywords":["verdaccio","activedirectory","ldap"],"author":{"name":"crmackey"},"license":"MIT","_id":"@crmackey/verdaccio-activedirectory@1.0.1","maintainers":[{"name":"crmackey","email":"caleb.mackey@gmail.com"}],"homepage":"https://github.com/CalebM1987/verdaccio-activedirectory#readme","bugs":{"url":"https://github.com/CalebM1987/verdaccio-activedirectory/issues"},"dist":{"shasum":"a497a3f5ed3364e2b842f60eb562314fe67eb46e","tarball":"https://registry.npmjs.org/@crmackey/verdaccio-activedirectory/-/verdaccio-activedirectory-1.0.1.tgz","fileCount":5,"integrity":"sha512-OOmnF8EmsoaoyoLiMdncpR9mvLHXmEw+wF731QueVE+s2Yay38QTOOuCRxaVqb48tolXPtR5UrwLbfGItdaV8g==","signatures":[{"sig":"MEUCIAa0ksvXjg1pGMaPyEn+takel9KnPBb4NgN1XgKDvrT7AiEAuLA1ec3bwabzc9Th+D+YY72HYIuhXYjB2qkq6LbNYwI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16751},"main":"index.js","gitHead":"bf871831a49aa57e104f18c262fa3ec198ffcb0f","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"crmackey","email":"caleb.mackey@gmail.com"},"repository":{"url":"git+https://github.com/CalebM1987/verdaccio-activedirectory.git","type":"git"},"_npmVersion":"10.2.3","description":"Active Directory authentication plugin for verdaccio","directories":{},"_nodeVersion":"18.19.0","dependencies":{"activedirectory":"^0.7.2"},"contributtors":[" ela-compil","theundefined","devnill"],"publishConfig":{"access":"public"},"_hasShrinkwrap":true,"_npmOperationalInternal":{"tmp":"tmp/verdaccio-activedirectory_1.0.1_1755618187528_0.28500983262512536","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@crmackey/verdaccio-activedirectory","version":"1.1.0","description":"Active Directory authentication plugin for verdaccio","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"publishConfig":{"access":"public"},"author":{"name":"crmackey"},"contributtors":[" ela-compil","theundefined","devnill"],"license":"MIT","keywords":["verdaccio","activedirectory","ldap"],"repository":{"type":"git","url":"git+https://github.com/CalebM1987/verdaccio-activedirectory.git"},"dependencies":{"activedirectory":"^0.7.2"},"_id":"@crmackey/verdaccio-activedirectory@1.1.0","gitHead":"fd0bbe0dd95f80c9b9a91e9ea1d800f91f4130f3","bugs":{"url":"https://github.com/CalebM1987/verdaccio-activedirectory/issues"},"homepage":"https://github.com/CalebM1987/verdaccio-activedirectory#readme","_nodeVersion":"18.19.0","_npmVersion":"10.2.3","dist":{"integrity":"sha512-IUZ9qij/NjJ0/sVRaJOU/XQV0Vr2AZwFtEd3tixVqhzgNjFGthPzcePA7YzARB/JvSWztZpCmTxpZaO+sZBkjA==","shasum":"b1360847731465605230a2f226d23351565e7a53","tarball":"https://registry.npmjs.org/@crmackey/verdaccio-activedirectory/-/verdaccio-activedirectory-1.1.0.tgz","fileCount":5,"unpackedSize":16759,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQD2S3fUBgK1gy3yXZk99rB2/jyasNrb5Aw8jXAmnVhBiAIhAOcf1H2C+b5dX1oOcl3iv4fuRI1Jnph8kcIPSj1D7ZQk"}]},"_npmUser":{"name":"crmackey","email":"caleb.mackey@gmail.com"},"directories":{},"maintainers":[{"name":"crmackey","email":"caleb.mackey@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/verdaccio-activedirectory_1.1.0_1755632578287_0.9474760239708702"},"_hasShrinkwrap":true}},"time":{"created":"2025-08-19T15:43:07.463Z","modified":"2025-08-19T19:42:58.652Z","1.0.1":"2025-08-19T15:43:07.695Z","1.1.0":"2025-08-19T19:42:58.463Z"},"bugs":{"url":"https://github.com/CalebM1987/verdaccio-activedirectory/issues"},"author":{"name":"crmackey"},"license":"MIT","homepage":"https://github.com/CalebM1987/verdaccio-activedirectory#readme","keywords":["verdaccio","activedirectory","ldap"],"repository":{"type":"git","url":"git+https://github.com/CalebM1987/verdaccio-activedirectory.git"},"description":"Active Directory authentication plugin for verdaccio","maintainers":[{"name":"crmackey","email":"caleb.mackey@gmail.com"}],"readme":"# @crmackey/verdaccio-activedirectory\nActive Directory authentication plugin for verdaccio\n\n> note: this is forked from [nowhammies/verdaccio-activedirectory](https://github.com/nowhammies/verdaccio-activedirectory) with an enhancement to allow `whiteListedUsers` to the configuration.\n\n\n## Installation\n\n```sh\n$ npm install @crmackey/verdaccio-activedirectory\n```\n\n## Config\n\nAdd to your `config.yaml`:\n\n```yaml\nauth:\n  activedirectory:\n    url: \"ldap://10.0.100.1\"\n    baseDN: 'dc=sample,dc=local'\n    domainSuffix: 'sample.local'\n    groupName: 'npmWriters' # optional\n    whiteListedUsers:\n      - 'special-user'\n```\n\nAlternatively, if your config.yaml uses multiple security groups, you can provide a yaml sequence:\n\n```yaml\nauth:\n  activedirectory:\n    url: \"ldap://10.0.100.1\"\n    baseDN: 'dc=sample,dc=local'\n    domainSuffix: 'sample.local'\n    groupName:\n      - 'npmWriters'\n      - 'npmAdministrators'\n    whiteListedUsers:\n      - 'special-user'\n```\n\nNote that when using the `groupName` parameter, the plugin will require at least one security group to exist on the user in order to successfully authenticate.\n\n# Examples\n\n## Restricting a specific scope\nGroups(s) defined in the `groupName` secion of the activedirectory configuration become available to the `packages` block of config.yaml. This can be used to restrict certain actions. Below, the scope `@internal-scope` is only accessable to users belowing to `npmUsers`:\n\n```\nauth:\n  activedirectory:\n    url: \"ldap://10.0.100.1\"\n    baseDN: 'dc=sample,dc=local'\n    domainSuffix: 'sample.local'\n    groupName: 'npmUsers' \n\npackages:\n  '@internal-scope/*':\n    access: npmUsers\n    publish: npmUsers\n    unpublish: npmUsers\n\n  '**':\n    access: $all\n    proxy: npmjs\n```\n\n## Using multiple groups for access control\nBy providing multple groups in the `groupName` section, we can restrict actions to individual classes of users. In this example we:\n- allow anyone to view and install packages within `@internal-scope` \n- have restricted publishing to users who belong to `npmWriters` or `npmAdmins`\n- only allow `npmAdmins` to unpublish packages\n\n```\nauth:\n  activedirectory:\n    url: \"ldap://10.0.100.1\"\n    baseDN: 'dc=sample,dc=local'\n    domainSuffix: 'sample.local'\n    groupName: \n      - npmWriters\n      - npmAdmins\n\npackages:\n  '@internal-scope/*':\n    access: $all\n    publish: npmUsers npmAdmins\n    unpublish: npmAdmins\n\n  '**':\n    access: $all\n    proxy: npmjs\n```\n","readmeFilename":"README.md"}