我们经常发布文档更新,此页面的翻译可能仍在进行中。有关最新信息,请访问英文文档。如果此页面上的翻译有问题,请告诉我们

使用 Okta 为企业帐户配置 SAML 单点登录和 SCIM

您可以使用安全声明标记语言 (SAML) 单点登录 (SSO) 和跨域身份管理系统 (SCIM) 与 Okta 一起来自动管理对 GitHub 上企业帐户的访问。

企业帐户可用于 GitHub Enterprise Cloud 和 GitHub Enterprise Server。 更多信息请参阅“关于企业帐户”。

本文内容

Note: User provisioning for enterprise accounts is currently in private beta and subject to change. To request access to the beta, contact our account management team.

关于 SAML 和 SCIM 与 Octa

您可以通过配置企业帐户使用 SAML SSO 和 SCIM 以及身份提供程序 (IdP) Okta,从一个中心界面控制对 GitHub 企业帐户及其他 web 应用程序的访问。

SAML SSO 控制并保护对企业帐户资源(如组织、仓库、议题和拉取请求)的访问。 当您在 Okta 中进行更改时,SCIM 会自动添加、管理和删除成员对您的企业帐户拥有的组织的访问权限。 更多信息请参阅“在企业帐户中实施安全设置”。

启用 SCIM 后,您在 Okta 中为其分配了 GitHub Enterprise Cloud 应用程序的任何用户都可以使用以下配置。

功能描述
推送新用户在 Okta 中创建的新用户可以访问企业帐户资源,并且可以选择被自动邀请加入企业帐户拥有的任何组织
推送用户停用停用 Okta 中的用户将撤销用户对企业帐户资源的访问权限,并从企业帐户拥有的所有组织中删除该用户
推送个人资料更新对 Okta 中用户配置文件的更新将被推送到用户的企业帐户元数据
重新激活用户在 Okta 中重新激活用户将重新启用用户对企业帐户的访问权限,并可以选择发送电子邮件邀请,以便邀请该用户重新加入其以前所属的企业帐户拥有的任何组织。

基本要求

You must use the "Classic UI" in Okta. 更多信息请参阅 Okta 博客中的有组织的导航

从仪表板上方的 Okta UI 样式选择器中选择"Classic UI(经典 UI)"

在 Okta 中添加 GitHub Enterprise Cloud 应用程序

  1. In Okta, in the upper-right corner, click Admin.
    Admin button in Okta
  2. 在 Okta 仪表板中,单击 Applications(应用程序)
    Okta 仪表板导航栏中的"应用程序"项
  3. 单击 Add application(添加应用程序)
    Okta 仪表板的 Applications(应用程序)选项卡中的"Add application(添加应用程序)"按钮
  4. 在搜索字段中键入"GitHub Enterprise Cloud"。
    Okta 的 "Search for an application(搜索应用程序)"字段
  5. 单击“GitHub Enterprise Cloud - Enterprise Accounts(企业帐户)”。
  6. 单击 Add(添加)
  7. (可选)在“Application label(应用程序标签)”右边输入应用程序的描述性名称。
    应用程序标签字段
  8. 在“GitHub Enterprises”右侧,键入企业帐户的名称。 例如,如果企业帐户的 URL 是https://github.com/enterprises/octo-corp,请键入 octo-corp
    GitHub Enterprises 字段
  9. 单击 Done(完成)

启用和测试 SAML SSO

  1. In Okta, in the upper-right corner, click Admin.
    Admin button in Okta
  2. 在 Okta 仪表板中,单击 Applications(应用程序)
    Okta 仪表板导航栏中的"应用程序"项
  3. Click the label for the application you created for your enterprise account.
  4. Assign the application to your user in Okta. For more information, see Assign applications to users in the Okta documentation.
  5. Under the name of the application, click Sign on.
    Okta 应用程序的"Sign on(登录)"选项卡
  6. 在 Settings(设置)右侧,单击 Edit(编辑)
  7. 在“Configured SAML Attributes(配置的 SAML 属性)”下,使用下拉菜单并选择 Matches regex(匹配正则表达式)
  8. 在下拉菜单右侧键入 .*.*
  9. 单击 Save(保存)
  10. 在“SIGN ON METHODS(登录方式)”下,单击 View Setup Instructions(查看设置说明)
    Okta 应用程序的"Sign On(登录)"选项卡中的"View Setup Instructions(查看设置说明)"按钮
  11. 使用设置说明中的信息为企业帐户启用 SAML。 更多信息请参阅“在企业帐户中实施安全设置”。

在 Okta 中创建组

  1. 在 Okta 中,创建一个组来匹配企业帐户拥有的每个组织。 每个组的名称必须与组织的帐户名称匹配(而不是组织的显示名称)。 例如,如果组织的 URL 为https://github.com/octo-org,则将组命名为 octo-org
  2. 将为企业帐户创建的应用程序分配给每个组。 GitHub 将接收每个用户的所有数据。
  3. 根据您希望用户所属的组织将用户添加到组。

在 Okta 中使用 SCIM 配置用户预配

If you're participating in the private beta for user provisioning for enterprise accounts, when you enable SAML for your enterprise account, SCIM provisioning and deprovisioning is enabled by default in GitHub. You can use provisioning to manage organization membership by configuring SCIM in your IdP.

要在 Okta 中使用 SCIM 配置用户预配,必须授权 OAuth 应用程序创建 Okta 可用于代表您向 GitHub 验证的令牌。 Okta-oauth 应用程序由 Okta 与 GitHub 合作创建。

  1. In Okta, in the upper-right corner, click Admin.
    Admin button in Okta
  2. 在 Okta 仪表板中,单击 Applications(应用程序)
    Okta 仪表板导航栏中的"应用程序"项
  3. Click the label for the application you created for your enterprise account.
  4. Under the name of the application, click Provisioning.
    Okta 应用程序的"Provisioning(配置)"选项卡
  5. 单击 Configure API Integration(配置 API 集成)
    Okta 应用程序的"Configure API Integration(配置 API 集成)"按钮
  6. 选择 Enable API integration(启用 API 集成)
    Okta 应用程序的"Enable API integration(启用 API 集成)"复选框
  7. 单击 Authenticate with Github Enterprise Cloud - Enterprise Accounts(向 Github Enterprise Cloud 验证 - 企业帐户)
    用于向 GitHub 验证的按钮
  8. 在企业帐户名称的右侧,单击 Grant(授予)
  9. 单击 Authorize okta-oauth(授权 okta-oauth)
  10. 单击 Save(保存)
    用于 Okta 应用程序配置的"Save(保存)"按钮
  11. 在“Provisioning to App(配置到 App)”的右侧,单击 Edit(编辑)
    用于 Okta 应用程序配置选项的"Edit(编辑)"按钮
  12. 在“Create Users(创建用户)”的右侧,选择 Enable(启用)
    用于 Okta 应用程序"Create Users(创建用户)"选项的"Enable(启用)"复选框
  13. 在“Update User Attributes(更新用户属性)”的右侧,选择 Enable(启用)
    用于 Okta 应用程序"Update User Attributes(更新用户属性)"选项的"Enable(启用)"复选框
  14. 在“Deactivate Users(停用用户)”的右侧,选择 Enable(启用)
    用于 Okta 应用程序"Deactivate Users(停用用户)"选项的"Enable(启用)"复选框
  15. 单击 Save(保存)
    用于 Okta 应用程序配置的"Save(保存)"按钮
  16. 在应用程序名称下,单击 Push Groups(推送组)
    Push Groups(推送组)选项卡
  17. 使用 Push Groups(推送组)下拉菜单,然后选择 Find groups by name(按名称查找组)
    Push Groups(推送组)下拉菜单
  18. 为您要启用用户预配的企业帐户中的每个组织添加推送组。
    • 在“PUSH GROUPS BY NAME(按名称推送组)”下,搜索与企业帐户拥有的组织对应的组,然后单击搜索结果中的组。
    • 在组名称的右侧,在"匹配结果“Match results & push action(匹配结果和推送操作)”下拉菜单中,验证是否选择了 Create Group(创建组)
      选择了 Create Group(创建组)的匹配结果下拉菜单
    • 单击 Save(保存)
    • 对每个组织重复。
  19. 在应用程序名称下,单击 Assignments(分配)
    Assignments(分配)选项卡
  20. 如果看到 Provision users(预配用户),则表示尚未预配在为该组添加推送组之前属于 Okta 组成员的用户。 要将 SCIM 数据发送到这些用户的 GitHub,请单击 Provision users(预配用户)

启用 SAML 用户预配

在启用 SCIM 预配和解除预配后,您可以选择启用 SAML 用户预配和解除预配。

  1. 通过访问 https://github.com/enterprises/ENTERPRISE-NAME(将 ENTERPRISE-NAME 替换为您的企业帐户名称)导航至您的企业帐户。
  2. 在企业帐户侧边栏中,单击 Settings(设置)
    企业帐户侧边栏中的“设置”选项卡
  3. 在左侧边栏中,单击 Security(安全)
    企业帐户设置侧栏中的“安全”选项卡
  4. 在“SAML User Provisioning(SAML 用户预配)”下,选择 Enable SAML user provisioning(启用 SAML 用户预配)
    使用 SAML 启用用户预配的复选框
  5. 单击 Save(保存)
  6. (可选)启用 SAML 用户解除预配。
    • 选择 Enable SAML user deprovisioning(启用 SAML 用户解除预配),然后单击 Save(保存)
      使用 SAML 启用用户解除预配的复选框
    • 阅读警告,然后单击 Enable SAML deprovisioning(启用 SAML 解除预配)
      启用 SAML 解除预配按钮

问问别人

找不到要找的内容?

联系我们