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

Why is Artifactory returning a 403 for all users when called from gradle artifactory plugin?

相关设置信息:gradle4+,较新安装Artifactory(Pro 6+),artifactorygradle插件版本4+

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

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

这个问题:Docker pull from artifactory fails with credentials issue 看起来很接近,但正在使用 docker+jenkins(我不是)并且没有答案。

当我最终深入研究系统日志时,我发现了很多这样的行:"Rejected artifact download request: User XYZ is not permitted to deploy 'SOME JAR' into 'SOME CACHE JAR'"

似乎用户必须拥有 DEPLOY 权限才能下载将被缓存的工件(virtuals/remotes 的行为)。这也可以解释为什么构建曾经工作 - 缓存的 jar 不会一个月前我刚刚添加遥控器并下载了所有内容时需要更新。

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