【问题标题】:How to manage Jenkins project's authorization using Active Directory users and groups?如何使用 Active Directory 用户和组管理 Jenkins 项目的授权?
【发布时间】:2014-09-03 13:00:21
【问题描述】:

我安装了 Jenkins 和 Active Directory 插件。我可以使用域帐户成功登录,并且我已将“域管理员”设置为完全控制 Jenkins。我想消除一些管理谁可以访问哪些项目并将其委派给项目经理的开销。

我计划通过创建项目基础 AD 组来实现此目的,并让项目经理成为该组的所有者。然后,我将基于该 AD 组创建一个 Exchange 通讯组。这样,项目经理可以通过 Outlook 或 Outlook Web Access 定义谁是该组的成员,只需将人员删除/添加到邮件列表即可

我正在尝试找到将授权 AD 组设置为 Jenkins 项目的位置,但似乎没有这样的选项。我需要一些特殊的插件吗?或者我在哪里可以设置可以访问项目的 AD 组?

最后我会做一个管理员 Jenkins 工作,在 OU=Projects,CN=ProjectX 下创建一个 AD 组。让一些用户拥有它,然后使用新创建的组和项目名称数据创建一个 Jenkins 项目。

【问题讨论】:

    标签: jenkins active-directory project active-directory-group


    【解决方案1】:

    我没有使用过 Active Directory 插件,但这可能是您正在寻找的:转到Jenkins > Manage Jenkins > Configure Global Security > Enable security (Enable check-box)。现在在Authorization 部分,如果您想在每个项目 基础上单独提供访问权限,请选择Project-based Matrix Authorization Strategy

    所以,一旦你选择了Project-based Matrix Authorization Strategy,你将不得不去工作的配置页面并选择Enable project-based security选项(参考下面的截图)。您可以在此处指定有权访问给定作业的用户。

    您还应该通过this 链接上的cmets(尤其是'pcampbell' 的一个)。这可能会有所帮助。

    【讨论】:

    • 这就是我所做的。我缺少的最后一个选项是您必须在项目中配置的“启用基于项目的安全性”。
    • 是的,因为这允许基于项目的访问,所以必须在每个项目中启用它。
    【解决方案2】:

    1) 从 Jenkins 安装 Active Directory 插件 --> 插件管理器 --> 上传插件 --> active-directory.hpi。

    2)管理Jenkins --> 配置全局安全 --> 选择活动目录 --> 域名:XX.OS.LOCAL 域控制器:DC-IP:3268 绑定DN:Account-Name 绑定密码:Account Password。

    【讨论】:

      【解决方案3】:

      https://wiki.jenkins.io/display/JENKINS/Role+Strategy+Plugin 在我的公司也很好用。

      对于每个项目,您需要为所有与项目相关的项目(文件夹/作业/分支)定义一个正则表达式。类似:PROJECTNAME(/.*_PRODUCTION(/.*)?)?。这将授予对文件夹以及以_PRODUCTION 结尾的所有项目的所有分支的权限。这不是微不足道的,但是一旦你设置它就可以工作。

      然后,对于每个用户,您需要添加她的 id,并授予“已验证”权限,然后在权限矩阵中,您只需授予对相关项目的访问权限。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-03-08
        • 2017-10-10
        • 2021-05-06
        • 2010-10-18
        • 2016-04-17
        • 2011-05-19
        • 1970-01-01
        相关资源
        最近更新 更多