【问题标题】:Google Drive users do not have permissions to read fileGoogle Drive 用户无权读取文件
【发布时间】:2017-08-03 09:05:18
【问题描述】:

我想创建一个应用程序,用户可以在其中访问我在 Google Drive 中的所有数据。

我已经实现了一个 2-legged OAuth 来使用我的服务器应用程序从 Google Drive 获取所有数据,而无需用户授权。服务器可以通过 2-legged OAuth 获取所有数据。

问题出现时,例如使用驱动器文档的链接,连接到我的应用程序的用户由于没有权限而无法访问它。 我想知道是否强制授予他们访问文件的权限,或者谷歌提供的另一项服务可以为所有用户提供公共存储,而无需获得每个用户的授权或权限。

我想知道是否可以使用 Drive 界面向用户显示文档。

【问题讨论】:

    标签: node.js google-api google-drive-api google-oauth


    【解决方案1】:

    实际上有三种方法可以访问 Google 数据。

    1. 用于访问公共数据的 API 密钥。
    2. Oauth2 用于访问私有数据。提示用户授予访问数据的权限并授予刷新令牌。
    3. 服务帐户。服务帐户是预先授权的。没有提示请求用户访问数据的权限。

    我不太清楚你所说的 2-legged Oauth 是什么意思。听起来您在谈论服务。您可以通过与服务帐户共享一个或多个文件夹来授予服务帐户访问您的个人云端硬盘帐户的权限。 注意:我不确定你是否可以共享根文件夹。

    当您希望允许您的某个用户访问文件时,您应该让服务帐户将用户添加为文件的阅读者,然后他们将有权访问。这可以通过inserting permissions 完成。

    注意。我不是 Node.js 开发人员,我不确定 Node.Js 是否支持服务帐户,您可能必须切换到我不太了解的服务器端语言。

    我确实有一篇博文更详细地解释了service accounts

    【讨论】:

    • 感谢您的回复,我现在使用的是服务账户方式。
    • 很好,那么您只需要让服务帐户下载文件并将它们发送给您的用户。或者让服务帐户更新授予用户访问权限的文件的权限。
    • 是的,我现在可以将文件发送给用户,但我想做的是,用户可以修改和编辑文件到驱动器的界面,我不知道是不是无需手动为每个用户添加权限即可。
    • 如果您希望他们能够在他们需要权限的驱动器上编辑它,或者您必须将文件设置为公开,则可以这样做。您必须使用服务帐户为每个用户添加权限。它有权添加权限。
    • 好的!感谢您的支持!我将研究如何使用服务帐户向我的用户授予权限。
    猜你喜欢
    • 2013-07-27
    • 1970-01-01
    • 1970-01-01
    • 2023-04-05
    • 1970-01-01
    • 2020-09-17
    • 1970-01-01
    • 1970-01-01
    • 2019-12-27
    相关资源
    最近更新 更多