[英]SSAS OLAP Cube Ignores Credentials in Connection String
我的SSAS服务器今天遇到了一个非常有趣的问题。 我有两个(几乎)相同的数据立方体。 这两个多维数据集分别命名为“甜点”和“测试”,都具有一个角色,并为此角色分配了一个用户:
我正在通过位于同一服务器上IIS中的相同“ msmdpump.dll ”文件访问excel中的两个多维数据集。 两个多维数据集的连接字符串如下所示:
甜品:
提供程序= MSOLAP.8;持久安全信息=正确;用户ID = xxxDessertsAdmin;初始目录= xxx_Desserts_GL;数据源= https://Desserts.xxx.com/olap/msmdpump.dll;MDX兼容性= 1;安全选项= 2 ; MDX缺少会员模式=错误;更新隔离级别= 2
测试:
提供程序= MSOLAP.8;持久安全信息=正确;用户ID = xxxTestAdmin;初始目录= xxx_Test_GL;数据源= https://Test.xxx.com/olap/msmdpump.dll;MDX兼容性= 1;安全选项= 2 ; MDX缺少会员模式=错误;更新隔离级别= 2
这两个多维数据集都正确构建并包含相同的数据。 我可以通过使用SSAS中的多维数据集浏览器来验证这一点。
因此,要进行审查,除了使用不同的名称外,我还有:Excel中相同的多维数据集,相同的数据,相同的角色,相同的用户,相同的“ msmdpump.dll”,相同的应用程序池,相同的连接字符串。 据我讲几乎相同的多维数据集。 但是其中之一不起作用。
当我尝试访问excel中的“ Desserts”多维数据集时,我确实有权访问该多维数据集。 我可以直接通过向“甜点”多维数据集授予“ IUSR”用户帐户的权限,设置连接字符串,然后撤消该访问权限(从“甜点角色”中删除“ IUSR”)来直接重现此问题:
在我看来,“ msmdpump.dll”将忽略通过连接字符串传递的用户名,而是尝试使用“ IUSR”帐户访问多维数据集。 我不明白为什么会这样。 “ msmdpump.dll”的应用程序池未在该用户名下运行。 我没有在服务器上配置任何可在该上下文下运行的东西。
为什么(仅对于甜点多维数据集)“ msmdpump.dll”忽略连接字符串中的用户名,而是尝试使用“ IUSR”帐户访问多维数据集?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.