SharePoint加载项具有"完全控制" on" Web"级别但无法访问子网站列表

时间:2017-05-16 14:33:07

标签: sharepoint permissions sharepoint-addin

我有一个SharePoint加载项,它在AppManifest.xml中定义了以下应用程序权限。

<AppPermissionRequests AllowAppOnlyPolicy="false" >
      <AppPermissionRequest Scope="http://sharepoint/taxonomy" Right="Write" />
      <AppPermissionRequest Scope="http://sharepoint/content/sitecollection/web" Right="FullControl" />
</AppPermissionRequests>

避免用户需要&#34;网站集管理员&#34;权限,&#34; AllowAppOnlyPolicy&#34;设置为false。

该应用程序的目的是创建一个子网站,在该网站下存储所有需要的信息。我可以毫无问题地创建子网站,但从我尝试访问子网站中的列表的那一刻起,我就得到了&#34;访问被拒绝。您无权执行此操作或访问此资源。&#34; 例外。 我发现这很令人惊讶,因为我预计如果你有&#34;完全控制&#34;在网站上,您还可以访问子网站。

有没有办法访问子网站列表而无需添加网站集读取权限?

2 个答案:

答案 0 :(得分:1)

我认为您误解了 AllowAppOnlyPolicy 的概念。 AppOnlyPolicy实际上允许您覆盖用户权限,并让SharePoint仅检查授予AddIn的权限(请参阅here),实际上您想要的是什么。您需要更改为:

<AppPermissionRequests AllowAppOnlyPolicy="true" >

为什么在第一步中您可以创建子网站,对我来说只有一个可能的解释:您的服务帐户或用户帐户具有在该网站上执行此操作所需的权限。 (https://sharepoint.stackexchange.com/questions/21193/creating-sub-sites)。

答案 1 :(得分:0)

从App Manifest中获得对网站集和租户的完全控制权限。那会有所帮助。