React Native 列表共享文件 Google Drive with

React Native Listing Shared Files Google Drive with

我不确定这是否可行 -- 但我希望我的 RN 应用程序的用户能够在他们的 Google Drive 帐户中打开专门与他们共享的文件,但我运行 权限问题。

Google Drive 有一个限制较少的 auth/drive.file 范围,使应用程序可以访问应用程序创建或 打开 的文件,这看起来像要走的路。

但是,用户可以查看、下载或更新 Google 驱动器中的共享文件的唯一方法是我使用最严格的 /auth/drive 范围。

https://developers.google.com/drive/api/v3/about-auth

您是否知道 RN 中有一种方法可以让用户从 Google 驱动器打开共享文件,我认为这种方法会将文件置于 auth/drive.file 范围内?

欢迎所有建议。

谢谢。

驱动器范围

在您的情况下,auth.drive.file 范围不会完全按照您描述的那样适用于工作流程,您只需要确保用户有机会明确授予对新文件的权限。参见:Handle "Open with"

这不是 React Native 或任何其他框架或库所特有的,这完全是 Google API 的领域。

应用如何访问您的文件

  • 用户A使用应用程序创建文件,用户A是所有者,应用程序可以通过用户A的帐户访问文件。
  • 用户 A 与用户 B 共享文件。除非用户 B 特别允许应用程序通过他们的帐户访问该文件,否则它不会有访问权限。

这里的关键概念是应用程序通过用户帐户访问文件。就像允许该应用程序就好像他们就是用户一样。这与应用程序是否可以在另一个帐户中访问它无关,而是关于应用程序的行为,就好像他们是拥有某些文件的用户一样。

这可以看作是驱动器范围的限制。尽管我不确定这些方面的新范围究竟是如何实施的。似乎范围:

“如果应用可以访问该文件,那么应用 运行 来自哪个帐户并不重要,它应该可以访问它”

似乎它可能会导致安全漏洞。

一个新的驱动范围

有一项针对云端硬盘范围的有效功能请求,将允许与应用共享文件夹。因此,如果有人将文件添加到共享文件夹,该应用程序将有权访问。

Drive Restrict access to folder when authorizing applications

我不确定你是如何实现你的应用程序的,所以不确定这是否对你有帮助,但如果你想看到,请务必去 'star' 这个问题让Google知道你想要它。

或者,如果您对可能有用的新范围有想法,请使用以下任一模板提交功能请求:

参考