Dynamic cell security
We can implement dynamic security for cell security in much the same way as we have seen with dimension security. In this section we'll use the same bridge table we used in the previous sections to model the relationship between users and resellers they have access to; our requirements will be as follows:
Members of the role will have complete access to all measures, except for Gross Profit
For Gross Profit, users will only have access to values for it for resellers they have been granted access to based on the data in our bridge table
We also need to hide the All member of the Reseller dimension to ensure that users cannot derive values for cells they don't have access to.
We can use this expression to control Read access in the Cell Data tab:
NOT ( Measures.CurrentMember IS Measures.[Gross Profit] AND ( StrToMember ("[Users].[User].[" + UserName() + "]"), Measures.[Bridge Reseller Users Count]) = 0 OR Reseller.Reseller.CurrentMember...