我正在尝试连接到使用Windows身份验证的SSAS多维数据集
我的Web应用程序存储在单独的服务器上,SQL分析实例(简称ServerWebApp
),SSAS多维数据集位于ServerCUBE
OLAPCon = New AdomdConnection("Provider=MSOLAP.4; roles=Administrator; Integrated Security=SSPI; Persist Security Info=True; EffectiveUserName=<Domain\Username>; " _
& " Initial Catalog=<DBName>; Data Source=<ServerCUBE>; ")
由于SSAS使用Windows身份验证,我试图通过指定EffectiveUserName
来模拟我的Windows登录,但是,这似乎不起作用,因为我收到了以下错误:
Either the user, Domain\ServerWebApp, does not have access to the <DBName> database, or the database does not exist.
正如您所看到的那样,它使用的是网络应用登录ID而不是我的Windows ID
如何在SSAS ADOMD连接字符串中模拟我的Windows ID?
答案 0 :(得分:0)
当我使用EffectiveUserName时,这就是让我失望的原因。来自MSDN:
要使用[EffectiveUserName]属性,调用者必须具有 Analysis Services中的管理权限。
答案 1 :(得分:0)
您需要先通过创建应用程序池来配置IIS服务器。然后,您需要将此池指向本地路径(C驱动器中的文件夹),该路径由msmdpump.dll和msmdpump文件组成。使用记事本编辑msmdpump文件(删除localhost名称并将其替换为SQL分析服务器名称)。提供服务器名称的用户名代替domain \ username。