Monday, June 28, 2010

Talking about security trimming in SharePoint 2010

The SPSecurityTrimmedControl control will conditionally render the contents of this control to the current user only if the current user has access to the permission defined in the PermissionString.  The content can be any HTML code or control you like.  The PermissionString attribute defines the permission required to view the contents.  These Permissions are the same base values that are used in various combinations to the define the default Permission Levels that are created with each new site collection such as Design, Contribute, Read, etc...  You can also create your own custom Permission Levels for use in configuring your SharePoint security.  But remember, the PermissionString attribute can only be supplied valid Permission values, not Permission Levels.  There are 33 base SharePoint Permissions (Permission levels and permissions) of which any of these can be used.
This is a terrific control for use with your custom master pages and even with any custom SharePoint .ASPX pages you are hosting in SharePoint.
 
Attributes:
  • PermissionString: (required)
    Defines the permission values required to render the contents.
  • PermissionContext (optional):
    Enumeration Values:
    - PermissionContext.CurrentFolder
    - PermissionContext.CurrentItem
    - PermissionContext.CurrentList
    - PermissionContext.CurrentSite
    - PermissionContext.RootSite
  • PermissionMode (optional):
    Allows you to define whether All permissions are required or Any permission is required to render contents.
    Enumeration Values:
    - PermissionMode.All
    - PermissionMode.Any
Sample code:
You can place any text or HTMl in this section. Only users having the AddAndCustomizePages permission will see this.
If you need to, you can even create your own Security Trimmer as shown here.
http://msdn2.microsoft.com/en-us/library/aa981236.aspx
Another method worth noting is the RightsSensitiveVisibilityHelper.UserHasRights method.
https://msdn2.microsoft.com/en-us/library/ms465624.aspx
References:

No comments:

Post a Comment