2

我有一個文檔批准SharePoint Designer 2013工作流程。工作流程對在文檔庫內創建新文件夾做出反應。新創建的文件夾將包含用戶上傳的新文件。我發現我可以使用REST API新創建的文件夾斷/設置權限:如何通過Sharepoint Designer 2013設置文檔級別權限worklfow

/_api/web/lists/getByTitle('document library')/items('id of the new folder')/breakroleinheritance(copyRoleAssignments=true,clearSubscopes=true) 

我的問題是我怎麼能上破新文件夾內上傳文件/設置權限,可能通過REST API ?我真的找不到辦法。我需要關於文件夾降低一級以設置單個文檔的權限。任何幫助將非常感激。

回答

0

通過getfilebyserverrelativeurl端點

Endpoint Uri: /_api/web/getfilebyserverrelativeurl('<file url>')/ListItemAllFields/breakroleinheritance(true) 
Method: POST 
Headers {Accept: application/json;odata=verbose, X-RequestDigest: <value>} 

其中file url是服務器相對URL到文件

JavaScript示例:

function breakRoleInheritance(webUrl,fileUrl) { 
    return $.ajax({ 
      url: webUrl + "/_api/web/GetFileByServerRelativeUrl('" + fileUrl + "')/ListItemAllFields/breakroleinheritance(copyRoleAssignments=true,clearSubscopes=true)", 
      type: "POST", 
      contentType: "application/json;odata=verbose", 
      headers: { 
       "Accept": "application/json;odata=verbose", 
       "X-RequestDigest": $("#__REQUESTDIGEST").val() 
      } 
    }); 
} 

通過ListItem資源

Endpoint Uri: /_api/web/lists/getByTitle('<list title>')/items('<id>')/breakroleinheritance(copyRoleAssignments=true,clearSubscopes=true) 
Method: POST 
Headers {Accept: application/json;odata=verbose, X-RequestDigest: <value>} 

其中list title列表或庫標題,id - 列表項關聯 與文件

1

設置項級權限的簡單過程不可用的SharePoint 2013的工作流。我能夠做的唯一方法是通過在Appstep下調用的REST api。

有由2個電話:

BreakRoleInheritance

AddRoleAssignment

This Blog

0

你提到「工作流程上創建一個文檔庫中的新文件夾的反應新創建的文件夾將包含用戶上傳的新文檔「。我知道工作流與文件夾內容類型相關聯,並且在創建文件夾時,權限繼承的中斷功能正常。

您缺少的是上傳文檔時觸發的工作流程。您需要將工作流程與文檔內容類型或所有內容類型相關聯,以便工作流程可以處理所創建的任何項目 - 文件夾或文件。

注意:默認情況下,文件夾內的文件將繼承該文件夾的權限。

相關問題