Reputation: 397
We are using SQL Server 2008 and have our permissions setup in Active Directory (AD). Each row in a core table needs to be only viewable by those that have permission to view each row. I can setup row level security on each row (each row contains a single role that lines up with an AD group), however I have the following problem :-
This being the case (to enable a flexible model) my first instinct is to create one AD group per country, then create the groupings within database roles (to group each country). However this will be a maintenance overhead - for example there are many staff members who have access to all groups and hence when a country comes online, a new AD group is created which means I will have to request these users be added as members to the new AD group (as well a new global user needs to be added to all groups) - I would rather have a global group that has access across the board.
Has anyone come across this kind of issue. Basically I can accommodate the many to many within the database role level if I have very granular AD groups only, however I would rather for example have granular AD groups (for those users that require granular permissions) as well as a global AD group for those users that need access to all rows (that I only need to add users, who have global access)
Upvotes: 2
Views: 1862
Reputation: 397
What I finished up doing was to:-
A few notes:-
Upvotes: 1
Reputation: 581
Based on what you described, if you have a large number of users to manage, this would be a good situation to create a third-party management tool or use Identity Management tool to Manage your AD groups and the corresponding SQL row level security.
As for the AD groups, what you have thought is what I would do also, i.e.
Create a tool (ideally Identity Management tool if you have one in place),
Upvotes: 2