2
votes

I am trying to implement Dynamic Dimension Security in SSAS 2012 Multidimensional Model. I have a little knowledge on this for I have already implemented row level security in SSAS Tabular using DAX.

What I did in Tabular is exactly the same as described in msdn. http://msdn.microsoft.com/en-in/library/hh479759.aspx

The DAX I used in tabular is

='Organization'[Project Id]=LOOKUPVALUE('Employee Security'[Project Id], 'Employee Security'[Login Id], USERNAME(), 'Employee Security'[Project Id], 'Organization'[Project Id])

  • Organization - Dimension Table on which Dynamic filtering should be happened (on the basis of Project Id).
  • Employee Security - Dimension Table with Login Id of users are stored

I need to implement the same functioning dynamic security in Multidimensional model too.

Can somebody help me with the MDX and steps that should be used here to achieve the same?

If you want any more clarifications on my requirement please do ask the same.

Thank You in Advance.

1

1 Answers

1
votes

In multidimensional model you need to have a dimension which contains all user ids (which are joined to the project ids). Then create a role and use StrToMember function to dynamically catch the users id and convert that into a member from the security dimension.

{StrToMember("Dim.Users.&[" + UserName() + "]")}

More about this topic can be read here: http://richardlees.blogspot.se/2010/10/ssas-dynamic-security.html