我有一个专用的Verdaccio
npm存储库。
我将authentification
配置为使用htppasswd文件
auth:
htpasswd:
file: /verdaccio/conf/htpasswd
max_users: -1
所以现在没有人可以npm add ...
使用npm login ...
登录后,我可以使用npm publish
但是我不明白一点:
npm login
向我发送电子邮件。但是有什么意义呢?我在已发布的程序包中找不到该电子邮件的任何痕迹。npm login
之后,在我的.npmrc文件中生成了一个令牌。有有效期吗?author name
。我发现唯一“穿上”我的名字的方法是在package.json
中添加一个author标签。但是,如果我们是在该图书馆工作的3个人,那么每次都必须更改我们的名字吗?有没有办法将htpasswdd与服务器上的作者姓名/电子邮件相关联?答案 0 :(得分:1)
此处是Verdaccio核心维护者。我会尽力回答您的所有问题。
npm登录要求我发送电子邮件。但是有什么意义呢?我在已发布的程序包中找不到该电子邮件的任何痕迹。
Verdaccio不需要电子邮件,但是不幸的是,npmjs.org
不需要电子邮件,因此只要写任何值并跳过该步骤,我们就无法避免。
npm登录后,在我的.npmrc文件中生成了一个令牌。有有效期吗?
这取决于您使用的身份验证,默认情况下,使用
令牌永不过期auth:
htpasswd:
file: /verdaccio/conf/htpasswd
但是如果您要使令牌过期,则需要添加security new property introduced in Verdaccio 4。
security:
api:
jwt:
sign:
expiresIn: 29d
上面的示例将在29天后使所有令牌失效,并且它将覆盖默认行为,这些令牌变得与JWT兼容并共享其所有属性和优点。
在Verdaccio中发布后,我看到匿名作为作者名。我发现唯一“穿上”我的名字的解决方案是在package.json中添加一个author标签。但是,如果我们是在该图书馆工作的3个人,那么每次都必须更改我们的名字吗?是否可以将htpasswdd与服务器上的作者姓名/电子邮件相关联?
作者只能是一个,但是您有更多的选择,贡献者或维护者。只需将它们添加到package.json
中,如下所示。
结果将在Verdaccio UI中显示。