【发布时间】:2020-08-10 14:58:40
【问题描述】:
我有以下 Powershell CSOM 代码来将用户添加到共享点在线站点。我不是想将他添加到任何组,而是明确授予他访问该站点的权限。
但是,我收到错误:使用“0”参数调用“ExecuteQuery”的异常:“找不到 ID 为 14 的主体。”谁能告诉我我做错了什么?
Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server
Extensions\16\ISAPI\Microsoft.SharePoint.Client.dll"
Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server
Extensions\16\ISAPI\Microsoft.SharePoint.Client.Runtime.dll"
$SiteURL = "https://robinroyrbn.sharepoint.com/sites/AnotherTeamSite"
$UserAccount="i:0#.f|membership|mark@robinroyrbn.onmicrosoft.com"
$PermissionToAdd="Read"
$Cred = Get-Credential
$Cred = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($Cred.UserName,$Cred.Password)
Try {
$Ctx = New-Object Microsoft.SharePoint.Client.ClientContext($SiteURL)
$Ctx.Credentials = $Cred
$User = $Ctx.Web.SiteUsers.GetByLoginName($UserAccount)
$RoleDefToAdd = $Ctx.web.RoleDefinitions.GetByName($PermissionToAdd)
$RoleAssignment = $Ctx.web.RoleAssignments.GetByPrincipal($User)
$RoleAssignment.RoleDefinitionBindings.Add($RoleDefToAdd)
$RoleAssignment.Update()
$Ctx.ExecuteQuery()
write-host -f Green "User updated Successfully!"
}
Catch {
write-host -f Red "Error adding User !" $_.Exception.Message
}
【问题讨论】:
标签: powershell sharepoint-online csom