基于项目矩阵权限的Jenkins资源根URL访问404问题求助
Jenkins静态资源域名访问权限问题
环境信息
- Jenkins运行于专用机器,由Haproxy提供SSL支持,部署在内网环境
- 配置两个指向同一机器的域名:主访问域
https://jenkins.company.com、静态资源域https://jenkins-static.company.com - Haproxy配置完全遵循Jenkins官方教程,且禁用Haproxy改用直接HTTP访问,问题依然存在
问题现象
- 在「Manage Jenkins >> System」中配置资源根URL后,所有制品URL均被转换为
https://jenkins-static.company.com/static-files/TOKEN/FILE_PATH格式 - 访问该格式的URL始终返回“Oops!”404页面,Jenkins日志中未找到相关报错信息
已尝试的操作及结果
- 仅在基于项目的矩阵权限策略全局设置中,为「Authenticated Users」添加「Job/Read」权限时,资源URL可正常访问,但此操作会破坏Jenkins实例安全性,无法采用
- 添加以下Jenkins启动参数,无任何效果:
Environment="JENKINS_OPTS=-Djenkins.security.ResourceDomainRootAction.allowAuthenticatedUser=true" Environment="JENKINS_OPTS=-Djenkins.security.ResourceDomainRootAction.validForMinutes=30"
补充发现
- 若仅为「Authenticated Users」设置「Job/Discover」权限而非「Job/Read」,访问静态资源URL会返回403错误,而非之前的404错误
内容的提问来源于stack exchange,提问作者Hcorg
相关产品推荐
相关产品推荐

