在默认配置下,Jenkins是没有安全检查的。任何人都可以以匿名用户身份进入Jenkins,设置Jenkins和Job,执行build操作。但是,Jenkins在大多数应用中,尤其是暴露在互联网的应用中,安全控制是非常重要的。安全控制主要解决两个问题:哪些用户可以进入Jenkins;进入Jenkins的用户可以做些什么事。
Jenkins提供了用户认证和权限控制两种维度的安全策略:
1) Security Realm(安全域):决定用户名和密码,且指定用户属于的组。
2) Authorization Strategy(授权策略):分配用户执行某些操作的权限。
通过Manage Jenkins->Configure Global Security->Enable security,就可以进入Jenkins安全控制界面,如下图所示:
1 Security Realm
1.1 Delegate to servlet container
如果你的Jenkins运行在像Tomcat和GlassFish等服务器上,这些服务器本身就有安装控制,选择这种安全策略,就可以非常简单地让服务器接管Jenkins的安全控制问题。

本文介绍了Jenkins的安全控制,包括Security Realm和Authorization Strategy两部分。Security Realm涉及Delegate to servlet container、Jenkins's own user database、LDAP及Unix user/group database四种策略。Authorization Strategy则涵盖Anyone can do anything、Legacy mode、Logged-in users can do anything、Matrix-based security和Project-based Matrix Authorization Strategy五种方式。此外,还讲述了如何处理因误操作导致的权限锁定问题。
最低0.47元/天 解锁文章
503





