Skip to main content

关于企业 IAM 的 SAML

可以使用 SAML 单一登录 (SSO) 集中管理对 your GitHub Enterprise Server instance 的访问权限。

关于your GitHub Enterprise Server instance 上的 SAML SSO

SAML SSO 允许人员通过外部系统进行身份验证和访问 your GitHub Enterprise Server instance,以便进行标识管理。

SAML 是一种基于 XML 的身份验证和授权标准。 为 your GitHub Enterprise Server instance 配置 SAML 时,用于身份验证的外部系统称为标识提供者 (IdP)。 实例充当 SAML 服务提供程序 (SP)。 有关 SAML 标准的详细信息,请参阅 Wikipedia 上的安全断言标记语言

使用 SAML 或 CAS 时,双重身份验证在 GitHub Enterprise Server 实例上不受支持或无法管理,但受外部身份验证提供商的支持。 在组织上无法实施双重身份验证。 有关对组织强制实施双因素身份验证的详细信息,请参阅“在你的组织中要求进行双因素身份验证”。

如果想要允许对某些在你的外部验证提供程序上无帐户的人员进行身份验证,可以允许对 your GitHub Enterprise Server instance 上的本地帐户进行回退身份验证。 有关详细信息,请参阅“允许对提供者外部的用户使用内置身份验证”。

有关在 GitHub Enterprise Server 上配置 SAML SSO 的详细信息,请参阅“为企业配置 SAML 单一登录”。 若要了解如何使用特定 IdP 为 your GitHub Enterprise Server instance 配置身份验证和用户预配,请参阅“将 SAML 用于企业 IAM”中的关于各个 IdP 的文章。

关于创建用户帐户

默认情况下,当您分配或取消分配应用程序时,您的 IdP 不会自动与 GitHub Enterprise Server 通信。 GitHub Enterprise Server 上的资源的访问,使用 SAML 实时 (JIT 创建用户帐户 ,) 首次导航到 GitHub Enterprise Server 并通过通过 IdP 进行身份验证来登录。 当你授予 GitHub Enterprise Server 的访问权限时,你可能需要手动通知用户,并且在停用期间必须手动 停用 GitHub Enterprise Server 上的用户帐户。

或者,当你在 IdP 上分配或取消分配应用程序时不使用 SAML JIT 预配,而是使用 SCIM 自动创建或暂停用户帐户和授予或拒绝对 your GitHub Enterprise Server instance 的访问权限。 SCIM for GitHub Enterprise Server 目前为专用 beta 版,可能随时发生更改。 有关详细信息,请参阅配置企业的用户预配

使用 JIT 预配时,如果从 IdP 中删除用户,还必须在 your GitHub Enterprise Server instance 上手动暂停该用户的帐户。 否则,帐户的所有者可以继续使用访问令牌或 SSH 密钥进行身份验证。 有关详细信息,请参阅“挂起和取消挂起用户”。

支持的 IdP

GitHub Enterprise Server 支持 SAML SSO 与采用 SAML 2.0 标准的 IdP 一起使用。 有关详细信息,请参阅 OASIS 网站上的 SAML Wiki

GitHub 官方支持和内部测试以下 IdP。

  • Active Directory 联合身份验证服务 (AD FS)
  • Azure Active Directory (Azure AD)
  • Okta
  • OneLogin
  • PingOne
  • Shibboleth

如果 IdP 支持加密断言,则可以在 GitHub Enterprise Server 上配置加密断言,以提高身份验证过程中的安全性。

GitHub Enterprise Server 不支持 SAML 单次注销。 要终止活动的 SAML 会话,用户应该直接在 SAML IdP 上注销。

延伸阅读