Jenkins DSL:LDAP 角色
Jenkins DSL: LDAP Roles
在我们公司,所有 Jenkins 作业都是通过 Jenkins DSL 创建的。我们的 Jenkins 权限是通过 LDAP 控制的。为此,我们使用 Jenkins LDAP 插件 (https://wiki.jenkins.io/display/JENKINS/LDAP+Plugin) 版本 1.20.
目前已授权个人 LDAP 用户:
freeStyleJob ('Jobname') {
[...]
authorization {
permission('hudson.model.Item.Build', 'User1')
permission('hudson.model.Item.Build', 'User2')
[...]
}
[...]
}
我想使用 LDAP 组而不是授权单个用户:
freeStyleJob ('Jobname') {
[...]
authorization {
permission('hudson.model.Item.Build', 'LDAPROLE_BUILD')
}
[...]
}
我如何调整我的 DSL 文件以使用 LDAP 角色而不是单个用户?
这正是您必须采用的方式:
freeStyleJob ('Jobname') {
[...]
authorization {
permission('hudson.model.Item.Build', 'LDAPROLE_BUILD')
}
[...]
}
如果您想为多个 LDAP 角色授予构建权限,您必须使用数组来完成:
freeStyleJob ('Jobname') {
[...]
authorization {
permission('hudson.model.Item.Build', ['LDAPROLE_BUILD1', 'LDAPROLE_BUILD2'])
}
[...]
}
赋予有构建权限的角色也有取消构建的权限也很有用hudson.model.Item.Cancel
要授予 LDAP 角色仅对 'read' 作业的权限,您可以使用读取和工作空间:
hudson.model.Item.Read
hudson.model.Item.Workspace
在我们公司,所有 Jenkins 作业都是通过 Jenkins DSL 创建的。我们的 Jenkins 权限是通过 LDAP 控制的。为此,我们使用 Jenkins LDAP 插件 (https://wiki.jenkins.io/display/JENKINS/LDAP+Plugin) 版本 1.20.
目前已授权个人 LDAP 用户:
freeStyleJob ('Jobname') {
[...]
authorization {
permission('hudson.model.Item.Build', 'User1')
permission('hudson.model.Item.Build', 'User2')
[...]
}
[...]
}
我想使用 LDAP 组而不是授权单个用户:
freeStyleJob ('Jobname') {
[...]
authorization {
permission('hudson.model.Item.Build', 'LDAPROLE_BUILD')
}
[...]
}
我如何调整我的 DSL 文件以使用 LDAP 角色而不是单个用户?
这正是您必须采用的方式:
freeStyleJob ('Jobname') {
[...]
authorization {
permission('hudson.model.Item.Build', 'LDAPROLE_BUILD')
}
[...]
}
如果您想为多个 LDAP 角色授予构建权限,您必须使用数组来完成:
freeStyleJob ('Jobname') {
[...]
authorization {
permission('hudson.model.Item.Build', ['LDAPROLE_BUILD1', 'LDAPROLE_BUILD2'])
}
[...]
}
赋予有构建权限的角色也有取消构建的权限也很有用hudson.model.Item.Cancel
要授予 LDAP 角色仅对 'read' 作业的权限,您可以使用读取和工作空间:
hudson.model.Item.Read
hudson.model.Item.Workspace