我有一份文档批准SharePoint Designer 2013工作流程。工作流对在文档库中创建新文件夹做出反应。新创建的文件夹将包含用户上传的新文档。我发现我可以使用REST api打破/设置新创建的文件夹的权限:
/_api/web/lists/getByTitle('document library')/items('id of the new folder')/breakroleinheritance(copyRoleAssignments=true,clearSubscopes=true)
我的问题是如何在新文件夹中上传的文件中断/设置权限,可能是通过其余的api?我真的找不到办法做到这一点。我需要关闭文件夹一级,以设置单个文档的权限。任何帮助都会非常感激。
答案 0 :(得分: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
- 列出关联的项目 与文件