我正在尝试获取管理员用户列表的列表,以及Jenkins中的用户及其权限级别。
任何人都可以通过任何可用脚本帮助我。
答案 0 :(得分:0)
您可以使用groovy脚本检索所有用户,如下所示:
import hudson.model.User
allUsers = User.getAll()
adminList = []
for (u in allUsers) {
if (u.hasPermission(Jenkins.ADMINISTER)) {
adminList.add(u)
}
}
println(adminList)
答案 1 :(得分:0)
我使用以下脚本创建管理员用户列表。该脚本还可以与基于Matrix的安全性一起使用。
import hudson.model.User
def inst = Jenkins.getInstanceOrNull()
def strategy = inst.getAuthorizationStrategy()
def adminUserList = User.getAll().findAll { user ->
strategy.hasPermission(user.id, Jenkins.ADMINISTER)
}
所有具有其权限的用户都可以按以下方式访问:
import hudson.model.User
import hudson.security.Permission
def inst = Jenkins.getInstanceOrNull()
def strategy = inst.getAuthorizationStrategy()
strategy.getMetaPropertyValues().find { it.getName() == 'grantedPermissions'}.each {
// it.value is a map with permission as key and the corresponding users as value
print(it.value[Permission.READ])
print(it.value[Permission.WRITE])
print(it.value[Permission.HUDSON_ADMINISTER])
}