Skip to main content

使用 Okta 配置 SCIM 预配

如果使用 Okta 作为身份提供商 (IdP),则可以使用跨域身份管理系统 (SCIM) 在 GitHub.com 上管理企业用户帐户的生命周期。

谁可以使用此功能?

若要使用标识提供者管理企业中的用户,企业必须启用 Enterprise Managed Users,它适用于 GitHub Enterprise Cloud。 有关详细信息,请参阅“关于 Enterprise Managed Users”。

关于使用 Okta 进行预配

如果使用 Okta 作为 IdP,则可以使用 Okta 的应用程序来预配用户帐户、管理企业成员身份以及为企业中的组织管理团队成员身份。 Okta 是合作伙伴 IdP,因此可以使用适用于 Enterprise Managed Users 的 Okta 应用程序来简化身份验证和预配配置。 有关详细信息,请参阅“关于 Enterprise Managed Users”。

或者,如果只想将 Okta 用于 SAML 身份验证,并且想要使用不同的 IdP 进行预配,则可以与 GitHub 的 SCIM REST API 集成。 有关详细信息,请参阅“使用 REST API 通过 SCIM 预配用户”。

有关预配 Enterprise Managed Users 的详细信息,请参阅“为 Enterprise Managed User 配置 SCIM 预配”。

支持的功能

Enterprise Managed Users 支持 Okta 的以下预配功能。

功能说明
推送新用户分配给 Okta 中的 GitHub Enterprise Managed User 应用程序的用户将在 GitHub Enterprise Cloud 上自动创建。
推送配置文件更新对 Okta 中的用户配置文件所做的更新将被推送到 GitHub Enterprise Cloud。
推送组Okta 中作为推送组分配给 GitHub Enterprise Managed User 应用程序的组将在 GitHub Enterprise Cloud 上自动创建。
推送用户停用从 Okta 中的 GitHub Enterprise Managed User 应用程序中取消分配用户将在 GitHub Enterprise Cloud 上禁用该用户。 用户将无法登录,但会保留用户的信息。
重新激活用户将启用 Okta 中已重新激活其 Okta 帐户并将其分配回 GitHub Enterprise Managed User 应用程序的用户。

注意: Enterprise Managed Users 不支持修改用户名。

先决条件

  • 必须使用 Okta 的应用程序进行身份验证和预配。

  • Okta 产品必须支持跨域身份管理系统 (SCIM)。 有关详细信息,请查看 Okta 的文档或联系 Okta 的支持团队。

  • GitHub 建议仅使用与企业设置用户关联的 personal access token (classic) 对 Okta 的 SCIM 应用程序的请求进行身份验证。 令牌需要 admin:enterprise 作用域。 有关详细信息,请参阅“为 Enterprise Managed User 配置 SCIM 预配”。

  • 配置初始身份验证和预配后,GitHub 不建议迁移到其他平台进行身份验证或预配。 如果需要将现有企业迁移到其他平台进行身份验证或预配,请联系 GitHub 的销售团队 上的客户经理。

设置企业名称

创建 具有托管用户的企业 后,可以通过在 Okta 中设置企业名称来开始配置预配。

  1. 导航到 Okta 上的 GitHub Enterprise Managed User 应用程序。
  2. 单击“登录”选项卡。
  3. 若要进行更改,请单击“编辑”。
  4. 在“Advanced Sign-on Settings(高级登录设置)”下的“Enterprise Name(企业名称)”文本框中,键入您的企业名称。 例如,如果你在 https://github.com/enterprises/octoinc 访问你的企业,则你的企业名称将为“octoinc”。
  5. 若要保存企业名称,请单击“保存”。

配置预配

设置企业名称后,可以继续配置预配设置。

若要配置预配,具有 @SHORT-CODE_admin 用户名的安装用户将需要提供作用域为 admin:enterprise 的 personal access token (classic)。 有关创建新令牌的详细信息,请参阅“为 Enterprise Managed User 配置 SCIM 预配”。

  1. 导航到 Okta 上的 GitHub Enterprise Managed User 应用程序。
  2. 单击 资源调配 选项卡。
  3. 在“设置”菜单中,单击“集成”。
  4. 若要进行更改,请单击“编辑”。
  5. 选择“启用 API 集成”。
  6. 在“API 令牌”字段中,输入属于安装用户的作用域为 admin:enterprise 的 personal access token (classic)。
  7. 单击“测试 API 凭据”。 如果测试成功,屏幕顶部将显示一条验证消息。
  8. 若要保存令牌,请单击“保存”。
  9. 在“设置”菜单中,单击“转到应用”。
  10. 在“预配到应用”的右侧,要允许进行更改,请单击“编辑”。
  11. 在“创建用户”、“更新用户属性”和“停用用户”的右侧,选择“启用” 。
  12. 若要完成配置预配,请单击“保存”。

分配用户和组

配置 SAML SSO 和预配后,可以通过将用户或组分配到 GitHub Enterprise Managed User 应用程序在 GitHub.com 上预配新用户。

注意:****为避免超过 GitHub Enterprise Cloud 的速率限制,每小时为 IdP 上的 SCIM 集成分配的用户不要超过 1,000 个。 如果使用组将用户分配到 IdP 应用程序,则每小时向每个组添加的用户不要超过 1,000 个。 如果超出这些阈值,预配用户的尝试可能会失败并出现“速率限制”错误。 可以查看 IdP 日志,确认尝试的 SCIM 预配或推送操作是否由于速率限制错误而失败。 对失败的预配尝试的响应将取决于 IdP。 有关详细信息,请参阅“排除企业的标识和访问管理故障”。

还可以通过将组添加到 Okta 中的“推送组”选项卡来自动管理组织成员身份。 成功预配组后,该组将可用于连接到企业组织中的团队。 有关管理团队的详细信息,请参阅“使用标识提供者组管理团队成员身份”。

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

注意:只能为单个用户(而不是组)设置“Roles”属性。 如果要为分配给 GitHub Enterprise Managed User 应用程序的组中的每个人设置角色,则必须单独为每个组成员使用“Roles”属性。

取消预配用户和组

若要从 GitHub Enterprise Cloud 中删除用户或组,请从 Okta 的“分配”选项卡和“推送组”选项卡中删除用户或组。 对于用户,请确保从“推送组”选项卡中的所有组中删除该用户。