当前位置: 首页 > 知识库问答 >
问题:

如何使用Onedrive Graph API删除用户对项目的权限?

百里丁雨
2023-03-14

总结:

我正在尝试使用OneDrive图形应用编程接口删除用户对项目的权限,但我总是得到403禁忌。我使用的是企业帐户,它适用于其他一切;向用户添加权限、创建文件夹、上传文件等。

我在跟踪这个留档https://learn.microsoft.com/en-us/onedrive/developer/rest-api/api/permission_delete?view=odsp-graph-online.

我做错了什么?

提出的要求:

方法:DELETE

网址: https://graph.microsoft.com/v1.0/me/drive/items/01CFGODSVE5ZR7NAHG3FGLXM3G2YXDNYPF/permissions/aTowIy5mfG1lbWJlcnNoaXB8bWFyaW9AZXVyb21pYi5mcg

授权:承载eyJ0e。。。

对请求的回应:

{
    "error": {
        "code": "notAllowed",
        "message": "Operation not allowed",
        "innerError": {
            "request-id": "23fe15ec-9e3a-4c78-8a82-52be07db60d4",
            "date": "2019-04-19T11:10:20"
        }
    }
}

C#html" target="_blank">代码:

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());
    }
}

共有2个答案

侯兴为
2023-03-14

根据微软文档,您只能删除非继承的权限。只能删除未继承的共享权限。继承的发件人属性必须为空

https://learn.microsoft.com/en-us/graph/api/permission-delete?view=graph-rest-1.0

叶元凯
2023-03-14

谢谢你非常详细的问题卡洛斯!根据您提供的内容,我们确实跟踪了删除授予特定用户的直接访问权限的问题。我们禁用了有问题的代码,因此希望您的问题现在得到解决。如果不是这样的话,一定要告诉我们。

 类似资料:
  • 在 MySQL 中,可以使用 REVOKE 语句删除某个用户的某些权限(此用户不会被删除),在一定程度上可以保证系统的安全性。例如,如果数据库管理员觉得某个用户不应该拥有 DELETE 权限,那么就可以删除 DELETE 权限。 使用 REVOKE 语句删除权限的语法格式有两种形式,如下所示: 1)第一种 删除用户某些特定的权限,语法格式如下: REVOKE priv_type [(column_

  • 连接MySQL操作 mysql -h 主机地址 -u 用户名 -p 用户密码 注:-u与root可以不用加空格,其它参数也一样。 DEMO 打开电脑CMD,输入 mysql -h 127.0.0.1 -u root -p 回车,然后输入密码。就可以连接到本地的MySQL数据库。 创建MySQL用户 CREATE USER 'username'@'host' IDENTIFIED BY 'passw

  • 我已经在GitLab中创建了几个存储库。其中一个是为了测试目的,有一些提交和分支。我想删除或删除此存储库。我该怎么做呢?

  • 问题内容: 我正在尝试编写一个函数,该函数使我可以在单击按钮时删除项目,但我认为我对该函数感到困惑-我可以使用吗? HTML和app.js: 问题答案: 要删除项目,您需要将其从数组中删除,并且可以将项目传递给标记中的remove函数。然后在控制器中查找项目的索引并从数组中删除 然后在控制器中: Angular将自动检测到对数组的更改并更新 演示:http : //plnkr.co/edit/Zd

  • 问题内容: 我正在使用MongoRepository将Spring Data与MongoDB结合使用。 我想知道是否有可能使用查询注释通过过滤器进行删除。我一直在这里和谷歌,我找不到任何文档。 问题答案:

  • 问题内容: 我有一个JavaScript对象,如下所示: 如果我想在此列表中添加/删除项目,我将如何使用jQuery进行处理?客户希望该列表是可动态修改的。 问题答案: 首先,您引用的代码 不是 JSON。您的代码是JavaScript对象文字表示法。JSON是为简化解析而设计的子集。 您的代码定义的对象(包含数组()对象)(每个都具有,和)。 您不需要或不需要jQuery,而只需JavaScri