在按照本文中的步骤操作之前,请确保企业使用托管用户。 可以通过检查企业视图的屏幕顶部是否具有“ACCOUNT NAME 管理的用户”标题栏来执行此操作。 如果看到它,则企业将使用托管用户,你可以按照本文中的步骤进行操作。
如果企业使用个人帐户,则必须遵循不同的过程配置 SAML 单一登录。 请参阅“为企业配置 SAML 单点登录”。
关于 Enterprise Managed Users 的 SAML SSO
使用 Enterprise Managed Users 时,必须通过标识提供者 (IdP) 访问 GitHub 上的企业资源。 你的企业成员将通过 IdP 登录,而不是使用 GitHub 用户名和密码登录到 GitHub。
配置 SAML SSO 后,我们建议存储恢复代码,以便在 IdP 不可用时恢复对企业的访问权限。
如果目前使用 SAML SSO 进行身份验证,并且更希望使用 OIDC 并受益于 CAP 支持,则可以遵循迁移路径。 有关详细信息,请参阅“从 SAML 迁移到 OIDC”。
先决条件
-
了解对 IdP 的集成要求和支持级别。
- 如果使用合作伙伴 IdP 进行身份验证和预配,GitHub 提供了“预设”集成和全面支持。
- 也可以使用符合 SAML 2.0 和 SCIM 2.0 的任何系统或系统组合。 但是,对于此类系统的问题排查的支持可能较为有限。
有关详细信息,请参阅“关于 Enterprise Managed Users”。
-
IdP 必须遵循 SAML 2.0 规范。 请参阅 OASIS 网站上的 SAML Wiki。
-
必须对 IdP 具有租户管理访问权限。
-
如果要为新企业配置 SAML SSO,请确保完成初始配置过程中的所有先前步骤。 请参阅“Enterprise Managed Users 入门”。
为 Enterprise Managed Users 配置 SAML SSO
要为 具有托管用户的企业 配置 SAML SSO,必须在 IdP 上配置应用程序,然后在 GitHub 上配置企业。 配置 SAML SSO 后,可以配置用户预配。
配置 IdP
-
如果使用合作伙伴 IdP,要安装 GitHub Enterprise Managed User 应用程序,请单击以下链接之一。
-
Azure 市场中的 Microsoft Entra ID 应用程序(Entra ID 以前称为Azure AD)
-
Okta 集成目录中的 Okta 应用程序
-
- 若要下载 PingFederate 连接器,请导航到“加载项”选项卡,然后选择“GitHub EMU 连接器 1.0”。
-
-
要在 IdP 上配置 Enterprise Managed Users 的 SAML SSO,请阅读以下文档。 如果不使用合作伙伴 IdP,可以使用 GitHub Enterprise Cloud 的 SAML 配置参考在 IdP 上创建和配置通用 SAML 2.0 应用程序。
- Microsoft Learn 上的 Entra ID
- “使用 Okta 为企业托管用户配置 SAML 单一登录”
- PingIdentity 文档中的 PingFederate 说明
- “SAML 配置参考”
-
要测试和配置企业,请将自己或在 GitHub 上为企业配置 SAML SSO 的用户分配给在 IdP 上为 Enterprise Managed Users 配置的应用程序。
Note
为了在配置时测试成功的身份验证连接,必须至少为 IdP 分配一个用户。
-
要继续在 GitHub 上配置企业,请找到并记下在 IdP 上安装的应用程序的以下信息。
值 其他名称 说明 IdP 登录 URL 登录 URL、IdP URL IdP 上的应用程序的 URL IdP 标识符 URL 颁发者 用于 SAML 身份验证的服务提供商的 IdP 标识符 签名证书,Base64 编码 公用证书 IdP 用于对身份验证请求进行签名的公共证书
配置企业
在 IdP 上为 Enterprise Managed Users 配置 SAML SSO 后,可以在 GitHub 上配置企业。
初始配置 SAML SSO 后,可以在 GitHub 上为现有 SAML 配置更新的唯一设置是 SAML 证书。 如果需要更新登录 URL 或颁发者 URL,必须首先禁用 SAML SSO,然后使用新设置重新配置 SAML SSO。 有关详细信息,请参阅“为企业托管用户禁用身份验证和预配”。
-
使用用户名 SHORT-CODE_admin 以企业的设置用户身份登录到 GitHub.com,其中 SHORT-CODE 需替换为企业的短代码。
注意****:如果需要重置设置用户的密码,请通过 GitHub 支持门户 联系 GitHub 支持。 提供电子邮件地址时,通常的密码重置选项将不起作用。
-
在 GitHub 的右上角,单击你的个人资料照片,然后单击“你的企业”****。
-
在企业列表中,单击您想要查看的企业。 1. 在页面左侧的企业帐户边栏中,单击 “设置”。
-
在“ 设置”下,单击“身份验证安全性” 。
-
在“SAML 单一登录”下,选择“要求 SAML 身份验证”。
-
在“登录 URL”**** 下,键入在配置 IdP 时记下的用于 SSO 请求的 IdP 的 HTTPS 端点。
-
(可选)在“颁发者”字段下,输入在配置 IdP 时记下的 SAML 颁发者 URL,以验证发送的消息的真实性。
-
在“公共证书”下,粘贴在配置 IdP 时记下的证书以验证 SAML 响应。
-
在你的公共证书下,在当前签名和摘要方法的右侧,单击 。
-
选择“签名方法”和“摘要方法”下拉菜单,然后单击 SAML 颁发者使用的哈希算法。
-
在为企业启用 SAML SSO 之前,单击“测试 SMAL 配置”,以确保已输入的信息正确。 此测试使用服务提供商发起(SP 发起的)身份验证,并且必须先成功,然后才能保存 SAML 设置。
-
单击“ 保存”。
注意: 如果需要在企业实施 SAML SSO 并且保存了 SAML 设置后,设置用户将继续有权访问企业,并将与 IdP 预配的 托管用户帐户 一起登录到 GitHub,该用户也将有权访问企业。
-
若要确保身份提供程序将来不可用时仍可在 GitHub 上访问企业,请单击“下载”、“打印”或“复制”以保存恢复代码。 有关详细信息,请参阅“下载企业帐户的单一登录恢复代码”。
启用预配
启用 SAML SSO 后,启用预配。 有关详细信息,请参阅“为企业托管用户配置 SCIM 预配”。
启用来宾协作者
你可以使用来宾协作者的角色向企业中的供应商和承包商授予有限的访问权限。 与企业成员不同,来宾协作者只能访问其所属组织内部的存储库。
如果使用 Entra ID 或 Okta 进行 SAML 身份验证,可能需要更新 IdP 应用程序以使用来宾协作者。 有关详细信息,请参阅“启用来宾协作者”。