2015-02-20 1 views
1

У меня есть группа «Посетители» с разрешением Contribute, и я хочу изменить разрешение на чтение, программно. У меня нет проблем с добавлением нового разрешения в группу, но я не знаю, как удалить прежнее разрешение.Как изменить групповые разрешения в sharepoint 2013 с помощью C#

Как изменить этот код для удаления разрешения Внести и добавить разрешение Читать?

SPWeb root = site.RootWeb; 
SPGroup group = root.SiteGroups["Visitors"]; 
SPRoleDefinition roleDefinition = root.RoleDefinitions.GetByType(SPRoleType.Reader); 
SPRoleAssignment roleAssignment = new SPRoleAssignment(group); 
roleAssignment.RoleDefinitionBindings.Add(roleDefinition); 
root.RoleAssignments.Add(roleAssignment); 
root.Update(); 

ответ

1

В следующем примере показано, как:

  • добавить Reader уровень разрешений для группы
  • удалить Contribute уровень разрешений из группы

Пример:

SPWeb root = site.RootWeb; 
SPGroup group = root.SiteGroups[groupName]; 

SPRoleDefinition contributeRoleDef = root.RoleDefinitions.GetByType(SPRoleType.Contributor); 
SPRoleDefinition readerRoleDef = root.RoleDefinitions.GetByType(SPRoleType.Reader); 
SPRoleAssignment groupRoleAssignments = root.RoleAssignments.GetAssignmentByPrincipal(group); 
groupRoleAssignments.RoleDefinitionBindings.Remove(contributeRoleDef); 
groupRoleAssignments.RoleDefinitionBindings.Add(readerRoleDef); 
groupRoleAssignments.Update(); 
Смежные вопросы