javascript - Oauth2 - 如果黑客知道访问 token ,他可以伪造谷歌应用程序引擎请求吗

标签 javascript google-app-engine oauth-2.0 google-cloud-platform

我正在 Google App Engine 上开发应用程序,并正在研究 OAuth2.0 详细信息。我的问题如下:如果黑客拦截 OAuth2.0 访问 token ,他是否可以伪造来自 Google Cloud Console 中定义的“授权 JavaScript 来源”之一的请求?

如果不清楚,请提供更多详细信息:在 Google Cloud 控制台中,您可以定义一个 OAuth2.0 客户端 ID,您可以使用 Google 的 JS api 通过 JavaScript 发送该 ID(完整流程 here )。该过程的一部分是您获取访问 token ,然后使用该 token 对后续请求进行身份验证。作为额外的安全层,所有请求都需要来自您在云控制台中定义的特定来源(参见图片)。因此,仅接受来自该域的请求。

editing authorized js origin

但我想知道,如果黑客确实知道从我的一个用户那里获取访​​问 token ,则该请求仍然需要来自授权来源。

那个黑客可以去https://myapp.appspot.com吗? ,使用 chrome Javascript Console 等调整 javascript,并使用用户的访问 token 进行恶意调用,就好像他是窃取 token 的用户一样?

据我所知,请求来自授权的 JS 源,并具有有效的 OAuth2.0 访问 token 。我错过了什么?

最佳答案

对于 appengine 中的 OAuth2.0,用户只是同意应用程序仅代表他使用服务。但真正的通信是在 AppEngine 上运行的 JavaScript 应用程序和服务提供商之间进行的。用户不参与调用,而是应用程序代表用户调用 API。

请通过以下链接了解整个概念

https://developers.google.com/api-client-library/python/guide/aaa_oauth

关于javascript - Oauth2 - 如果黑客知道访问 token ,他可以伪造谷歌应用程序引擎请求吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27279564/

相关文章:

oauth - Devise + Omniauth 无初始化文件

javascript - Highcharts 极坐标图 - 为每个轴指定数据系列和工具提示

javascript - "this"原型(prototype)内未定义

google-app-engine - 缓存谷歌云端点?

java - 清除内存缓存 AppEngine 不起作用

python - 如何在 App Engine 中从 JSON 中排除 db.Blob

oauth-2.0 - 实现永不过期的 OAuth 刷新 token

Laravel 6 护照返回 400 错误凭证的错误请求

javascript - 如何在javascript对象中查找动态键的值

javascript - Node Webkit 如何将 div 的值保存为 .txt 文件