SharePoint 2010 Object model 添加移除权限

To Add and Remove a Role Def: 

To Add
******
SPRoleDefinition newRole = SharepointHelper.FindRoleDefinition(web.RoleDefinitions, "AdminPermissions");
if (newRole == null)
 {
  newRole = new SPRoleDefinition();
  newRole.Name = "AdminPermissions";
  newRole.Description = "Can edit and approve pages, list items, and documents.";
  newRole.BasePermissions = SPBasePermissions.CancelCheckout | SPBasePermissions.AddListItems ;
  web.RoleDefinitions.Add(newRole);
}

To Remove
**********
SPRoleDefinition roleDef = SharepointHelper.FindRoleDefinition(web.RoleDefinitions, "AdminPermissions");

if(roleDef!=null)
{
 web.RoleDefinitions.Remove(roleDef);
}

 

Utility Method

 

public SPRoleDefinition FindRoleDefinition(SPRoleDefinitionCollection roledefColls, string roleName)
    {
      foreach (SPRoleDefinition definition in roledefColls)
      {
        if (definition.Name.ToUpper(CultureInfo.InvariantCulture) == roleName.ToUpper(CultureInfo.InvariantCulture))
          return definition;
      }
      return null;
    }

Using SPBasePermissions enumerations you can add your base permissions which creating a Role Def.

posted @ 2012-08-13 11:12  山之子  阅读(207)  评论(0)    收藏  举报