* New translations web.md (Portuguese, Brazilian) docs(website): new translations * New translations web.md (Spanish) docs(website): new translations * New translations web.md (Chinese Simplified) docs(website): new translations * New translations docker.md (Chinese Simplified) docs(website): new translations * New translations plugins.md (Spanish) docs(website): new translations * New translations plugins.md (Portuguese, Brazilian) docs(website): new translations * New translations plugins.md (Chinese Simplified) docs(website): new translations * New translations iis-server.md (Chinese Simplified) docs(website): new translations * New translations iis-server.md (Chinese Simplified) docs(website): new translations * New translations iis-server.md (Chinese Simplified) docs(website): new translations * New translations iis-server.md (Chinese Simplified) docs(website): new translations * New translations iis-server.md (Chinese Simplified) docs(website): new translations * New translations iis-server.md (Chinese Simplified) docs(website): new translations * New translations iis-server.md (Chinese Simplified) docs(website): new translations * New translations install.md (Chinese Simplified) docs(website): new translations * New translations install.md (Chinese Simplified) docs(website): new translations * New translations install.md (Chinese Simplified) docs(website): new translations * New translations kubernetes.md (Chinese Simplified) docs(website): new translations * New translations kubernetes.md (Chinese Simplified) docs(website): new translations * New translations kubernetes.md (Chinese Simplified) docs(website): new translations * New translations kubernetes.md (Chinese Simplified) docs(website): new translations * New translations logger.md (Chinese Simplified) docs(website): new translations * New translations logger.md (Chinese Simplified) docs(website): new translations * New translations node-api.md (Chinese Simplified) docs(website): new translations * New translations notifications.md (Chinese Simplified) docs(website): new translations * New translations node-api.md (Chinese Simplified) docs(website): new translations * New translations notifications.md (Chinese Simplified) docs(website): new translations * New translations notifications.md (Chinese Simplified) docs(website): new translations * New translations notifications.md (Chinese Simplified) docs(website): new translations * New translations notifications.md (Chinese Simplified) docs(website): new translations * New translations node-api.md (Chinese Simplified) docs(website): new translations * New translations iis-server.md (Chinese Simplified) docs(website): new translations * New translations iis-server.md (Chinese Simplified) docs(website): new translations * New translations install.md (Chinese Simplified) docs(website): new translations * New translations kubernetes.md (Chinese Simplified) docs(website): new translations * New translations kubernetes.md (Chinese Simplified) docs(website): new translations * New translations kubernetes.md (Chinese Simplified) docs(website): new translations * New translations logger.md (Chinese Simplified) docs(website): new translations * New translations notifications.md (Chinese Simplified) docs(website): new translations
5.9 KiB
id | title |
---|---|
plugins | 插件 |
Verdaccio是一个可插拔的应用程序。它可以通过多种方式进行扩展,例如新的认证方法,添加endpoints,或者使用自定义存储。
If you are interested to develop your own plugin, read the development section.
用法
安装
$> npm install --global verdaccio-activedirectory
作为一个sinopia的分支项目,verdaccio
和兼容sinopia@1.4.0
的插件具有向后兼容性。在这种情况下,安装方式相同。
$> npm install --global sinopia-memory
配置
打开config.yaml
文件并按如下说明更新auth
部分:
默认配置如下所示,由于在默认情况下我们使用一个内置的htpasswd
插件,我们可以通过注释下面几行代码来禁用它:
Auth插件配置
htpasswd:
file: ./htpasswd
#max_users: 1000
如果你决定使用ldap
插件,将上述部分进行替换。
auth:
activedirectory:
url: "ldap://10.0.100.1"
baseDN: 'dc=sample,dc=local'
domainSuffix: 'sample.local'
多个Auth插件
这在技术上可行,插件的顺序变得非常重要,安全凭据将按顺序获取。
auth:
htpasswd:
file: ./htpasswd
#max_users: 1000
activedirectory:
url: "ldap://10.0.100.1"
baseDN: 'dc=sample,dc=local'
domainSuffix: 'sample.local'
中间件插件配置
这是一个如何设置中间件插件的示例。所有的中间件插件必须被定义在middlewares命名空间。
middlewares:
audit:
enabled: true
存储插件配置
这是一个如何设置存储插件的示例。所有的存储插件必须在store命名空间进行定义。
store:
memory:
limit: 1000
如果你定义一个自定义存储,配置文件中的storage属性将会被忽略。
旧式插件
Sinopia插件
(兼容所有版本)
- sinopia-npm:支持npm注册表的sinopia认证插件。
- sinopia-memory:在内存中缓存用户的sinopia认证插件。
- sinopia-github-oauth-cli。
- sinopia-crowd:支持atlassian crowd的sinopia认证插件。
- sinopia-activedirectory:sinopia Active Directory认证插件。
- sinopia-github-oauth:sinopia2的认证插件,支持github oauth web flow。
- sinopia-delegated-auth:将认证代理给另一个HTTP URL的Sinopia认证插件。
- sinopia-altldap:另一个Sinopia LDAP认证插件
- sinopia-request:一个简单易用且功能齐全的认证插件,可以通过配置使用外部API。
- sinopia-htaccess-gpg-email:使用htaccess格式生成密码,通过GPG加密并通过MailGun API发送给用户。
- sinopia-mongodb:一个易用且功能齐全的认证插件,可通过配置使用mongodb数据库。
- sinopia-htpasswd:支持htpasswd格式的sinopia认证插件。
- sinopia-leveldb:针对Sinopia private npm的基于leveldb的Sinopia认证插件。
- sinopia-gitlabheres:sinopia Gitlab认证插件。
- sinopia-gitlab:sinopia Gitlab认证插件。
- sinopia-ldap:sinopia LDAP认证插件。
- sinopia-github-oauth-env:基于github oauth web flow的Sinopia认证插件。
所有的sinopia插件都应该和verdaccio的未来版本兼容。 无论如何,我们鼓励贡献者将它们迁移到最新的verdaccio API并且使用verdaccio-xx-name格式的前缀。
Verdaccio插件
(兼容2.1.x及以后版本)
授权插件
- verdaccio-bitbucket:verdaccio Bitbucket认证插件。
- verdaccio-ldap:verdaccio LDAP认证插件。
- verdaccio-active-directory:verdaccio Active Directory认证插件
- verdaccio-gitlab:使用Gitlab的Personal Access Token进行认证
- verdaccio-htpasswd:基于(内置)htpasswd文件插件的verdaccio认证插件
- verdaccio-github-oauth: Github oauth authentication plugin for verdaccio.
中间件插件
-
verdaccio-audit:支持npm audit cli的verdaccio插件(内置) (自3.x版本后兼容)
-
verdaccio-profile-api:该插件支持npm profilecli,以及针对基于verdaccio-htpasswd认证的npm profile set password插件。
存储插件
(兼容自3.x及以后版本)
- verdaccio-memory在内存中装载包的存储插件
- verdaccio-s3-storage在Amazon S3中存储包的存储插件
- verdaccio-google-cloud在Google Cloud Storage中存储包的存储插件
警告
并不是所有这些插件都被持续测试过,其中有些可能不能正常工作。如果你发现任何问题,请和插件的所有者联系。