如何使用 C# 更改 Sharepoint 2013 中的组权限
How to change group permissions in sharepoint 2013 using C#
我有一个组 "Visitors" 具有贡献权限,我想以编程方式将权限更改为读取。我对组添加新权限没有问题,但我不知道如何删除旧权限。
如何更改此代码以删除权限 Contribute 并添加权限 Read?
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();
以下示例演示了如何:
- 给群组添加
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();
我有一个组 "Visitors" 具有贡献权限,我想以编程方式将权限更改为读取。我对组添加新权限没有问题,但我不知道如何删除旧权限。
如何更改此代码以删除权限 Contribute 并添加权限 Read?
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();
以下示例演示了如何:
- 给群组添加
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();