在Share Point 2010 中针对相应用户赋某一个list中的item相关权限
2013-01-21 17:20
381 查看
看标题看起来挺绕口,实际上是这样的,在项目中往往会有这样的情况,针对某些用户,他对于list中的其中一个item或者多个item只有Read权限或者其他,这样就不能仅仅是对list赋权限了,就需要利用item来赋权限。
这时,从页面中就可以看到,选中list中的一个item,点击ribbon中的 item permissions按钮。
就会发现,对于某个用户赋予了相应权限。
SPSecurity.RunWithElevatedPrivileges(delegate() { using (SPSite oWebsite = new SPSite(SPContext.Current.Web.Url)) { using (SPWeb web = oWebsite.OpenWeb()) { web.AllowUnsafeUpdates = true; item.BreakRoleInheritance(true);//打断继承 SPRoleAssignmentCollection roleAssignmentCollection = item.RoleAssignments; for (int i = roleAssignmentCollection.Count - 1; i >= 0; i--) { roleAssignmentCollection.Remove(i); } SPRoleAssignment roleAssignment = new SPRoleAssignment((SPPrincipal)spUser);//假定可以拿到一个spuser roleAssignment.RoleDefinitionBindings.Add(web.RoleDefinitions["Read"]);//赋read权限 item.RoleAssignments.Add(roleAssignment); item.Update(); web.AllowUnsafeUpdates = false; } } });
这时,从页面中就可以看到,选中list中的一个item,点击ribbon中的 item permissions按钮。
就会发现,对于某个用户赋予了相应权限。
相关文章推荐
- 关于在Share point 2010 中保存SPFieldLookupValue类型到一个List中的问题
- sharepoint 2010 重置List Item访问权限
- 针对不同数据库,获取当前用户所有有权限查看的表,以及表的创建时间、更新时间、注释等信息,表中字段的相关信息(包含分页实现)
- Sharepoint 2010:基于当前用户判断访问列表项目的权限 --Determine access to SPListItem based on a Current User
- 关于在Share point 2010 中保存SPFieldLookupValue类型到一个List中的问题
- 把一个用户的相关权限赋予另外一个用户
- DB2 将schema下所有表的权限赋予一个用户
- 无法创建K/3中间层组件,请确定中间层组件配置正确或当前用户拥有相关权限后重试
- Access 2010 打开旧版本带用户权限的数据库的解决方案
- 与用户、权限、角色相关的视图
- lync 2010启用用户访问权限不够!
- Android_List局部刷新某一个item
- MYSQL用户以及权限相关
- 项目经验:oracle中一个用户赋予另外一个用户对表增删改查的权限以及同步更新触发器的创建
- 创建一个对另外一个用户表只有select权限的用户-实用
- 一个简单的实现不同权限的用户登录后看到不同的菜单设计的数据库表清单
- Struts开发一个权限验证拦截器来判断用户是否登录
- 创建一个只有select 权限的用户
- 创建一个只有select 权限的用户
- CentOS让一个用户没有登录权限