2016-10-19 46 views
0

我正在开发一个POC(SahrePoint 2010),我可以证明用户可以被授予某个日期范围的列表某些权限(例如,为选定的周贡献访问权限)。我将打破权限继承并为列表创建独特的权限。
我希望在到期日之后自动撤销权限。另外,我想使用“管理权限”列表(_layouts/user.aspx)执行此操作,以便我不必维护单独的列表。保存的SharePoint列表的自定义权限在哪里? (SharePoint 2010)

我对此有几个问题:
1.我认为任何列表的自定义权限必须存储在某个列表中。如何才能知道权限被存储在哪个列表中?

2.如果我完全知道权限被存储在哪个列表中,我是否可以将列添加到特定列表中?

我希望问题很清楚。

回答

0

权限不存储在任何列表中。相反,每个安全的对象(包括站点,列表,文件夹和项目)都具有角色分配属性,该属性指示当前哪些组/用户有权访问以及他们的权限(如果未被继承)。

请参阅SPRoleAssignment class documentation获取更多信息。

请注意,用户信息列表不是“管理权限”列表;它存储有关访问该网站的用户的配置文件信息,但不存储任何与权限相关的信息。此外,它并不是一个典型的列表,因为它不会显示在子网站的SPWeb.Lists集合中,并且其字段会自动由SharePoint的用户配置文件服务填充。尽管您可能会添加更多列,但最好使用单独的列表来存储和跟踪您的权限信息,而不是污染网站集用户信息列表。

要根据失效日期进行权限更改,您需要实施定期运行的基于时间的解决方案,以查看是否需要进行任何更改,如自定义计时器作业,按计划运行的自定义网站工作流程或Windows计划任务。

+0

我有2个来自其他来源的类似反馈。谢谢! – Amar