如何在 SharePoint 2013 中使用 FBA(基于表单的身份验证)通过 Excel 服务将 EffectiveUserName 传递给 SSAS

How Can I pass EffectiveUserName to SSAS through Excel Service using FBA(Forms based authentication) in SharePoint 2013

我们有一个 OLAP 项目,它使用 Sharepoint 2013 Excel 服务来显示 excel 包含来自 SQL 服务器分析服务 (SSAS) 多维数据集的外部数据的文件。 我们登录用户的身份验证方法是 FBA(基于表单的身份验证)

我们的目标是根据每个用户的角色(已在 SSAS 端定义)仅显示来自 SSAS 多维数据集的数据子集。

FBA 根据 AD 对用户进行身份验证,所有授权用户都已根据其许可级别成为 SSAS 中相应角色的成员。 我们需要 Excel 服务将 EffectiveUserName 传递给 SSAS,为此我们在 SharePoint 中央管理的 Excel 服务的全局设置中启用了 EffectiveUserName。

与 Excel 相比,我们在连接属性的 Excel 服务身份验证设置中启用了 Windows 身份验证,正如我们在一些博客文章中看到的那样。 但是通过SharePoint访问后,出现如下错误。

“数据连接使用 Windows 身份验证,无法委派用户凭据。” 正如我已经说过的,我不想将用户凭据委托给 SSAS。 Excel 服务已配置为使用单个帐户连接到 Analysis Services。我只想传递 EffectiveUserName。

使用 windows 身份验证不是一种选择,因为用户从外部网和 Internet 访问该站点。

最后我们更改登录方式。我们使用自定义登录页面,该页面使用 windows 声明身份验证登录到 Sharepoint 站点。 有关详细信息,请参阅此 link: