通过网络浏览器访问Google Drive API应用程序数据的凭据(JavaScript)

奥列格·库茨(Oleg Kuts)

我正在尝试从Google控制台获取凭据,以通过Web browser(Javascript)选项访问我的应用程序驱动器数据(以便稍后使用Picker API)。但是,当我选择选项应用程序数据(访问属于您自己的应用程序的数据)时,我收到了以下消息:

无法从Web浏览器安全地访问应用程序数据。请考虑选择其他平台。

谁能解释,为什么它不安全,以及如何使用Web浏览器访问我的应用程序数据,也许应该选择其他凭据?

谢谢。

Tiago Peres法国

您可以通过三种可能的方式访问Google云端硬盘数据:

  • 通过OAuth浏览器:向用户打开一个弹出窗口,他登录到他/她的Google帐户并获得访问令牌。您在向驱动器api发出的每个请求中都将此令牌作为参数密钥传递。
  • 通过api密钥浏览器:无需登录,Google只需使用此密钥即可知道哪个应用程序正在使用其服务。这是最简单的选项,在没有服务器端应用程序且仅需要访问公共数据时使用。您无法通过此方法访问任何私人文件。
  • 服务器端:您使用私钥进行身份验证。对驱动器api的所有请求都必须仅在后端进行,将您的密钥共享到javascript代码中是不安全的。

我想您正在尝试第二种选择。我遇到了同样的问题,当您逐步进行操作时,它说对于Drive来说是不安全的,我不明白,因为您将共享一个公共密钥,并且只能访问可公开访问的文件。

要生成此密钥,您可以转到https://console.developers.google.com/apis/credentials,单击“创建Creadential”,然后选择“ API密钥”。

请记住,api密钥对您需要特殊权限的任何操作都是无用的,唯一可以做的就是读取公共文件/文件夹。

现在,如果不是第二个选项,则需要在浏览器中访问应用程序的私有数据。出于确切原因说不可能,不安全,这是不可能的。该密钥将在您提出的每个请求中可见,对于某人来说,窃取您的密钥并为您的云端硬盘帐户做他想做的任何事情都非常容易。

但是,如果您需要在浏览器中访问私有内容,我想您已经拥有一个登录系统,如果没有,则没有理由在Google云端硬盘中将其私有(无论如何,任何人都可以访问)。如果您具有登录系统,则必须具有服务器端应用程序。在这种情况下,正确的做法是将对Drive api的所有调用移到后端,并使用私钥(上一个列表中的第三个选项)进行身份验证。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

通过网络浏览器访问Java云端硬盘API应用程序数据的凭据(JavaScript)

来自分类Dev

如何使用“网络浏览器应用程序”?

来自分类Dev

目标C:如何从网络浏览器获取可可应用的访问令牌?

来自分类Dev

使用刷新令牌访问Google Drive API,没有浏览器,出现401错误

来自分类Dev

使用刷新令牌访问Google Drive API,没有浏览器,出现401错误

来自分类Dev

在网络浏览器中加载Javascript Google Maps API,但在Android浏览器中未加载

来自分类Dev

通过网络应用访问DropBox或Google Drive API

来自分类Dev

Google Chrome /网络浏览器扩展程序:符合要求

来自分类Dev

在新的网络浏览器中使用Google的反向工程建议API是否违法?

来自分类Dev

有没有办法确认是否通过网络浏览器将数据传输到Google Chrome中的服务器

来自分类Dev

Google Drive API浏览器上传PDF为空

来自分类Dev

网络浏览器获取CSS和JavaScript文件

来自分类Dev

移动网络浏览器中的javascript

来自分类Dev

使用JavaScript最小化网络浏览器

来自分类Dev

Javascript-列出网络浏览器下载的文件

来自分类Dev

是否可以从我的应用程序启动网络浏览器,并返回单击的URL?

来自分类Dev

是否可以从我的应用程序启动网络浏览器,并返回单击的URL?

来自分类Dev

如何使用网络浏览器的后退按钮?在Java Web应用程序中

来自分类Dev

如何在Android的网络浏览器(Chrome)中自动打开任何应用程序?

来自分类Dev

Android 应用程序网络浏览器的名称是什么

来自分类Dev

从 Google Drive 向应用程序显示 SQLite 数据

来自分类Dev

无法通过网络浏览器访问rancid

来自分类Dev

初始移动设备应用程序启动时未发送 Cookie(适用于网络浏览器)

来自分类Dev

Javascript:如何通过网络应用程序使用Google API访问“特定用户”数据?

来自分类Dev

如何从网络浏览器(不仅是活动)启动应用

来自分类Dev

在nodejs与网络浏览器中运行的javascript,关于变量范围

来自分类Dev

在没有网络浏览器的情况下用 JavaScript 创建文件

来自分类Dev

需要通过IIS应用程序访问Google Drive V3-无需使用MVC

来自分类Dev

当我们使用网络浏览器搜索应用程序时,是否可以更改显示在URL框中的Android应用程序的Web URL

Related 相关文章

  1. 1

    通过网络浏览器访问Java云端硬盘API应用程序数据的凭据(JavaScript)

  2. 2

    如何使用“网络浏览器应用程序”?

  3. 3

    目标C:如何从网络浏览器获取可可应用的访问令牌?

  4. 4

    使用刷新令牌访问Google Drive API,没有浏览器,出现401错误

  5. 5

    使用刷新令牌访问Google Drive API,没有浏览器,出现401错误

  6. 6

    在网络浏览器中加载Javascript Google Maps API,但在Android浏览器中未加载

  7. 7

    通过网络应用访问DropBox或Google Drive API

  8. 8

    Google Chrome /网络浏览器扩展程序:符合要求

  9. 9

    在新的网络浏览器中使用Google的反向工程建议API是否违法?

  10. 10

    有没有办法确认是否通过网络浏览器将数据传输到Google Chrome中的服务器

  11. 11

    Google Drive API浏览器上传PDF为空

  12. 12

    网络浏览器获取CSS和JavaScript文件

  13. 13

    移动网络浏览器中的javascript

  14. 14

    使用JavaScript最小化网络浏览器

  15. 15

    Javascript-列出网络浏览器下载的文件

  16. 16

    是否可以从我的应用程序启动网络浏览器,并返回单击的URL?

  17. 17

    是否可以从我的应用程序启动网络浏览器,并返回单击的URL?

  18. 18

    如何使用网络浏览器的后退按钮?在Java Web应用程序中

  19. 19

    如何在Android的网络浏览器(Chrome)中自动打开任何应用程序?

  20. 20

    Android 应用程序网络浏览器的名称是什么

  21. 21

    从 Google Drive 向应用程序显示 SQLite 数据

  22. 22

    无法通过网络浏览器访问rancid

  23. 23

    初始移动设备应用程序启动时未发送 Cookie(适用于网络浏览器)

  24. 24

    Javascript:如何通过网络应用程序使用Google API访问“特定用户”数据?

  25. 25

    如何从网络浏览器(不仅是活动)启动应用

  26. 26

    在nodejs与网络浏览器中运行的javascript,关于变量范围

  27. 27

    在没有网络浏览器的情况下用 JavaScript 创建文件

  28. 28

    需要通过IIS应用程序访问Google Drive V3-无需使用MVC

  29. 29

    当我们使用网络浏览器搜索应用程序时,是否可以更改显示在URL框中的Android应用程序的Web URL

热门标签

归档