sharepoint 是不是具有逐项权限,就像它具有逐项权限一样
Posted
技术标签:
【中文标题】sharepoint 是不是具有逐项权限,就像它具有逐项权限一样【英文标题】:does sharepoint have itemwise permissions , just like it has list wise permissionssharepoint 是否具有逐项权限,就像它具有逐项权限一样 【发布时间】:2011-01-12 03:26:22 【问题描述】:(关于 Moss 2007)
我创建了一个共享点列表,其中一列称为用户分配 - 这是一个查找列类型 - 人员和组。
我从活动目录中选择用户进入列表的这个字段。
因此,此列表中的不同项目分配了不同的用户
我已创建此列表的权限,以便对活动目录中的用户进行读写。
这样当特定用户使用他的凭据登录到共享点网站时。他对列表具有读写权限。
现在 sharepoint 中有什么方法可以让用户在登录网站时看不到整个列表。他只看到用户分配字段是他的列表中的项目。
【问题讨论】:
【参考方案1】:如果权限确实设置正确,您只需转到列表设置、高级设置、项目级别权限,然后在“读取权限:指定用户可以读取的项目”中定义自己的权限。
如果用户不是项目的创建者,您需要转到列表设置、视图(在最底部),修改所有项目视图(或默认设置),转到过滤器部分并添加一个过滤器,例如:“仅在满足以下条件时显示项目”,“在列时显示项目”Assigned To 等于 [me]
【讨论】:
添加过滤器很好..但是用户总是可以行为不端并删除/修改不属于他的项目。我们能做些什么呢? 在上面的两个示例中,未经许可的用户无法看到该项目。【参考方案2】:我实施此类解决方案已有一段时间了。有可能,但是
-
需要做很多工作
如果长期使用和/或数据量很大,这会影响性能
如果这些都不是你的问题,那么你可以:
创建代码对项目执行BreakRoleInheritance()
,然后在“用户分配”列中为用户添加ViewListitems
权限。例如,您可以在此处找到示例代码:http://social.msdn.microsoft.com/Forums/en/sharepointecm/thread/581e456c-db3c-44f1-b958-a824d95a2536(或在 Google 中搜索“SPPrincipal”和“SPRoleAssignment”以获取更多信息)
在添加或更新项目时调用此代码(您必须等待“-ed”事件,因为在这些事件的同步版本中,您还不能更改权限,例如在“ItemAdding " 还没有创建项目)。您可以通过向列表中添加事件处理程序来实现此目的。
【讨论】:
以上是关于sharepoint 是不是具有逐项权限,就像它具有逐项权限一样的主要内容,如果未能解决你的问题,请参考以下文章