摘要:
我正在尝试使用Onedrive Graph API删除用户对某项的许可,但是我总是得到403 Forbidden
。我使用的是企业帐户,其他帐户都可以正常使用;为用户添加权限,创建文件夹,上传文件等。
我在做什么错了?
发出的请求:
方法:删除
授权:不记名eyJ0e ...
对请求的答复:
{
"error": {
"code": "notAllowed",
"message": "Operation not allowed",
"innerError": {
"request-id": "23fe15ec-9e3a-4c78-8a82-52be07db60d4",
"date": "2019-04-19T11:10:20"
}
}
}
邮递员请求和回复: https://i.ibb.co/y8wcsh8/postman.png
C#代码:
public dynamic RemoveItemPermission(string itemId, string permissionId)
{
string graphUrl = $"https://graph.microsoft.com/v1.0/me/drive/items/{itemId}/permissions/{permissionId}";
HttpWebRequest request = WebRequest.CreateHttp(graphUrl);
request.Headers.Add("Authorization", "Bearer " + AccessToken);
request.Method = "DELETE";
var response = request.GetResponse();
using (StreamReader reader = new StreamReader(response.GetResponseStream()))
{
return JsonConvert.DeserializeObject<dynamic>(reader.ReadToEnd());
}
}
答案 0 :(得分:1)
感谢非常详细的问题卡洛斯!根据您提供的信息,我们确实找到了删除授予特定用户的直接访问权限的问题。我们停用了有问题的代码,因此希望您的问题现在已解决。绝对要告诉我们不是那样。
答案 1 :(得分:0)
根据Microsoft文档,您只能删除未继承的权限。 只能删除未继承的共享权限。 InheritedFrom属性必须为空
https://docs.microsoft.com/en-us/graph/api/permission-delete?view=graph-rest-1.0&tabs=http