Well, one of my clients had this exact problem. Except that the answer "Sorry, SharePoint doesn't do that." didn't solve the underlying business problem. Here is a scenario and the provided "Out-Of-The-Box Solution".
- Users are given access to a site through a single group "SharePoint Users".
- This "SharePoint Users" group is used throughout the rest of the site collection so simply modifying it is not an option.
- John Doe is a member of this "SharePoint Users" group but because of an "Ethical Wall" (Law Firm jargon for blocking one lawyer from seeing another lawyers documents) John Doe cannot have access to this site.
We chose to do the latter in an automated fashion. What we ended up with is as follows.
- A custom SQL table that holds the list of people that should be denied access to a particular site.
- A Timer Job that constantly ensures that those people are actually denied.
- A configuration panel in Central Administration to maintain which web applications are using the functionality and to hold configuration options.
- A data input panel built into each SharePoint site to allow administrators to deny users and to view who is currently denied.
This solution has the following pluses
- Will loop through both SharePoint Groups and AD Groups no matter how complicated the nested group structure is
- Makes a manual process somewhat automated to ensure less user error
- Although it creates an administrative problem for adding new users (users will not have acecss when they should) it does protect against the more dangerous scenario (a user does have access when they shouldn't)
No comments:
Post a Comment