Skip to main content

配置 SCIM 预配以管理用户

可以使用跨域身份管理系统 (SCIM) 从标识提供者 (IdP) 管理企业用户帐户的生命周期。

谁可以使用此功能?

Site administrators

Note

GitHub Enterprise Server 的 SCIM 目前为公共 beta 版本,可能会随时更改。 GitHub 建议首先使用暂存实例进行测试。 请参阅“设置暂存实例”。

若要在 你的 GitHub Enterprise Server 实例 上为企业成员创建、管理和停用用户帐户,IdP 可以实施 SCIM,以便与 GitHub 通信。 SCIM 是一种管理不同系统间用户标识的开放规范。 不同的 IdP 提供不同的 SCIM 预配配置体验。

如果使用合作伙伴 IdP,则可以使用合作伙伴 IdP 的应用程序简化 SCIM 预配的配置。 如果不使用合作伙伴 IdP 进行预配,则可以使用对 GitHub 的 REST API for SCIM 调用来实现 SCIM。 有关详细信息,请参阅 “关于在 GitHub Enterprise Server 上使用 SCIM 进行用户预配。”

先决条件

  • 对于身份验证,实例必须使用 SAML SSO,或者混合使用 SAML 和内置身份验证。
    • 不能将 SCIM 与其他外部身份验证方法混合使用。 如果使用 CAS 或 LDAP,则需要在使用 SCIM 之前迁移到 SAML。
    • 配置 SCIM 后,必须保持 SAML 身份验证处于启用状态才能继续使用 SCIM。
  • 你必须对 IdP 具有管理访问权限,才能配置 GitHub Enterprise Server 的用户预配。
  • 你必须有权访问 GitHub Enterprise Server 上的管理控制台。
  • 如果要在具有现有用户的实例上配置 SCIM,请确保已了解 SCIM 如何识别和更新这些用户。 请参阅“关于在 GitHub Enterprise Server 上使用 SCIM 进行用户预配”。

1. 创建内置设置用户

为了确保可以在启用 SCIM 时继续登录和配置设置,你将使用内置身份验证创建企业所有者。

  1. 以有权访问管理控制台的用户身份登录到 GitHub Enterprise Server。

  2. 如果已启用 SAML 身份验证****,请确保设置允许你创建和升级内置设置用户。 转到管理控制台的“身份验证”部分并启用以下设置:

    • 选择“允许创建具有内置身份验证的帐户”****,以便可以创建用户。
    • 选择“禁用管理员降级/升级”****,以便可以在 SAML 提供程序之外授予管理员权限。

    有关查找这些设置的帮助,请参阅“为企业配置 SAML 单点登录”。

  3. 创建内置用户帐户,对实例执行预配操作。 请参阅“允许对提供程序覆盖范围之外的用户进行内置身份验证”。

    Note

    确保用户的电子邮件和用户名与你计划通过 SCIM 预配的任何用户不同。 如果电子邮件提供商支持,可以通过添加 +admin 来修改电子邮件地址,例如 johndoe+admin@example.com

  4. 将用户升级至企业所有者。 请参阅“升级或降级站点管理员”。

2. 创建 personal access token

  1. 以在上一部分中创建的内置设置用户**** 身份登录到实例。

  2. 创建 personal access token (classic)。 有关说明,请参阅“管理个人访问令牌”。

    • 令牌必须具有 admin:enterprise**** 范围。
    • 令牌必须没有过期。 如果指定过期日期,则 SCIM 在到期日期过后将不再有效。
  3. 将令牌安全地存储在密码管理器中,直到你稍后在设置过程中再次需要该令牌。 需要令牌才能在 IdP 上配置 SCIM。

3. 在实例上启用 SAML

Note

如果以下任一情况适用,请完成本部分:

  • 如果尚未启用 SAML 身份验证****,则需要先执行此操作,然后才能启用 SCIM。
  • 如果已使用 SAML 身份验证,并且想要使用合作伙伴 IdP 进行身份验证和预配****,则必须使用支持通过 SCIM 进行自动预配的应用程序配置 SAML。
  1. 以有权访问管理控制台的用户身份登录到实例。

  2. 转到管理控制台的“身份验证”部分。 有关说明,请参阅“为企业配置 SAML 单点登录”。

  3. 选择“SAML”。

  4. 根据你的要求和所使用的 IdP 配置 SAML 设置。

  5. (可选)在 IdP 中的应用程序内完成 SAML 设置的配置。 或者,可以将此步骤留到以后再执行。

4. 在实例上启用 SCIM

  1. 以之前创建的内置设置用户**** 身份登录到实例。

  2. 在 GitHub Enterprise Server 的右上角,单击你的个人资料照片,然后单击“企业设置”****。

    单击 GitHub Enterprise Server 上的个人资料照片时显示的下拉菜单的屏幕截图。 “企业设置”选项以深橙色边框突出显示。

  3. 在页面左侧的企业帐户边栏中,单击 设置”。

  4. 在“ 设置”下,单击“身份验证安全性” 。

  5. 在“SCIM 配置”下,选择“启用 SCIM 配置”****。

5. 配置标识提供者

完成 GitHub 上的设置后,可以在 IdP 上配置预配。 你应该遵循的说明各不相同,具体取决于你是否使用合作伙伴 IdP 的应用程序来进行身份验证和预配。

如果使用合作伙伴 IdP 的应用程序,请配置预配

要使用合作伙伴 IdP 的应用程序进行身份验证和预配,请查看下面链接的说明。 完成启用 SCIM 的步骤以及尚未执行的任何 SAML 配置。

为其他身份管理系统配置预配

如果不使用合作伙伴 IdP,或者仅使用合作伙伴 IdP 进行身份验证,则可使用 GitHub 的 REST API 终结点来管理用户帐户的生命周期,以便进行 SCIM 预配。 这些终结点目前为公共 beta 版本,可能会有变动。 请参阅“使用 REST API 通过 SCIM 预配用户和组”。

6. 禁用可选设置

完成配置过程后,可以在管理控制台中禁用以下设置:

  • 允许创建具有内置身份验证的帐户****:如果想要从 IdP 预配所有用户,请禁用此设置。
  • 禁用管理员降级/升级****:如果想要能够通过 SCIM 授予企业所有者角色,请禁用此设置。

7。 分配用户和组

配置身份验证和预配后,可以通过将用户或组分配到 IdP 中的相关应用程序来在 GitHub 上预配新用户。

在分配用户时,可以使用 IdP 上的应用程序中的“角色”属性在 GitHub Enterprise Server 上设置用户在企业中的角色。 有关可分配的角色的详细信息,请参阅“企业中的角色”。

Entra ID 不支持预配嵌套组。 有关详细信息,请参阅 Microsoft Learn 中的应用程序预配在 Microsoft Entra ID 中是如何工作的