gpt4 book ai didi

sharepoint - 根据他们拥有的权限查询列表项

转载 作者:行者123 更新时间:2023-12-05 08:44:46 26 4
gpt4 key购买 nike

不知道如何用谷歌搜索,但有没有办法查询所有项目

  • 权限是listitem独有的
  • 这些独特的权限包含对特定组 X 的分配。

最佳答案

旧帖子,但仍然有很多观点,我找不到更相关的地方来说明这一点。现在有一些快捷方式可用,您可以使用 CAML 仅返回具有唯一权限的项目,而不是使用 HasUniqueRoleAssignments 属性。

在列表项上共享/设置唯一权限会将隐藏的“字段”节点(“SharedWithDetails”和“SharedWithUsers”)添加到它的 SchemaXml 属性,您可以使用 CAML 对其进行过滤:

<View><Query><Where><IsNotNull><FieldRef Name='SharedWithDetails' /></IsNotNull></Where></Query></View>

顺便说一句,在项目上设置独特的权限似乎也为列表本身添加了一个标志,这大概是/_layouts/15/uniqperm.aspx 页面如何设法如此快速地返回 biiiig 网站上的答案(以及神秘的模糊的“可能包含具有独特权限的项目的列表”消息)。您使用这个额外的 XML 来识别(可能)包含具有唯一权限的项目的列表,这比枚举列表中的每个项目以找出是否任何他们有独特的权限。如果您的站点包含许多列表或任何大型列表,这将特别有值(value)。

此 PnP PowerShell 代码返回所有列表(可能)包含具有独特权限的项目:

Get-PnPList -Includes SchemaXml | ? {$_.SchemaXML -match "SharedWithDetails"}

一旦你有了列表,你就可以使用 Get-PnPListItem 和上面的 CAML 查询来有效地只返回具有独特权限的项目,不必枚举/加载列表中的每个项目:

Get-PnPListItem -List [YourList] -Query "<View><Query><Where><IsNotNull><FieldRef Name='SharedWithDetails' /></IsNotNull></Where></Query></View>"

关于sharepoint - 根据他们拥有的权限查询列表项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2454463/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com