How to check if a windows user has access (Windows Integrated Security authentication) to SQL Server Analysis Services (SSAS) Server via impersonation

Viewed 2060

For a SQL Server instance, to check if a windows user is present and has any access or not one can try various ways as detailed here.

I'm looking for something similar for SQL Server Analysis Services (SSAS) server.

I went into properties of SSAS Server from right-click context menu and on Security tab I can see that there are several windows users already configured:

enter image description here

Is there any way to check from a client application (written in C#) by making some sort of test connection or does SSAS also maintains some metadata database of its own like master database in SQL Server instance (DB engine) which can be queried. I checked the Databases node in SSAS server but I don't see any default databases there:

enter image description here

In the client application I'm working upon, I've windows user name and password as input. In my client application there is a simple winform with two text boxes to take AD user name and password which need to be connected to a SSAS Server. My gut feel is that password is of no relevance here as SSAS supports only Windows integrated authentication mode. My client application would be running under an account which already has access to SSAS server I'm trying to connect.

Update: After getting help from @Vaishali, I'm able to figure out that it is possible to make a test connection to an SSAS server using ADOMD.Net.

Now, the problem here is that the connection string implicitly uses the AD account of the user with which I'm running the client application to connect to the SSAS server. I don't think it would be possible mention an windows AD account user name and password explicitly in the ADOMD.Net connection strings while using Windows Integrated authentication. Even connection strings of SQL Server don't allow mentioning the windows username and password explicitly in the connection string as mentioned here.

Update 2: I have got a lead from one of my friends that it is possible to fire some MDX query on SSAS to get user access details.

Update 3: SSAS server supports only Windows Integrated Security mode of authentication unlike SQL Server DB engine which also supports userid-password based SQL authentication. So, some form of impersonation would be required to fire MDX queries on behalf of other user for which I'm trying to check access on SSAS server through Windows Integrated Security only.

2 Answers
Related