排查基于密码的单一登录问题

若要使用“我的应用”中的“基于密码的单一登录 (SSO)” ,必须安装浏览器扩展。 选择为基于密码的 SSO 配置的应用时,该扩展会自动下载。 若要从最终用户的角度了解如何使用“我的应用”,请参阅 “我的应用”门户帮助

“我的应用”浏览器扩展未安装

请确保已安装浏览器扩展。 若要了解详细信息,请参阅 “规划Microsoft Entra My Apps 部署

未配置单一登录

请确保已配置基于密码的单一登录。 若要了解详细信息,请参阅 “配置基于密码的单一登录”。

未分配用户

请确保已将用户分配到应用。 若要了解详细信息,请参阅 向应用分配用户或组

凭据已填写,但扩展不会提交它们

这种问题通常发生在以下情景中:应用程序供应商为了添加字段而在近期更改了他们的登录页面、改变了用于检测用户名和密码字段的标识符,或修改了登录体验作用于应用程序的方式。 幸运的是,在许多情况下,Microsoft 能够与应用程序供应商合作来快速解决这些问题。

但是,尽管 Microsoft 的技术能够在集成中断时进行自动检测,但是可能无法立即找到这些问题,或者这些问题需要一些时间才能解决。 如果其中一个集成无法正常工作,请打开支持案例,以便尽快修复它。

如果与该应用程序的供应商联系,请向他们发送我们的方法,这样,Microsoft 就可以与他们合作,将其应用程序与 Microsoft Entra ID 进行本机集成。 可以将该供应商发送至列出 Microsoft Entra 应用程序库中的应用程序来让他们开始工作。

凭据已填写并提交,但页面却显示凭据不正确

若要解决此问题,请先尝试以下操作:

  • 让用户首先尝试使用为其存储的凭据 直接登录到应用程序网站

    • 如果登录有效,则让用户在“我的应用”的“应用”部分中选择“应用程序磁贴”上的“更新凭据”按钮,将其更新到最新的已知工作用户名和密码。

    • 如果或另一个管理员为该用户分配凭据,请导航到该应用程序的用户和组选项卡、选择分配并单击更新凭据按钮,找到该用户或组的应用程序分配。

  • 如果用户分配了自己的凭据,请让用户 检查以确保其密码未在应用程序中过期 ,如果是这样,请直接登录到应用程序 来更新其过期的密码

    • 在应用程序中更新密码后,请求用户选择“我的应用”应用”部分中“应用程序磁贴”上的“更新凭据”按钮,以将其更新到最新的已知工作用户名和密码。

    • 如果或另一个管理员为该用户分配凭据,请导航到该应用程序的用户和组选项卡、选择分配并单击更新凭据按钮,找到该用户或组的应用程序分配。

  • 确保“我的应用”浏览器扩展正在运行并且已在用户浏览器中启用。

  • 确保在 隐身模式、inPrivate 或专用模式下,用户不会尝试从“我的应用”登录到应用程序。 在这些模式下“我的应用”扩展不受支持。

如果前面的建议不起作用,则可能是应用程序端发生了更改,该更改暂时中断了应用程序与 Microsoft Entra ID 的集成。 例如,当应用程序供应商在其页面上引入脚本时,可能会发生这种情况,这在手动输入与自动输入方面的行为不同,这会导致自动化集成(如我们自己的)中断。 幸运的是,在许多情况下,Microsoft 能够与应用程序供应商合作来快速解决这些问题。

但是,尽管 Microsoft 的技术能够在应用程序集成中断时进行自动检测,但是可能无法立即找到这些问题,或者这些问题可能需要一些时间才能解决。 当集成无法正常工作时,可以打开支持案例,以便尽快修复它。

此外,如果与该应用程序的供应商联系,请向他们发送我们的方法,这样我们就可以与他们合作,将他们的应用程序与 Microsoft Entra ID 进行本机集成。 可以将该供应商发送至列出 Microsoft Entra 应用程序库中的应用程序来让他们开始工作。

检查应用程序的登录页最近是否已更改,或者是否需要额外的字段

如果应用程序的登录页发生了巨大变化,有时这会导致集成中断。 例如,当应用程序供应商向其体验添加登录字段、captcha 或多重身份验证时, 幸运的是,在许多情况下,Microsoft 能够与应用程序供应商合作来快速解决这些问题。

但是,尽管 Microsoft 的技术能够在应用程序集成中断时进行自动检测,但是可能无法立即找到这些问题,或者这些问题可能需要一些时间才能解决。 当集成无法正常工作时,可以打开支持案例,以便尽快修复它。

此外,如果与该应用程序的供应商联系,请向他们发送我们的方法,这样我们就可以与他们合作,将他们的应用程序与 Microsoft Entra ID 进行本机集成。 可以将该供应商发送至列出 Microsoft Entra 应用程序库中的应用程序来让他们开始工作。

捕获应用的登录字段

仅支持 HTML 的登录页面支持登录字段捕获。 非标准登录页面不支持登录字段捕获,例如使用 Adobe Flash 或其他非 HTML 支持的技术的页面。 以下部分演示如何捕获自定义应用的登录字段。

捕获应用的登录字段

若要捕获登录字段,必须安装“我的应用”浏览器扩展。 此外,浏览器不能在 inPrivateincognito专用模式下运行。

若要为应用配置基于密码的 SSO,请执行以下步骤:

  1. 以至少云应用程序管理员身份登录到 Microsoft Entra 管理中心
  2. 浏览到 Entra ID>企业应用>所有应用
  3. 选择要为 SSO 配置的应用。
  4. 在应用加载后,在左侧的导航窗格中选择单一登录
  5. 选择基于密码的登录模式。
  6. 输入登录 URL,这是用户登录应用时在其中输入用户名和密码的页面。 确保登录字段在提供的 URL 的页面上可见
  7. 选择 “配置 <appname> 密码单一登录设置”。
  8. 选择捕获登录字段
  9. 选择“确定”
  10. 选择“保存”
  11. 按照说明使用“我的应用”。

排查问题

我收到“无法保存单一登录配置”错误

更新 SSO 配置很少会失败。 要解决这一问题,请尝试再次保存配置。

如果仍然遇到此错误,请打开支持案例。 包括“查看门户通知详细信息”“将通知详细信息发送给支持工程师以获取帮助”部分中描述的信息。

我无法检测应用的登录字段

检测不起作用时,可能会观察到以下行为:

  • 捕获过程似乎正常工作,但捕获的字段不正确。
  • 当捕获进程运行时,正确的字段不突出显示。
  • 捕获进程如期将你带到应用的登录页面,但无任何反应。
  • 检测发生,但当用户从“我的应用”导航到应用时,SSO 不会发生。

如果遇到以上任何问题,请执行以下操作:

  • 确保已安装并启用“我的应用”浏览器扩展的最新版本。
  • 在捕获过程中,确保你的浏览器不处于 incognitoinPrivate专用模式。 在这些模式下“我的应用”扩展不受支持。
  • 确保用户在 隐身模式、 inPrivate专用模式下未尝试从“我的应用”登录应用。
  • 再次尝试捕获过程。 确保红色标记在正确的字段上。
  • 如果捕获进程似乎停止响应或登录页没有响应,请再次尝试捕获过程。 但是,这次在进程完成后,请按 F12 键打开浏览器的开发人员控制台。 选择控制台选项卡。键入 window.location=“<配置应用>时指定的登录 URL,然后按 Enter。 这会重定向至结束捕获进程并存储已捕获的字段的页面。

我无法将其他用户添加到基于密码的 SSO 应用

在直接分配用户的所有密码 SSO 应用中,用户不能配置超过 48 个凭据。

如果要向用户添加更多具有基于密码的 SSO 的应用,请考虑将应用分配到用户是直接成员的组,并配置组的凭据。 为组配置的凭据将可用于组的所有成员。

我无法将其他组添加到基于密码的 SSO 应用

每个基于密码的 SSO 应用限制为 48 个组,这些组已分配并为其配置了凭据。 如果要添加额外的组,可以:

  • 添加应用的额外实例
  • 删除不再使用此应用的组

请求支持

如果在设置 SSO 并分配用户时收到错误消息,请打开支持票证。 请尽可能多地包含以下信息:

  • 相关错误 ID
  • UPN(用户电子邮件地址)
  • TenantID
  • 浏览器类型
  • 发生错误时的时区和时间/期限
  • Fiddler 跟踪

查看门户通知的详细信息

若要查看任何门户通知的详细信息,请执行以下步骤:

  1. 选择 Microsoft Entra 管理中心右上角的通知图标(铃铛)。
  2. 选择显示错误状态的任何通知。 (它们标有红色的“!”。)

    注意

    你无法选择处于成功正在进行状态的通知。

  3. “通知详细信息”窗格随即打开。 阅读此信息以了解此问题。
  4. 如果仍需要帮助,可以与支持工程师或产品组共享此信息。 选择复制错误文本框右侧的复制图标,复制要共享的通知详细信息。

向支持工程师发送通知详细信息以获取帮助

请务必共享此部分中列出的所有详细信息并提供支持,以便他们能够快速帮助你。 要记录它,可以进行屏幕截图或选择复制错误

以下信息说明每个通知项的含义,并提供示例。

基本通知项

  • 标题:通知的描述性标题。

    示例:应用程序代理设置

  • 说明:操作结果。

    示例:输入的内部 URL 已被其他应用程序使用。

  • 通知 ID:通知的唯一 ID。

    示例:clientNotification-2adbfc06-2073-4678-a69f-7eb78d96b068

  • 客户端请求 ID:浏览器发出的特定请求 ID。

    示例:0000aaaa-11bb-cccc-dd22-eeeeee333333

  • 时间戳 UTC:通知发生时的时间戳(UTC)。

    示例:2017-03-23T19:50:43.7583681Z

  • 内部事务 ID:用于查找系统中错误的内部 ID。

    示例:71a2f329-ca29-402f-aa72-bc00a7aca603

  • UPN:执行该操作的用户。

    示例: tperkins@f128.info

  • 租户 ID:执行操作的用户所属租户的唯一 ID。

    示例:aaaabbbb-0000-cccc-1111-dddd2222eeee

  • 用户对象 ID:运行作的用户的唯一 ID。

    示例:aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb

详细通知项

  • 显示名称:(可以为空)错误的更详细的显示名称。

    示例:应用程序代理设置

  • 状态:通知的特定状态。

    示例:失败

  • 对象 ID:(可以为空)对其运行操作的对象 ID。

    示例:aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb

  • 详细信息:该操作导致的结果的详细说明。

    示例:内部 url 'https://bing.com/' 无效,因为它已在使用中。

  • 复制错误:您可以选择复制错误文本框右侧的复制图标,以复制通知详细信息,从而帮助支持工作。

    示例:

    {"errorCode":"InternalUrl\_Duplicate","localizedErrorDetails":{"errorDetail":"Internal url 'https://google.com/' is invalid since it is already in use"},"operationResults":\[{"objectId":null,"displayName":null,"status":0,"details":"Internal url 'https://bing.com/' is invalid since it is already in use"}\],"timeStampUtc":"2017-03-23T19:50:26.465743Z","clientRequestId":"00aa00aa-bb11-cc22-dd33-44ee44ee44ee","internalTransactionId":"aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb","upn":"tperkins@f128.info","tenantId":"aaaabbbb-0000-cccc-1111-dddd2222eeee","userObjectId":"aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb"}

后续步骤