Skip to main content

排除企业的标识和访问管理故障

查看企业的标识和访问管理的常见问题和解决方案。

用户名冲突

GitHub会规范化身份提供商(IdP)在 SCIM API 调用中发送的 SCIM userName 属性值,以在 GitHub 上为每个人创建用户名。 如果将多个帐户规范化为同 GitHub 一用户名,则会发生用户名冲突,并且仅创建第一个用户帐户。 有关详细信息,请参阅“外部身份验证的用户名注意事项”。

当 SSO 不可用时访问您的企业

当配置错误或您的身份提供商 IdP 出现问题,导致您无法使用 SSO 时,您可以使用有权访问管理控制台以更新设置或暂时禁用 SAML 的站点管理员。 有关详细信息,请参阅 从 Web UI 管理实例

SCIM 预配错误

Microsoft Entra ID(以前称为Azure AD)将在下一个 Entra ID 同步周期内自动重试 SCIM 预配尝试。 Entra ID 的默认 SCIM 预配间隔为 40 分钟。 有关此重试行为的详细信息,请参阅 Microsoft 文档,如果需要其他协助,也可联系 Microsoft 支持。

Okta 将通过手动 Okta 管理员干预重试失败的 SCIM 预配尝试。 有关 Okta 管理员如何为特定应用程序重试失败任务的详细信息,请参阅 Okta 文档或联系 Okta 支持。

在实例中,如果 SCIM 通常运行正常,单个用户的 SCIM 预配尝试有时也会失败。 在将帐户预配到 GitHub之前,用户将无法登录。 这些单个 SCIM 用户预配失败会导致 HTTP 400 范围状态代码,通常由用户名规范化或用户名冲突问题引起,即企业中已经存在具有相同规范化用户名的另一个用户。 请参阅“外部身份验证的用户名注意事项”。

SAML 身份验证错误

如果用户在尝试使用 SAML 进行身份验证时遇到错误,请参阅 SAML 身份验证故障排除

SAML 和 SCIM 数据映射错误

如果将 SAML 与实例上的 GitHub Enterprise Server SCIM 配合使用,并且用户的 SAML 数据与现有的 SCIM 预配标识不匹配, GitHub 将返回错误。

对于 Entra ID,错误如下所示:

Entra ID SAML 和 SCIM 数据映射错误的屏幕截图。

对于所有其他标识提供者,错误如下所示:

Okta SAML 和 SCIM 数据映射错误的屏幕截图。

发生此错误时,请执行以下步骤:

  1. 通过搜索实例上的用户,确保已为用户预配 SCIM 标识。 有关如何在实例上查找 SCIM 预配用户的详细信息,请参阅 查看企业中的人员
    • 如果用户尚未预配,要么是因为标识提供者尚未发送预配请求,要么是预配请求失败。 企业管理员可以使用其审核日志事件来确定他们受到这两种情况中哪一种的影响。 有关详细信息,请参阅 使用 REST API 通过 SCIM 预配用户和组
  2. 如果已在实例上成功预配用户,则需要确保错误消息中列出的 SAML 属性的值与列出的 SCIM 属性的值匹配。 若要查找 SCIM 属性的值,请参阅 查看和管理用户对企业的 SAML 访问
    • 例如,若要排除上面屏幕截图中的故障,我们可以查看用户的 SCIM“External ID”值。 使用该值,我们可以确保用户已在身份提供者处设置正确的值。

有关如何为用户映射 SAML 和 SCIM 数据的详细信息 GitHub ,请参阅 SCIM 的 REST API 端点

延伸阅读