我想使用基本身份验证访问Jenkins。我已经启动了Quick and Simple Security page中提到的Jenkins,用户名“user”,密码为“password”,并选择“委托给servlet容器作为安全领域”和“传统模式”作为授权策略。
但是当我尝试使用curl命令访问作业的作业配置(my_test_job)时:
curl -X GET --user user:password --insecure https:///localhost:9000/job/my_test_job/config.xml
(使用与1中服务器启动时所使用的相同的凭据),它没有被授权,我可以在Kenkins中看到以下日志:
投放https://localhost:9000/job/my_test_job/config.xml
时:
hudson.security.AccessDeniedException2:匿名缺少Job / ExtendedRead权限。
我在这里想念什么?如何配置jenkins使用简单的基本身份验证进行访问?感谢你的帮助..
注意:我启用了https并将端口更改为9000,我的jenkins版本是1.609
最佳答案
Jenkins具有自己的身份验证机制,因此默认情况下您无法使用Apache基本身份验证来访问它(这是一个Java应用程序,而不是Apache网站)。尽管您可以将身份验证委托给在Jenkins前面运行的反向代理。步骤如下:
在Linux上,可以在JAVA_ARGS的
/etc/default/jenkins
文件中对其进行配置,但是它可能因Linux发行版或操作系统而异。另请:How can I get Jenkins to stop listening for remote connections?关于curl - 如何使用基本身份验证访问Jenkins,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30286875/