基于詹金斯配置的基于角色的项目权限管理-研发项目管理

>>基于詹金斯配置的基于角色的项目权限管理-研发项目管理

基于詹金斯配置的基于角色的项目权限管理-研发项目管理

引言:当今社会市场竞争激烈,软件开发企业想要占据前列需要在研发管理上下功夫,“向管理要效益”已经成为软件开发企业的共识,研发项目管理在软件企业中的普及也是大势所趋。国内做软件项目管理工具的开发商翼发云近几年发展十分迅速,越来越多的软件开发企业认识到研发项目管理的重要性,能切实有效降低成本,规范软件开发流程,提高软件产品质量。国内研发项目管理系统、敏捷开发管理工具的领导品牌翼发云敏捷项目管理系统采用可视化业务流程技术,支持瀑布模型等传统软件研发项目管理,同时也支持scrum等敏捷开发流程,是理想的敏捷开发管理工具,涵盖软件项目管理工作的整个生命周期。为提高国内软件开发企业的项目管理水平,分享一篇企业管理相关的知识文章。

本文将介绍如何配置詹金斯它允许它支持基于角色的项目权限管理。

因为詹金斯默认权限管理系统不支持用户组或角色的配置。因此,有必要安装第三个插件来支持角色配置。本文将介绍使用角色策略插件的页面。詹金斯詹金斯 scrum

1。配置插件

安装插件后,进入系统设置页面,配置如下:

Jenkins配置基于角色的项目权限管理 软件项目管理

官方网络上的安全域设置为Servlet集装箱代理,实际操作发现詹金斯还提供专有的用户数据库。

两。配置权限

点击系统管理页面管理和分配角色输入角色管理页面; 敏捷开发流程

Jenkins配置基于角色的项目权限管理

Jenkins配置基于角色的项目权限管理 研发项目管理

1,管理角色(管理角色)

选择该项可以创建全局角色、项目角色,并可以为角色分配权限。

Jenkins配置基于角色的项目权限管理

如上所示,它们分别创建。行政匿名两个全球角色,在线程序测试两个项目角色。

项目角色和全局角色之间的区别在于项目角色只能管理项目,而项目不受管理。詹金斯权限配置。

添加项目角色时,需要为匹配的项目创建一个模式,如上图所示。模式官方文档介绍了支持正则表达式的选项,比如“罗杰”;罗杰—项目的开始,“;(?)一)代表罗杰—最初的项目例如不区分大小写,,项目从ABC可以配置为”ABC | ABC。*”;“也可以使用;ABC | BCD | EFG 直接匹配多个项目。

2。创建一个用户

在分配角色之前需要先创建用户。

在系统管理页面,点击管理用户:

Jenkins配置基于角色的项目权限管理

Jenkins配置基于角色的项目权限管理

单击新用户以创建新用户,如果您有以前的项目和新用户供应链管理版本管理系统(如SVN、Git、等)连接并获取源代码。詹金斯SVN在用户菜单中读取一些用户信息,用户菜单中可以看到这些信息。

Jenkins配置基于角色的项目权限管理

Jenkins配置基于角色的项目权限管理

单击用户身份证件用户信息可以通过名称或名称进行修改。

三.分配角色(分配角色)

Jenkins配置基于角色的项目权限管理

选择指派角色可以将角色分配给用户,并可以分配全局角色和项目角色。

Jenkins配置基于角色的项目权限管理

如上图,将不同的用户分别分配给不同的角色,这样用户就可以具有角色所拥有的权限。

三。深刻理解

插件来自二千零一十一每月发布1.1.2版本不再维护后,会出现一些小问题,但不会影响使用。例如,如果在分配角色后保存按钮,则可能出现异常。如果浏览器单击后退按钮,它将再次成功运行。

另外如果配置失败导致不能登录,可以通过修改配置文件恢复初始设置。

首先了解一下配置文件。

进入詹金斯安装目录、用户配置信息和角色配置信息以配置文件的形式存储。

Jenkins配置基于角色的项目权限管理

以上用户该目录为每个用户存储配置信息,每个用户创建一个与用户名相同的文件夹。文件夹包含文件夹。config.xml文件、配置示例如下:

&lt;XML版本= ‘1.0 ‘?编码= ‘utf-8 ‘?&gt;&lt;用户&gt;&lt;这&gt;管理& lt;/这&gt;&lt;性能&gt;&lt;詹金斯。安全。apitokenproperty &gt;&lt;apitoken &gt;efowsop9h5aryxmmufrbpjjitgu / fjtvhib5okfj9dmptu / 088cvhxle9rhwvv + S & lt;/ apitoken & gt;& lt;/詹金斯。安全。apitokenproperty &gt;&lt;哈德森。模型。myviewsproperty &gt;&lt;意见&gt;&lt;哈德森模型。奥维&gt;&lt;业主class=“哈德森。模型。myviewsproperty参考=“http:/ / www.cnblogs。COM / ../> < name> All< /name> < filterExecutors> false< /filterExecutors> < filterQueue> false< /filterQueue> < Propert Ies class= “hudson.model.View$PropertyList” /> < /hudson.model.AllView> < /views> < /hudson.model.MyViewsProperty> < hudson.search.UserSearchProperty> < insensitiveSearch> false< /insensitiveSearch> < /hudson.search.UserSearchProperty> < hudson.security.HudsonPrivateSecurityRealm_-Details> < passwordHash> uAEYii:02e0cd0d78abf90e42b28e7d3d4fe64776ae8fa9500e379f2598cc65e1b0fb70< /passwordHash> < < hudson.tasks.Mailer_-UserProperty> hudson.security.HudsonPrivateSecurityRealm_-Details> < emailAddress> gaoliang@esrichina com. cn & lt;/ EmailAddress &gt;&lt;/ hudson.tasks.mailer_-u serproperty &gt;&lt;/性能&gt;&lt;/用户& gt;

角色配置jenkins_home美元/ config.xml在文件中,示例如下:

< useSecurity> true< /useSecurity> < authorizationStrategy class= “com.michelin.cio.hudson.plugins.rolestrategy.RoleBasedAuthorizationStrategy” > &lt roleMap; type= > &lt globalRoles; role name= “admin” pattern= “.” > < permissions> < permission> hudson.model.Hudson.Read< /permission> < permission> hudson.model.Hudson.Administer< /permission> < permission> hudson.model.View.Delete< /permission> < permission> hudson.model.Computer.Create< /permission> < permission> hudson.model.Computer.Delete< /permission> < permission> hudson.model.Hudson.RunScripts< /permission> < permission> hudson.model.View.Read< /permission> < permission> hudson.model.Run.Update< /permission> < permission> hudson.model.Item.Workspace< /permission> < permission> hudson.model.Computer.Connect< /permission> < permission> hudson.model.Computer.Configure< /permission> < permission> hudson.model.Item.Cancel< /permission> < permission> hudson.model.Item.Configure< /permission> < permission> hudson.model.Item.Discover< /permission> < permission> hudson.model.Item.Create< /permission> < permission> hudson.model.View.Configure< /permissio N> < permission> hudson.model.Computer.Disconnect< /permission> < permission> hudson.model.Item.Delete< /permission> < permission> hudson.model.Item.Read< /permission> < permission> hudson.model.Item.Build< /permission> < permission> hudson.model.Run.Delete< /permission> < permission> hudson.model.View.Create< /permission> < permission> hudson.scm.SCM.Tag< /permission> < /permissions> < assignedSIDs> < sid> admin< /sid> < /assignedSIDs> < /role> < role name= “anonymous” pattern= “.” > < permi Ssions> < permission> hudson.model.Hudson.Read< /permission> < /permissions> < assignedSIDs> < sid> anonymous< /sid> < /assignedSIDs> < /role> < /roleMap> < roleMap type= “projectRoles” > < role name= “Online Program” pattern= “GeoQPortal|GeoQUserPortal” > < permissions> < permission> hudson.model.Item.Read< /permission> < permission> hudson.model.Item.Build< /permission> < permission> hudson.model.Run.Delete< /permission> < permission> hudson.model.Item.Workspace< /permission> < permission> HUDs On.model.Run.Update< /permission> < permission> hudson.scm.SCM.Tag< /permission> < permission> hudson.model.Item.Cancel< /permission> < permission> hudson.model.Item.Discover< /permission> < /permissions> < assignedSIDs> < sid> caox< /sid> < sid> wangwh< /sid> < sid> yuh< /sid> < sid> chenjj< /sid> < sid> lim< /sid> < sid> zhangy< < /assignedSIDs> sid> < /role> < role name= “test” pattern= “Compress” > < permissions> < permission> hudson.model.Item.De Lete< /permission> < permission> hudson.model.Item.Read< /permission> < permission> hudson.model.Item.Build< /permission> < permission> hudson.model.Run.Delete< /permission> < permission> hudson.model.Item.Workspace< /permission> < permission> hudson.model.Run.Update< /permission> < permission> hudson.scm.SCM.Tag< /permission> < permission> hudson.model.Item.Cancel< /permission> < permission> hudson.model.Item.Configure< /permission &gt;&lt;许可&gt;哈德森模型。项目。发现& lt;/许可&gt;&lt;/权限&gt;&lt;assignedsids &gt;&lt;SID & gt;wangwh & lt;/ SID & gt;& lt;/ assignedsids & gt;&lt;/作用&gt;&lt;/ rolemap &gt;&lt;/ authorizationstrategy &gt;&lt;securityrealm class=“哈德森。安全。hudsonprivatesecurityrealm“&gt;&lt;disablesignup &gt;假& lt;/ disablesignup &gt;&lt;enablecaptcha &gt;假& lt;/ enablecaptcha &gt;&lt;/ securityrealm & gt;

如果发生用户不能登录的情况,可以尝试以下几种方法解决

方法

  • 删除与用户相关的目录
  • 修改jenkins_home美元/ config.xml文件:&lt;usesecurity &gt;假& lt;/ usesecurity & gt;
  • 删除authorizationstrategy,securityrealm节点
  • 重新启动詹金斯

使用此方法删除詹金斯权限管理,还原成初始状态。

方法

  • 修改jenkins_home美元/ config.xml文件和修改对系统自身的安全矩阵授权模式

authorizationstrategy节点等级财产性hudson.security.globalmatrixauthorizationstrategy

  • 配置示例如下所示,它被分配给管理用户所有权限
  • < useSecurity> true< /useSecurity> < authorizationStrategy class= “hudson.security.GlobalMatrixAuthorizationStrategy” > < permission> hudson.model.Computer.Configure:admin< /permission> < permission> hudson.model.Computer.Connect:admin< /permission> < permission> hudson.model.Computer.Create:admin< /permission> < permission> hudson.model.Computer.Delete:admin< /permission> < permission> hudson.model.Computer.Disconnect:admin< /permission> < permission> hudson.model.Hudson.Administer:admin< /permission> < permission> hudson.model.Hudson.Read:admin< /permission> < permission> hudson.model.Hudson.Read:anonymous&lt ; /permission> < permission> hudson.model.Hudson.RunScripts:admin< /permission> < permission> hudson.model.Item.Build:admin< /permission> < permission> hudson.model.Item.Cancel:admin< /permission> permission> hudson.model.Item.Configure:admin< lt; /permission> < permission> hudson.model.Item.Create:admin< /permission> < permission> hudson.model.Item.Delete:admin< /permission> < permission> hudson.model.Item.Discover:admin< /permission> < permission> hudson.model.Item.Read:admin< /permission> < permission> hudson.model.Item.Workspace:admin< /permission> < permission> hudson.model.Run.Delete: admin&l T; /permission> < permission> hudson.model.Run.Update:admin< /permission> < permission> hudson.model.View.Configure:admin< /permission> < permission> hudson.model.View.Create:admin< /permission> < permission> hudson.model.View.Delete:admin< /permission> < permission> hudson.model.View.Read:admin< /permission> < permission> hudson.scm.SCM.Tag:admin< /permission> < /authorizationStrategy> < securityRealm class= “hudson.security.HudsonPrivateSecurityRealm” > < disableSignup> false< /disableSignup> < enableCaptcha> false< /enableCaptcha> < /securityRealm>

    to restart Jenkins Using this method, Jenkins will be restored as a security matrix mode of authorization.

文章从互联网整理而来,旨在传播scrum、软件项目管理、研发项目管理、敏捷开发管理工具的知识与应用,帮助软件开发企业真正了解研发项目管理的价值和意义,如果本文侵犯了您的权益或者您需要具体了解更多国内做研发项目管理系统的公司翼发云敏捷项目管理系统的相关信息,欢迎和我们联络:

【网址】www.effapp.com

2018-02-15T08:54:51+08:002018-02-15 08:54:51|Categories: scrum项目管理|