1
1
您必须遍历这些项,并检查每个项的权限项,如果相关,则更新它们。你拥有的东西越多,花费的时间就越长。所以不是一个很好的解决方案。 另一种解决方案是使用仅是组x成员的用户的凭据。 sharepoint会自动考虑权限。因此,如果使用该用户连接到列表,则应仅获取该用户具有权限的项目。 使用networkcredentials类执行此操作。 然后使用caml查询更新项目。 -W |
2
1
旧的帖子,但仍然有很多观点,我找不到更相关的地方说这个。现在有一些快捷方式,你 可以 使用caml只返回具有唯一权限的项,而不使用hasuniqueroleagnitions属性。 共享/设置列表项的唯一权限会将隐藏的“field”节点(“sharedwithdetails”&“sharedwithusers”)添加到其schemaxml属性中,您可以使用caml进行筛选:
顺便说一句,设置一个项目的唯一权限似乎也会给列表本身添加一个标志,这大概就是/_layouts/15/uniqperm.aspx页面如何如此快速地在biiig站点上返回答案(以及含糊不清的“可能包含具有唯一权限的项目的列表”message)。您可以使用这个额外的xml来标识(可能)包含具有唯一权限的项的列表,即 极大地 比枚举列表中的每个项以查找 如果 他们中的任何人都有独特的权限。如果您的站点包含许多列表或任何大型列表,这一点尤其有价值。 此pnp powershell代码返回(可能)具有唯一权限的项的所有列表:
一旦你有了列表,你就可以使用get pnplistitem和上面的caml查询来高效地返回具有唯一权限的项目 没有 必须枚举/加载列表中的每个项:
|
3
0
我不认为您可以通过构造一个caml查询并使用spquery对象以这种方式获取项目来实现这一点。 我的想法是获取所有项,并循环通过它们来测试hasuniqueroleagnitions和roleasignments属性。 |
Ali Haddani · 413有效载荷比500系统大。服务模型。当我在WCF sharepoint应用程序中增加maxReceivedMessage时,ServiceActivationException 2 年前 |
Jakaja1 · SharePoint-如何阻止图片下载 2 年前 |