首页 > 解决方案 > 用于本地 SharePoint 2013、Power BI 和自定义 Web 应用程序的 ADFS 单点登录?

问题描述

设想

有一个用户存储,即本地 AD。ADFS 为 SharePoint 2013 和 Power BI 提供身份验证。

自定义 Web 应用程序需要对来自 AD 的用户进行身份验证。Web 应用程序后端还需要访问 SharePoint REST API。

目标是使用单点登录来实现上述目标。如果登录到三个应用程序中的任何一个,则用户不必为其他两个应用程序中的任何一个输入凭据。此外,自定义 Web 应用程序还显示来自 SharePoint(iFrame 和 REST API)和 Power BI (iFrame) 的内容。

我们尝试了以下两种解决方案,但在任何一种情况下都遇到了问题。

解决方案 1

什么不起作用:导航到 Power BI 或将其包含在 iFrame 中会将用户重定向到 ADFS 登录页面。这是因为用户尚未在浏览器中使用 ADFS 进行身份验证。

解决方案 2

什么不起作用:Web 应用程序无法使用从 Web 应用程序的 ADFS 接收的 SAML 令牌向 SharePoint 发出 REST API 请求。我们已尝试使用该 SAML 令牌代表登录用户从 ADFS for SharePoint 请求另一个令牌。这也不起作用。此外,本地 SharePoint 2013 可能不接受代表请求。

问题

有没有办法为所有三个应用程序提供 SSO,同时还可以从 Web 应用程序访问 SharePoint 的 REST API?用户应该只需要登录一次,最好只登录网络应用程序。

标签: sharepointsharepoint-2013powerbiadfsadfs2.0

解决方案


通过 Azure Active Directory 注册应用程序可能是实现所需内容的最佳方式。您可以在 Azure AD 中注册应用程序,然后按应用程序、租户或策略向用户授予权限。https://docs.microsoft.com/en-us/power-bi/developer/embed-sample-for-customers https://docs.microsoft.com/en-us/power-bi/developer/create-an -azure 活动目录租户


推荐阅读