如何解决401启动错误
相关版本:这个信息与…有关Artifactory 5.4版本。X及以上
Artifactory附带一个接入安全服务,其功能不断发展。Artifactory使用一组凭据来使用此服务。偶尔,该系统会遇到问题,特别是在升级不正确地应用了遗留身份验证凭据。如果发生这种情况,Artifactory将无法启动。
为HA安装,节点关闭后将无法正常启动。如果你遇到以下情况错误在你的artifactory.log文件,这意味着Artifactory与它的捆绑Access服务器的身份验证有问题:
2017-12-06 00:16:35,244 [art-init] [ERROR] (o.a.w.s.ArtifactoryContextConfigListener:99) -应用程序无法初始化:HTTP响应状态401:{"errors":[{"code":"UNAUTHORIZED","detail":"Bad credentials","message":"HTTP 401 UNAUTHORIZED"}]}
java.lang.reflect.InvocationTargetException:零
[…]
原因:java.lang.RuntimeException:使用引导凭证生成服务管理令牌失败。
决议
要解决这个问题,您需要重置您在数据库中的访问凭证(这个过程称为引导).请注意有一个更有效的解决方案Artifactory 5.8,请仅在您的版本中使用相关说明。
恢复Artifactory 7中的Access Admin凭据。X:
这些步骤与前面的6非常相似。X步,路径已更新,以反映新的7。X安装目录。
1.创建一个“引导”。“Creds”文件在主节点的美元JFROG_HOME / etc /访问文件夹(通常/var/opt/jfrog/artifactory / etc /访问/):
access-admin@ * =密码
2.将Linux权限更新为600,并由正确的Linux用户拥有:
Chown artifactory:artifactory bootstrap.creds
Chmod 600 bootstrap.creds
3.重启Artifactory
恢复Artifactory的Admin访问权限5.8.X - 6。X:
1.(可选)备份数据库当前配置
2.创建一个“bootstrap.creds的文件美元/ etc / bootstrap.creds ARTIFACTORY_HOME /访问包含:
3.改变权限:
Chown artifactory:artifactory bootstrap.creds#Only if rest of directory is owned by “artifactory”
4.重启Artifactory
注意:如果添加< IP_ADDRESS >在bootstrap.creds返回一个403错误,你可以试试127.0.0.1代替。
恢复管理员访问凭证Artifactory 5.5。X - 5.7.x:
1.(可选)备份数据库当前配置
2.创建一个“引导”。节点的“Creds”文件美元/ etc / bootstrap.creds ARTIFACTORY_HOME /访问包含:
3.改变权限:
Chown artifactory:artifactory bootstrap.creds#Only if rest of directory is owned by “artifactory”
4.编辑或创建美元ARTIFACTORY_HOME / etc /安全/ /键/ access.creds访问文件,其中包括:
5.在你的远程数据库中,你需要从access_users表中删除admin用户:
Delete from access_users where username='admin'
6.重启Artifactory
7.X注意:“基本”API访问不再工作
自从安全更新在Artifactory 7.12, Access API端点不再接受基本的“Access -admin:password”身份验证。相反,您需要通过Artifactory UI生成一个Admin Token。此说明适用于需要使用Access -admin帐户使用Access REST API的用户。
去Admin ->身份和访问->访问令牌:
然后使用令牌对/access进行REST API调用:
curl -H "授权:持有人eyJ[…令牌…]A" http://localhost:8081/access/api/v1/system/ping
好吧
