簡體   English   中英

Powershell CSOM Sharepoint在線列表權限

[英]Powershell CSOM Sharepoint online list permission

我一直在編寫腳本以在線連接到SharePoint,創建文檔庫並向該權限添加一些AD帳戶。 我已經使用通過許多搜索找到的代碼片段編寫了所有代碼,但是權限部分存在問題。

將用戶和權限類型添加到角色定義綁定時,我一直收到錯誤消息。 錯誤是:

集合尚未在第0行char 0處初始化。

這是我的代碼

$collRdb = new-object Microsoft.SharePoint.Client.RoleDefinitionBindingCollection($ctx)
$collRdb.Add($role)
$collRoleAssign = $web.RoleAssignments;
$ctx.Load($principal)
$collRoleAssign.Add($principal, $collRdb)

$ctx.ExecuteQuery()

問題是當它運行$ collRoleAssign.Add($ principal,$ collRdb)部分並停止並顯示以上錯誤時。

在PC彈出窗口之前,我非常感謝您的幫助。

謝謝馬克

編輯

所有代碼均來自此頁面:

http://jeffreypaarhuis.com/2012/06/07/scripting-sharepoint-online-with-powershell-using-client-object-model/

唯一的變化是我使用的是getPrincipal的樂趣而不是get組的,但不確定是否是這樣做的。 我對Powershell非常陌生。

謝謝

我不認為您可以在$ collRoleAssign中添加一些內容,如果之前沒有加載過的話。 您收到一個錯誤,因為它具有空值。

我會這樣寫:

$collRoleAssign = $web.RoleAssignments
$ctx.Load($collRoleAssign)

評論:我想您已經設置$ principal了

$ctx.Load($principal)

注釋:這里我假設$ collRdb已設置並加載

$collRoleAssign.Add($principal, $collRdb)
$ctx.ExecuteQuery()

順便說一下,有一個“;” 在您的代碼中不應該在那里

我沒有嘗試過,但這應該會有所幫助!

西爾

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM