为什么从 gradle artifactory 插件调用时 Artifactory 会为所有用户返回 403?

Jeu*_*arg 4 artifactory gradle http-status-code-403

相关设置信息:gradle 4+、相对较新安装的 Artifactory (Pro 6+)、artifactory gradle 插件版本 4+

当尝试在 Eclipse Photon 和 IntelliJ(2017 年末版本)中的本地开发环境中运行构建命令时,我在对依赖项发出 HEAD 请求时遇到了数十个 403 错误。但是,如果我以 gradle 使用的用户身份通过​​ Web 浏览器登录 Artifactory 并访问完全相同的 URL,则可以毫无问题地访问 gradle 无法访问的资源。Artifactory 上的每个用户都会出现此问题,即使是具有管理员权限的用户也是如此。我正在寻找的 jar 是虚拟存储库的一部分,其依赖关系既存在于工件安装的内部,也存在于外部。最后,一个月前的构建工作得很好,我能想到的权限没有任何改变。

tl;dr仅当从 gradle 登录并使用 Artifactory 插件时,虚拟 Artifactory 存储库对每个用户的几乎每个依赖项都会返回 403 错误

这个问题:Docker pull from artifactory failed withcredentials issues似乎很接近,但正在使用 docker+jenkins (我没有)并且没有答案。

Jeu*_*arg 6

当我最终深入系统日志时,我发现了很多这样的行:“拒绝工件下载请求:不允许用户 XYZ 将‘SOME JAR’部署到‘SOME CACHE JAR’”

看来用户必须具有 DEPLOY 权限才能下载将被缓存的工件(虚拟/远程的行为)。这也可以解释为什么构建过去可以工作 - 一个月前缓存的 jar 不需要更新我刚刚添加了遥控器并下载了所有内容。

向我的用户添加相关存储库的部署权限解决了该问题。