繁体   English   中英

用于访问用户 OneDrive 的 Microsoft Graph API 代码库解决方案

[英]Microsoft Graph API code-base solution to access a user OneDrive

我想要访问特定工作用户的 OneDrive。 我可以在 Azure AD 中注册一个应用程序并分配两种类型的权限(委托或应用程序)中的一种。
根据Microsoft 文档,如果我注册一个具有应用程序级访问权限的应用程序,它可以访问所有用户的驱动器,并且根据 Stackoverflow 中的这个问题,没有办法限制对特定驱动器的访问。 所以我忽略了这种方法。
另一方面,根据Microsoft 文档,如果我想将委托权限分配给定义的应用程序,我必须在同意页面上手动批准访问列表。 这对我来说并不理想,因为我正在寻找一种在幕后常规基础上运行的代码库解决方案。

有什么解决方案可以让我通过 python 代码访问特定的 OneDrive 吗?

一个好的建议是使用Graph API for OneDrive

例如,用例之一可以是获取当前用户的 OneDrive

可以从me singleton 访问登录用户的驱动器(使用委托身份验证时)。

如果未预配用户的 OneDrive 但用户拥有使用 OneDrive 的许可证,则在使用委派身份验证时,此请求将自动预配用户的驱动器。

Http 请求:

GET /me/drive

可帮助您从 Python 调用 Graph API 的资源:

https://github.com/microsoftgraph/python-security-rest-sample

编辑:


此外,我找到了一种可以禁用用户同意的方法。

要通过Azure 门户配置用户同意设置

  1. 以全局管理员身份登录 Azure 门户。
  2. Select Azure Active Directory >企业应用程序>同意和权限>用户同意设置
  3. 应用程序的用户同意下,select不允许用户同意
  4. Select保存以保存您的设置。

如果您想要除此之外的同意权限,您可以设计自己的 Consent

如果您只想连接 1 个用户的 Onedrive,您可以使用适用于您的方案的ROPC 流程 但出于安全考虑,微软不推荐这样做。 是的,如果启用了 MFA,则无法使用它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM