【发布时间】:2014-10-25 07:35:00
【问题描述】:
如果不使用Passport
,我无法理解Google+的认证和授权标准流程要求:
- 没有passport.js(我知道用起来很简单,但我不想用)
- 没有会话(不会使用任何会话,我想保持无状态)
当前架构:
- 我有一个带有 JWT(JSON Web 令牌)的 REST API 服务器,
- 用户将在执行 POST /login 时从我的服务器获取访问令牌
- 我的服务器,将检查用户名和密码并返回访问令牌
- 以后在我的服务器中进行 API 查询需要此令牌
问题:
i) 如何用 Google + 替换我当前的身份验证?
ii) 当我使用 Google + 按钮登录时,我在客户端获得了访问令牌,我是否将令牌发送回我的服务器?
iii) 但是,我的服务器没有这个用户的信息?,我需要先在我的服务器中创建这个用户,当它向我的服务器发送访问令牌时,我会检查这个用户是否有效并返回它使用我的服务器访问令牌? (所以对于这个用户,我的服务器数据库中不会有密码信息吗?而这个来自谷歌的访问令牌将存储在我的服务器中?)
iv) 我读到了他们的doc 他们正在使用会话,当用户第一次访问该页面时,我不想使用 sessiosn
我想知道一般流程,我可以自己实现的代码, 我就是想知道解决这个问题的常用架构!
如果你能告诉我处理这个问题的一般概念,那就太好了! :)
【问题讨论】:
标签: node.js authentication oauth google-plus google-oauth