创建新项目后自动设置列表项目权限
我们有一个SharePoint Team网站(WSS 3.0不是MOSS),其中包括"任务"列表,用于记录与项目相关的每个任务。这是场景。
用户数:
- 项目清单
- 主管1
- TeamMember1
- TeamMember2
- TeamMember3
我们如何设置权限设置,以便
- 每个用户(主管和团队成员)都可以看到任何任务。
- 主管可以编辑任何任务
- 团队成员只能编辑自己的任务(分配给他们或者由他们创建的任务)
如果不使用列表中每个项目的手动权限设置,我将无法使用标准WSS权限设置获得预期的结果。我在想象自动解决方案必须使用某种工作流程或者触发器来完成。
解决方案
是的,我们必须编写一个事件处理程序或者工作流,该事件处理程序或者工作流将在创建项目时运行,这些事件处理程序或者工作流将查看这些列值并以此设置项目级别权限。
我们可以通过转到列表,单击设置下拉菜单来设置权限。在"权限和管理"下,单击"此列表的权限"。单击"操作",然后选择"编辑权限"。选择要更改权限的用户/组,然后单击"操作"并选择"编辑用户权限"。
HTH!
创建一个继承自SPItemEventReceiver的类,并重写ItemAdded方法,并使用API在overrieddenden方法中设置自定义权限。
http://blogs.msdn.com/brianwilson/archive/2007/03/05/part-1-event-handlers-everything-you-need-to-know-about-microsoft-office-shareice-sharepoint-portal-server- moss-event-handlers.aspx
我们不需要任何工作流程或者事件处理程序(仍然可以将它们用于目标,但是如果我们有很多项目,它们将降低性能)
转到设置->列表设置
点击高级设置
在读取访问权限的项目级别权限中,选择所有项目
并在"编辑访问权限"的同一位置仅选择自己的
并且在权限中为列表成员提供了贡献者角色
对于超级主管,我们可以给他更高的权限,我认为设计师可以工作,或者我们可以在列表中完全控制他
我建议我们检查此解决方案:SharePointBoost的SharePoint列/视图权限(199 $)
通过此操作,我们可以对所有项目的所有人设置只读权限,从而解决了"每个用户(主管和团队成员)都可以看到任何任务"的要求!
我们还可以为主管设置编辑权限。第二麻烦解决了!
正如Ali所说,高级权限>项目级别权限可以满足最后一个要求。