向Jenkins添加大量用户

时间:2017-01-17 17:11:24

标签: jenkins multiple-users

要在Jenkins中创建新用户,admin需要提供用户名,emialID和密码。作为管理员,有没有办法通过提供他们的用户名作为他们的邮件ID,显示名称作为他们的名字和公共密码*,一次向Jenkins添加大量用户?
*假设在每个用户登录时重置密码

3 个答案:

答案 0 :(得分:0)

将Jenkins连接到LDAP更容易。请参阅此插件here

答案 1 :(得分:0)

看起来Jenkins cli不支持添加用户,但请检查一下 - 使用groovy脚本就可以了。

Creating user in Jenkins via API

如果您想为每个作业提供特定权限,也许您可​​以使用CLI get-job & 更新作业命令。

或者您可以尝试检查一下 - Jenkins Add permissions to jobs using groovy它几乎相同......

答案 2 :(得分:0)

我正在使用以下groovy脚本将用户添加到Jenkins,并且仅提供构建许可。

import hudson.model.*
import hudson.security.*
import hudson.tasks.Mailer

def userId = args[0]
def password = args[1]
def email = args[2]
def fullName= args[3]
def instance = jenkins.model.Jenkins.instance
def existingUser = instance.securityRealm.allUsers.find {it.id == userId}

if (existingUser == null) {
    def user = instance.securityRealm.createAccount(userId, password)
    user.addProperty(new Mailer.UserProperty(email));
    user.setFullName(fullName)

    def strategy = (GlobalMatrixAuthorizationStrategy) 
    instance.getAuthorizationStrategy()
    strategy.add(hudson.model.Item.BUILD,userId)
    instance.setAuthorizationStrategy(strategy)
    instance.save()
}

使用jenkins-cli调用脚本。