通过 PnP PowerShell 获取 SharePoint Online 站点权限

Getting SharePoint Online site permissions via PnP PowerShell

我通过 Register-PnPAzureADApp 注册了一个应用程序注册,它具有应用程序级别 Sites.FullControl.All 权限并且管理员也同意了。

然后我使用此应用程序注册连接:Connect-PnPOnline -ClientId xxx -Url https://tenant.sharepoint.com" -Tenant tenant.onmicrosoft.com -CertificatePath 'path\to\cert.pfx。这也成功了。

我的最终目标是使用 Sites.Selected 权限注册另一个应用程序,这样我就可以将其限制在特定站点。在此之前,如果我尝试通过 Get-PnPAzureADAppSitePermission -Site https://tenant.sharepoint.com/sites/sitename 查看网站的现有权限,它会出错:

Get-PnPAzureADAppSitePermission: {"error":{"code":"accessDenied","message":"Access denied",...

如果我也尝试通过 Grant-PnPAzureADAppSitePermission 设置权限,情况相同。

我是不是漏掉了什么?

谢谢, 拉赫什

基于 Get-PnPAzureADAppSitePermission document,所需的权限是 Microsoft Graph API:Sites.FullControl.All 而不是 SharePoint 权限。

因此您应该在 AAD 应用程序中添加此权限。