我想使用访问令牌从CI环境中发布和检索artifactory npm存储库。我已经使用artifactory API创建了一个持有者令牌,但是当我尝试在.npmrc中使用它进行访问时,格式如下:
//mydomain.jrog.io/:_authToken=myveryverylongaccesstoken
registry=https://mydomain.jfrog.io/mydomain/api/npm/npm
我总是收到401个错误的反馈。
此外,尽管可能是一个不同的问题,但如果我尝试使用npm登录和实际的artifactory凭据,我会得到响应:
adduser Incorrect username or password
npm WARN adduser You can reset your account by visiting:
npm WARN adduser
npm WARN adduser https://npmjs.org/forgot
npm WARN adduser
npm ERR! code E403
npm ERR! forbidden No oauth npm default login configuration found: org.couchdb.user:myusername
有关访问令牌的artifactory文档明确表示这是一种设置访问令牌的用例,但有关设置npm repo的文档似乎总是暗示您需要一个真正的用户帐户,并且没有提到访问令牌……
发布于 2017-08-02 21:15:03
你的手工艺品版本是什么?
"npm登录“方式仅在5.4 (也称为._authToken),因此,如果您低于该级别,那么您唯一的机会就是使用基本身份验证进行身份验证(也就是。_auth)。
基本身份验证非常容易设置,Artifactory提供了一个简单的入口点来帮助您设置.npmrc
启动以下命令(不要忘记将user和encrypted_password替换为您想要用来进行身份验证的Artifactory用户帐户)
curl -u user:encrypted_password https://mydomain.jfrog.io/mydomain/api/npm/auth
它将输出类似如下的内容
_auth = YourLongBasicAuthToken always-auth = true email = user@server.com
将这3行复制到您的.npmrc中,这应该可以很好地工作……
发布于 2019-07-13 06:15:19
其他答案中的_auth行破坏了从npmjs中检索的一些范围内的包。我发现我只需要为我正在使用的注册表使用特定的_auth。请在此处查看我的原始答案https://stackoverflow.com/a/57014522/442837
发布于 2020-12-09 16:39:29
.nprmc
文件检索接下来自动生成的字段_auth
、email
和always-auth
运行以下命令直接从-> 检索这些字符串
curl用户名{ -u }:{API_key} http://{artifactory_server_domain}/{domain}/artifactory/api/npm/auth
备注:
用户名{
的域
中域的附加字段
https://stackoverflow.com/questions/44984315
复制相似问题