Lesson 3: Enabling Row-Level Security in Report Manager
Enabling row-level security within a report model is a two step process: first you use Model Designer to create at least one filter attribute and assign it to the SecurityFilters collection for the entity for which you are applying row-level security, and then you use Report Manager to grant row-level permissions based on the filters that you created in Model Designer.
Security filters are always applied for users who have Administrator permissions to the model. To allow administrators or other users to see all rows of an entity on which row-level security is defined, you can create an empty security filter (which always returns True) and then use the filter to grant those users access to all the rows.
In this lesson, you will start Report Manager and apply model item security using the filtered attribute that you created in Lesson 2.
To start Report Manager from a browser
Open Microsoft Internet Explorer 6.0 or later.
In the address bar of the Web browser, type the Report Manager URL. By default, the URL is http://<ComputerName>/reports.
To grant access to the Adventure Works report model
On the Home page, double-click Models.
Double-click Adventure Works and then click Model Item Security.
Select the Secure individual model items independently for this model check box.
Note
To apply model item security, this check box must be selected.
Select the Adventure Works top node.
Select the Assign read permission to the following users and groups option.
Type Everyone and then click Apply.
The entire report model is now visible to everyone who has permissions to the report model.
To grant row-level access to the Adventure Works report model
Expand the Employee entity.
Select the UserIDFilter attribute.
Select the Assign read permission to the following users and groups option.
To grant access to Rachel0 and Garrett1, type <ComputerName>\Rachel0; <ComputerName>\Garrett1 and then click Apply.
To return to the Report Manager Home page, click Home.
Next Steps
You have successfully applied row-level security on a model item in the report model. In the next lesson, you will validate these changes by building a simple report in Report Builder and then viewing the report as Rachel0 and as Garrett1 to verify that row-level security works as you expect. See Lesson 4: Verifying the Applied Row-Level Security Changes.
See Also