1

我们提供了一个 Web 应用程序,该应用程序目前为 Office 365 提供 SSO。这很好用,如下所示:

  1. 用户点击我们的网站
  2. 用户选择“使用 Office 365 登录”
  3. Office 365 身份验证窗口启动
  4. 用户输入 O365 凭据并由 O365 进行身份验证
  5. 我们接收令牌并对用户进行身份验证。

正如我所说,这很好用。但是我们注意到,如果用户已经通过 O365 身份验证,然后从我的应用程序启动器中选择我们的应用程序,他们会收到 O365 身份验证窗口并且他们必须再次进行身份验证(他们不应该因为他们已经登录到 O365)。

我们已经多次查看此页面:https ://msdn.microsoft.com/en-us/office/office365/howto/connect-your-app-to-o365-app-launcher

它表明我们想要做的事情是可能的:“应用程序启动器启动登录到应用程序的登录 URL”但是我们找不到任何关于如何发现当前经过身份验证的用户的缓存凭据的文档。

4

2 回答 2

1

应用程序启动器向应用程序的登录 URL 发起登录

我假设您使用 OpenID Connect。在 Azure AD 中,确保登录 URL 正确,它应该与应用程序中的“使用 Office 365 登录”的链接相同。

在此处输入图像描述

于 2016-05-09T12:27:34.160 回答
0

所以我们设法解决了这个问题。问题在于我们的端点 URL 中的参数之一。我们已经包含了可选的“提示”参数:

prompt [可选] 指示所需的用户交互类型。有效值为: -- login:应提示用户重新进行身份验证。-- 同意:已授予用户同意,但需要更新。应提示用户同意。-- admin_consent:应提示管理员代表其组织中的所有用户同意。

请注意,如果省略,它不会描述行为。无论如何删除它工作。

于 2016-05-25T06:08:26.727 回答