如何使用PNP Powershell连接21vSharePoint Online

发布于:2024-07-01 ⋅ 阅读:(17) ⋅ 点赞:(0)

在我们使用PnP PowerShell的时候,如果想使用自己的账户通过Connect-PnPOnline 连接Global SharePoint Online时是十分方便的,可以通过一下几种方式

  • Credentials
    Connect-PnPOnline -Url "contoso.sharepoint.com" -Credentials (Get-Credential)
  • UseWeblogin
    Connect-PnPOnline -Url "contoso.sharepoint.com" -UseWebLogin
  • Interactive
    Connect-PnPOnline -Url "contoso.sharepoint.com" -Interactive

但是当我们使用21v的SharePoint Online时,由于是独立部署在国内的版本,上述方法只有UseWebLogin的方式还可以正常使用,另外两种方式登录时,会报错,我猜测是国内外的认证链接存在差异,所以还不支持。

那如果想要正常只用另外两种方式需要怎么做呢。PnP PowerShell文档实际上给出了方案。
方案的思路是在Azure ad中注册app,然后赋予app对应的SharePoint权限,然后app代理我们账户的权限来访问SharePoint。

#注册Azure ad app
Register-PnPAzureADApp -ApplicationName "PnP PowerShell" -Tenant contoso.partner.onmschina.cn -Interactive -AzureEnvironment China -SharePointDelegatePermissions AllSites.FullControl -SharePointApplicationPermissions Sites.FullControl.All -GraphApplicationPermissions Group.ReadWrite.All -GraphDelegatePermissions Group.ReadWrite.All
#在azure中赋与app权限后  即可正常使用如下cmdlet登录使用
Connect-PnPOnline https://contoso.sharepoint.cn/sites/dev/ -Interactive -ClientId [client id] -Tenant contoso.partner.onmschina.cn -AzureEnvironment China

Authentication to GCC or National Cloud environments