I tried 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])**
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.
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