sharepoint 2010 重置List Item访问权限
2012-07-31 17:10
363 查看
此处使用的是eventhandler 以下只贴出代码部分,仅供参考
public override void ItemAdded(SPItemEventProperties properties)
{
base.ItemAdded(properties);
SPSecurity.RunWithElevatedPrivileges(delegate()
{
SPSite Site = new SPSite("http://litsoft01"); //e.g., "http://myserver/mysite"
SPWeb Web = Site.OpenWeb();
SPList List = Web.GetListFromUrl("/DocumentLab/Forms/AllItems.aspx");
//取消继承
if (!ListItem.HasUniqueRoleAssignments)
ListItem.BreakRoleInheritance(true);
//清除权限
foreach (SPRoleAssignment roleAssignment in ListItem.RoleAssignments)
{
roleAssignment.RoleDefinitionBindings.RemoveAll();
roleAssignment.Update();
}
SPRoleDefinition role = Web.RoleDefinitions.GetByType(SPRoleType.Reader);
SPGroup spGroup = Web.SiteGroups["UserGroup"];
SPRoleAssignment assignment = new SPRoleAssignment(spGroup);
assignment.RoleDefinitionBindings.Add(role);
ListItem.RoleAssignments.Add(assignment);
});
}
public override void ItemAdded(SPItemEventProperties properties)
{
base.ItemAdded(properties);
SPSecurity.RunWithElevatedPrivileges(delegate()
{
SPSite Site = new SPSite("http://litsoft01"); //e.g., "http://myserver/mysite"
SPWeb Web = Site.OpenWeb();
SPList List = Web.GetListFromUrl("/DocumentLab/Forms/AllItems.aspx");
//取消继承
if (!ListItem.HasUniqueRoleAssignments)
ListItem.BreakRoleInheritance(true);
//清除权限
foreach (SPRoleAssignment roleAssignment in ListItem.RoleAssignments)
{
roleAssignment.RoleDefinitionBindings.RemoveAll();
roleAssignment.Update();
}
SPRoleDefinition role = Web.RoleDefinitions.GetByType(SPRoleType.Reader);
SPGroup spGroup = Web.SiteGroups["UserGroup"];
SPRoleAssignment assignment = new SPRoleAssignment(spGroup);
assignment.RoleDefinitionBindings.Add(role);
ListItem.RoleAssignments.Add(assignment);
});
}
相关文章推荐
- Sharepoint 2010:基于当前用户判断访问列表项目的权限 --Determine access to SPListItem based on a Current User
- [SharePoint 2010] Copy list item with version history and attachment
- sharepoint 2010 所有list新建按钮消失和管理员权限丢失的解决方法
- SharePoint【用户访问控制】-- 02. SharePoint 2010 用户组、权限级别、权限
- Adding Custom Actions to the List Item Menu in SharePoint 2010 Using SharePoint Designer 2010[Sharepoint中添加自定义菜单]
- [SharePoint 2010] 使用Designer 2010修改List item的链接地址
- SharePoint 2010 如何取得ListItem的Attachements
- SharePoint【用户访问控制】-- 03. SharePoint 2010 列表项级权限、草稿项安全设置
- SharePoint 2010/2013 通过List Item的内容菜单(BCD)来拷贝Item
- 批量删除SharePoint 2010的List中的item
- 在Share Point 2010 中针对相应用户赋某一个list中的item相关权限
- sharepoint listItem设置权限
- 使用Powershll 取出List中Item的权限
- SharePoint 2010中重置windows 活动目录(AD)域用户密码的WebPart(免费下载)
- 如何开启匿名访问SharePoint 2010里的Client Object Model
- sharepoint 2007 approval 工作流邮件点击edit this task访问没有权限
- SharePoint 2010 页面引用 Reporting Services 展现 List 报表
- SharePoint 2010 Reporting Services 报表服务器无法解密用于访问报表服务器数据库中的敏感数据或加密数据的对称密钥 解决方法
- 打SharePoint 2010 SP1后访问用户配置文件同步服务应用程序出错的解决办法
- SharePoint 2010 技巧系列: 控制Ribbon菜单权限(SiteActions的例子)