繁体   English   中英

访问 GCP 数据的 web 应用程序的 3 Legged Oauth 实施建议是什么?

[英]What is the 3 Legged Oauth Implementation recommendation for a web app that accesses GCP data?

(1) 如果您使用 oauth2 流程,如下所示:

GCP Oauth2 流程

https://developers.google.com/identity/sign-in/web/server-side-flow

在 Node.js RESTful api 中使用google-auth-library并希望对Cloud Storage进行经过身份验证的调用,从身份验证流端点到云存储端点?

示例 SUDO 代码:

FILE A server/AuthController.js

router.get("/generate-auth-url") //生成认证 url 发送给客户端

router.get("/auth-callback") //google Api 在第 5 步中调用它,我们将代码交换为 access_token 和 id_token,我们如何传递这些数据?

文件 B server/CloudStorageController.js

router.get('/some-cloud-storage-json-file')

调用const storage = new Storage({ credentials, projectId: "some-project-id" }); //如何从 AuthController 获取凭据?

奖金问题:

(2) 如何在每次跟进 api 调用访问云存储数据的端点时验证身份验证?

(3) 我需要存储哪些数据来维护您的 web 应用程序中的用户会话/授权? (例如:access_tokens、id_tokens、refresh_token、cookies 等)

(4) 我在哪里存储所说的身份验证数据? (例如:浏览器 cookies、浏览器 localStorage、nodejs session 存储、数据库?(您需要此架构的数据库吗?)等)

请参阅此Google 文档

是 Node.js 的完整示例。 注意它说的地方

在生产应用程序中,您可能希望将刷新令牌保存在安全的持久数据库中。

暂无
暂无

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

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