Jenkins的安全控制

Jenkins提供了用户认证和权限控制两种维度的安全策略:

       1) Security Realm(安全域):决定用户名和密码,且指定用户属于的组。

       2) Authorization Strategy(授权策略):分配用户执行某些操作的权限。

通过Manage Jenkins->Configure Global Security->Enable security,就可以进入Jenkins安全控制界面

2 Authorization Strategy
2.1 Anyone can do anything
       这种是最简单,同时也是最不安全的授权策略,任何人都可以对Jenkins进行任何操作。

2.2 Legacy mode
       这种策略比较极端:admin用户拥有系统的所有权限,其他所有用户(包括anonymous)只有只读权限。

2.3 Logged-in users can do anything
       这种策略相对于”Anyone can do anything“要好一点,只有登陆Jenkins的用户,才有进行所有操作的权限。

2.4 Matrix-based security

Jenkins安装以后,会有一个anonymous用户,通过该匿名用户进入系统后,创建一个administrator,分配它系统所有的权限,同时限制anonymous用户的权限

2.5 Project-based Matrix Authorization Strategy
       该策略是将前面Matrix-base安全策略应用到单个project中。Matrix-base中的权限是针对整个系统的,而Project-based是进一步设置用户在每个具体project上的权限。在这种策略下,具体project的configure界面中,会出现”Enable project-based security“复选框,选中后就可以设置用户能够对该project操作的权限。

3 Locked Myself Out
       如果权限设置错误,导致自己都无法登陆Jenkins,可以进行如下操作:

       1)停止Jenkins;

       2)用编辑器打开$JENKINS_HOME中的config.xml;

       3)将true元素中的true改为false;

       4)将和元素的内容删掉;

   5)启动Jenkins。

原文:https://blog.csdn.net/jmyue/article/details/9763021