用户目录

您可能想知道 Jira 如何以及在何处存储用户和组。Jira 使用用户目录来实现这一目的。用户目录由用户存储库系统(如 LDAP)、数据库或远程用户管理系统(如 Atlassian Crowd)提供支持。Jira 开箱即带一个默认的内部目录,在数据库中存储用户和组信息。

您可以在 Jira 中拥有多个用户目录。这样,您就可以将 Jira 实例连接到多个用户资源库。例如,您可以为内部用户建立 LDAP 目录,为外部用户建立使用数据库的 Jira 内部目录。下面的截图给出了一个例子,我们配置了三个用户目录。第一个用户目录是在 Jira 数据库上运行的内置 Jira 内部目录。第二个用户目录以只读模式连接到 Microsoft Active Directory (AD)。最后一个用户目录连接到 Atlassian 的用户身份管理软件 Atlassian Crowd:

image 2023 11 30 19 13 08 620
Figure 1. Figure 9.10 – User directories

作为 Jira 管理员,您可以通过执行以下两个步骤来管理用户目录:

  1. 浏览到 Jira 管理控制台。

  2. 选择 用户管理 选项卡,然后选择 用户目录 选项。

在这里,您可以看到当前在 Jira 中配置的用户目录列表,添加新目录,并手动与远程用户存储库同步。

添加新用户目录时,首先需要确定目录类型。Jira 中有几种不同的用户目录类型,如下所述:

  • Jira 内部目录:这是首次安装 Jira 时的内置默认用户目录。通过该目录,所有用户和组信息都存储在 Jira 数据库中。

  • AD/LDAP:用于将 Jira 连接到 LDAP 服务器。使用此目录,Jira 将使用后台 LDAP 查询用户信息和组成员信息。这也被称为 LDAP 连接器,不应与内部目录和 LDAP 身份验证目录混淆。

  • 带 LDAP 身份验证的内部:这也称为委托 LDAP。使用这种目录类型,Jira 将仅使用 LDAP 进行身份验证,并在数据库内部保留所有用户信息(当用户首次成功通过身份验证时从 LDAP 检索)。这种方法可以提供更好的性能。由于 LDAP 仅用于身份验证,这就避免了从 LDAP 下载大量组的需要

  • Atlassian Crowd:如果您也在使用用户管理、SSO 和身份管理解决方案 Atlassian Crowd,则可以使用此目录类型连接到您的 Crowd 实例。使用此选项,您还可以配置 Jira 实例参与 SSO 会话。请注意,Jira Data Center 已内置 SSO 支持,因此不需要 Atlassian Crowd。

  • Atlassian Jira:Jira 可以充当其它兼容应用程序的用户存储库。如果运行的是另一个 Jira 实例,则可以使用此目录类型连接到另一个 Jira 实例并获取用户信息。

当您为 Jira 配置多个用户目录时,有几个要点需要注意。用户目录的顺序非常重要,因为它将直接影响 Jira 搜索用户以及对用户和组应用更改的顺序。例如,如果您有两个用户目录,并且两个目录中都有一个名为 admin 的用户,但密码不同,则会产生以下影响:

  • 当您使用管理员用户名登录 Jira 时,您将以管理员用户身份登录,按照列出的目录顺序,您将从第一个能够验证密码的用户目录登录。

  • 登录后,您将从验证密码的目录中获得组员资格。其它目录将被跳过。

  • 如果对管理员用户进行更改,例如更改全名,则更改只会应用到 Jira 有写入权限的第一个目录。

在使用用户目录时需要记住的另一个要点是,当您使用属于上述目录的用户帐户登录时,您不能对用户目录进行更改。例如,如果您使用 LDAP 帐户登录,则无法更改 Jira 的 LDAP 用户目录设置,因为新的更改有可能将您锁定在 Jira 之外。

始终在默认的 Jira 内部目录中准备一个活动的管理员用户账户—​例如,在初始设置时创建的账户。这将为您提供一个管理员账户,帮助您解决用户目录问题,例如前面提到的情况。如果您在其它用户目录中有同名的用户账户,那么内部目录也应是列表中的第一个。

连接到 LDAP

Jira 支持多种 LDAP 服务器,包括 Microsoft AD 和 OpenLDAP。如果未将特定 LDAP 列为选项之一,我们还提供了 通用目录服务器 选项。

使用 AD/LDAP 连接器目录类型时,可以选择使用以下权限选项之一进行连接:

  • 只读:Jira 无法对 LDAP 服务器进行任何修改。

  • 只读,带本地组:从 LDAP 检索的信息将是只读的,但您也可以将用户添加到在 Jira 中创建的组中。这些更改不会反映在 LDAP 中。

  • 读/写:Jira 将能够检索并更改 LDAP 服务器。

只读 选项是最常见的选项,因为 信息技术 (IT) 团队通常集中管理 LDAP 服务器,不允许更改。使用此选项,Jira 只需要对存储在 LDAP 中的用户数据进行读取访问,以验证用户凭据和组成员身份。如果您只想将 LDAP 用作用户存储库和身份验证,但仍想灵活地更新组成员资格,而不必让 LDAP 团队参与进来,那么 只读本地组 选项将是最合适的选择。最后,应避免使用 读/写 选项,因为向 LDAP 传播更改(如组成员资格)可能会对依赖于同一 LDAP 服务器的其它系统造成不可预见的影响。

要将 Jira 设置连接到 LDAP,只需添加一个新的用户目录,如下所示:

  1. 浏览到 用户目录 页面。

  2. 点击 添加目录 按钮,从目录类型选择列表中选择 Microsoft Active DirectoryLDAP,然后点击 下一步

  3. 提供 LDAP 服务器信息。

由于每个 LDAP 都不同,因此所需的确切参数也会不同。至少需要提供以下信息:

Table 1. Table 9.2 – User directory parameters
参数 描述

Name

这是用户目录的名称。

Directory Type

在这里您可以选择 LDAP 的类型。这将帮助 Jira 为您预填一些参数。

Hostname

这是 LDAP 服务器的主机名。

Port

这是 LDAP 服务器的端口号。Jira 将根据您选择的目录类型预填此端口号。

Base DN

这是Jira搜索用户和组的根节点。

LDAP Permissions

这可以帮助您选择 Jira 是否能够对 LDAP 进行更改。

Username

这是 Jira 用来连接 LDAP 以获取用户和组信息的用户名。

Password

这是 Jira 用来连接 LDAP 的密码。

您可以在下面的截图中看到这些部分已经完成:

image 2023 11 30 19 36 14 269
Figure 2. 图 9.11 – 添加 LDAP 用户目录

除上述参数外,还有其它高级设置,如 用户模式设置组模式设置。填写表格后,您可以单击 快速测试 按钮来验证 Jira 是否能够连接到 LDAP 服务器,并使用提供的用户名和密码进行身份验证。请注意,这并不测试用户查找等功能。如果初始快速测试成功,则可以继续单击 保存和测试 按钮。这将添加用户目录并带您进入测试页面,在此您可以使用适当的用户凭据(这将不同于 Jira 连接到 LDAP 所使用的凭据)测试设置,如下截图所示:

image 2023 11 30 19 37 15 008
Figure 3. Figure 9.12 – Test LDAP user directory

添加新用户目录后,Jira 将自动与 LDAP 服务器同步,并拉入用户和组。根据 LDAP 服务器的大小,这可能需要一些时间才能完成。初始同步后,Jira 将每隔 60 分钟定期对任何更改执行增量同步。