SSAS OLAP多维数据集忽略连接字符串中的凭据

时间:2021-02-06 01:45:56

I'm having quite a interesting issue with my SSAS server today. I have two (almost) identical data cubes. Each named Desserts and Test, both these cubes have one role, and one user assigned in that role:

我今天的SSAS服务器问题非常有趣。我有两个(几乎)相同的数据立方体。每个名为Desserts和Test的这些多维数据集都有一个角色,并且在该角色中分配了一个用户:

SSAS OLAP多维数据集忽略连接字符串中的凭据

SSAS OLAP多维数据集忽略连接字符串中的凭据

I'm accessing both cubes in excel via the same "msmdpump.dll" file located in IIS on the same server. The connection string for both cubes looks like the following:

我通过位于同一服务器上的IIS中的相同“msmdpump.dll”文件访问excel中的两个多维数据集。两个多维数据集的连接字符串如下所示:

SSAS OLAP多维数据集忽略连接字符串中的凭据

Desserts:

甜品:

Provider=MSOLAP.8;Persist Security Info=True;User ID=xxxDessertsAdmin;Initial Catalog=xxx_Desserts_GL;Data Source=https://Desserts.xxx.com/olap/msmdpump.dll;MDX Compatibility=1;Safety Options=2;MDX Missing Member Mode=Error;Update Isolation Level=2

Provider = MSOLAP.8; Persist Security Info = True; User ID = xxxDessertsAdmin; Initial Catalog = xxx_Desserts_GL; Data Source = https://Desserts.xxx.com/olap/msmdpump.dll; MDX Compatibility = 1; Safety Options = 2 ; MDX缺少成员模式=错误;更新隔离级别= 2

Test:

测试:

Provider=MSOLAP.8;Persist Security Info=True;User ID=xxxTestAdmin;Initial Catalog=xxx_Test_GL;Data Source=https://Test.xxx.com/olap/msmdpump.dll;MDX Compatibility=1;Safety Options=2;MDX Missing Member Mode=Error;Update Isolation Level=2

Provider = MSOLAP.8; Persist Security Info = True; User ID = xxxTestAdmin; Initial Catalog = xxx_Test_GL; Data Source = https://Test.xxx.com/olap/msmdpump.dll; MDX Compatibility = 1; Safety Options = 2 ; MDX缺少成员模式=错误;更新隔离级别= 2

Both these cubes are build correctly and contain the same data. I can verify this by using the cube browser in SSAS.

这两个多维数据集都正确构建并包含相同的数据。我可以通过在SSAS中使用多维数据集浏览器来验证这一点。

So to review, excluding the different name I have the: same cube, same data, same roles, same users, same "msmdpump.dll", same App Pool, same connection string in Excel. As far as I tell nearly identical cubes. However one of them does not work.

所以要查看,排除不同的名称我有:相同的多维数据集,相同的数据,相同的角色,相同的用户,相同的“msmdpump.dll”,相同的应用程序池,Excel中相同的连接字符串。据我说的几乎相同的立方体。但是其中一个不起作用。

When I try to access the "Desserts" cube in excel in shows I do have permission to access the cube. I can reproduce this issue directly by granting permission for the "IUSR" user account to the desserts cube, setting up the connection string, then revoking that access (Removing "IUSR" from "Desserts Role"):

当我尝试在show中访问excel中的“Desserts”多维数据集时,我确实有权访问多维数据集。我可以直接通过向“甜点”多维数据集授予“IUSR”用户帐户权限,设置连接字符串,然后撤消该访问权限(从“甜点角色”中删除“IUSR”)来直接重现此问题:

SSAS OLAP多维数据集忽略连接字符串中的凭据

It appears to me that "msmdpump.dll" ignores the username passed through the connection string, and instead is trying to access the cube using the "IUSR" account. I do not understand why this is happening. The app pool for the " msmdpump.dll" is not running under that user name. I have not configured anything on my server to run under that context.

在我看来,“msmdpump.dll”忽略通过连接字符串传递的用户名,而是尝试使用“IUSR”帐户访问多维数据集。我不明白为什么会这样。 “msmdpump.dll”的应用程序池未在该用户名下运行。我没有在我的服务器上配置任何在该上下文下运行的东西。

Why is (for only the desserts cube) "msmdpump.dll" ignoring the username in the connection string and instead trying to access the cube using the "IUSR" account?

为什么(仅针对甜点多维数据集)“msmdpump.dll”忽略连接字符串中的用户名,而是尝试使用“IUSR”帐户访问多维数据集?

1 个解决方案

#1


0  

Yes same everything except the website, each cube was going through a separate website, the configuration differed between the two. Specifically it was the "Authentication" configuration within IIS that caused the issue:

是的,除了网站以外的所有内容,每个多维数据集都是通过一个单独的网站,两者之间的配置不同。具体来说,IIS中的“身份验证”配置导致了此问题:

SSAS OLAP多维数据集忽略连接字符串中的凭据

"Annoymous" authentication needs to be "Disabled" if you wish to have the credentials passed through to the OLAP cube. Otherwise it seems to just default to the "IUSR" account.

如果您希望将凭据传递到OLAP多维数据集,则“Annoymous”身份验证需要为“已禁用”。否则它似乎只是默认为“IUSR”帐户。

#1


0  

Yes same everything except the website, each cube was going through a separate website, the configuration differed between the two. Specifically it was the "Authentication" configuration within IIS that caused the issue:

是的,除了网站以外的所有内容,每个多维数据集都是通过一个单独的网站,两者之间的配置不同。具体来说,IIS中的“身份验证”配置导致了此问题:

SSAS OLAP多维数据集忽略连接字符串中的凭据

"Annoymous" authentication needs to be "Disabled" if you wish to have the credentials passed through to the OLAP cube. Otherwise it seems to just default to the "IUSR" account.

如果您希望将凭据传递到OLAP多维数据集,则“Annoymous”身份验证需要为“已禁用”。否则它似乎只是默认为“IUSR”帐户。