调试基于 SAML 的应用程序单一登录

本文介绍如何查找和修复使用基于 SAML 的单一登录的 Microsoft Entra ID 中的应用程序 的单一登录 问题。

在您开始之前

建议安装 “我的应用安全登录扩展”。 通过此浏览器扩展,可以轻松收集 SAML 请求和 SAML 响应信息,以便解决单一登录问题。 如果无法安装扩展,本文介绍如何解决安装扩展以及未安装扩展的问题。

若要下载并安装“我的应用安全登录扩展”,请使用以下链接之一。

测试基于 SAML 的单一登录

若要在 Microsoft Entra ID 与目标应用程序之间测试基于 SAML 的单一登录,请执行以下作:

  1. 至少以云应用程序管理员身份登录到 Microsoft Entra 管理中心

  2. 请导航到 Entra ID>企业应用程序>所有应用程序

  3. 从企业应用程序列表中,选择要为其测试单一登录的应用程序,然后从左侧的选项中选择 “单一登录”。

  4. 选择单一登录方法窗格中选择 SAML

  5. 若要打开基于 SAML 的单一登录测试体验,请转到 测试单一登录 (步骤 5)。 如果 “测试 ”按钮灰显,则需要先在 “基本 SAML 配置 ”部分中填写并保存所需的属性。

  6. “测试单一登录 ”页中,使用公司凭据登录到目标应用程序。 你可以以当前用户或其他用户身份登录。 如果以其他用户身份登录,系统会提示你进行身份验证。

    显示“测试 SAML SSO”页的屏幕截图

如果能够登录,则测试成功。 在这种情况下,Microsoft Entra ID 向应用程序颁发了 SAML 响应令牌。 应用程序使用 SAML 令牌成功登录了你。

如果在公司登录页或应用程序的页面上出错,请使用以下部分之一来解决此错误。

解决公司登录页上的登录错误

尝试登录时,可能会在公司登录页上看到类似于以下示例的错误。

公司登录页错误的示例

若要调试此错误,需要错误消息和 SAML 请求。 “我的应用安全登录”扩展会自动收集此信息,并显示有关 Microsoft Entra ID 的解析指南。

解决已安装“我的应用程序安全登录扩展”时的登录错误

  1. 发生错误时,扩展会将你重定向回Microsoft Entra ID Test 单一登录 页。
  2. “测试单一登录 ”页上,选择“ 下载 SAML 请求”。
  3. 您应该根据错误和 SAML 请求中的值看到具体的解决方法指导。
  4. 你将看到 “修复” 按钮,以自动更新Microsoft Entra ID 中的配置以解决此问题。 如果未看到此按钮,则登录问题不是由于Microsoft Entra ID 上的配置错误所致。

如果未提供登录错误的解决方案,建议使用反馈文本框通知我们。

在不安装“我的应用安全登录扩展”的情况下解决此错误

  1. 复制页面右下角的错误消息。 错误消息包括:
    • 关联标识和时间戳。 创建具有Microsoft的支持案例时,这些值非常重要,因为它们可帮助工程师识别问题并提供准确的问题解决方法。
    • 标识问题的根本原因的语句。
  2. 返回到 Microsoft Entra ID 并找到 “测试单一登录 ”页。
  3. 获取解决方案指导 的上方文本框中,粘贴错误信息。
  4. 选择 “获取解决方案指南 ”以显示解决问题的步骤。 本指南可能需要 SAML 请求或 SAML 响应中的信息。 如果不使用“我的应用安全登录扩展”,可能需要一个工具(如 Fiddler )来检索 SAML 请求和响应。
  5. 验证 SAML 请求中的目标是否对应于从 Microsoft Entra ID 获取的 SAML 单一登录服务 URL。
  6. 请验证 SAML 请求中的颁发者标识符是否与 Microsoft Entra ID 配置的应用程序标识符相同。 Microsoft Entra ID 使用颁发者信息在目录中识别应用程序。
  7. 请确认 AssertionConsumerServiceURL 是应用程序期望从 Microsoft Entra ID 接收 SAML 令牌的 URL。 可以在 Microsoft Entra ID 中配置此值,但如果它是 SAML 请求的一部分,则此值不是必需的。

解决应用程序页上的登录错误

可能成功登录,然后在应用程序的页面上看到错误。 当Microsoft Entra ID 向应用程序颁发令牌,但应用程序不接受响应时,会出现此错误。

若要解决该错误,请执行以下步骤:

  1. 如果应用程序位于 Microsoft Entra 库中,请验证是否遵循了将应用程序与 Microsoft Entra ID 集成的所有步骤。

  2. 检索 SAML 响应。

    • 如果已安装“我的应用安全登录”扩展,请从 “测试单一登录 ”页中选择 “下载 SAML 响应”。
    • 如果未安装扩展,请使用 Fiddler 等工具来检索 SAML 响应。
  3. 请注意 SAML 响应令牌中的以下元素:

    • NameID 值和格式的用户唯一标识符

    • 令牌中颁发的声明内容

    • 用于对令牌进行签名的证书。

      有关 SAML 响应的详细信息,请参阅 单一登录 SAML 协议

  4. 查看 SAML 响应后,请在 登录后查看应用程序页面上 的错误,获取有关如何解决问题的指导。

  5. 如果仍然无法成功登录,可以询问应用程序供应商 SAML 响应中缺少的内容。

现在,单点登录功能已经应用到您的应用程序,您可以开始使用条件访问