【发布时间】:2020-05-01 19:35:15
【问题描述】:
我们设计了一个工作流程,使第 3 方系统 (1) 无需额外身份验证即可使用我们 (2) 的系统,如下所示:
这里是描述:
第 3 方客户端应用程序(Web)想要启动我们的应用程序。它向自己的后端请求令牌。
第 3 方后端生成一个带有随机令牌值的 JWT,与当前用户关联
第 3 方后端通过特定 API 将 JWT 发送到我们的系统
注册后,JWT 被发送回 3rd 方客户端应用程序(web)
第 3 方应用程序通过 JWT 启动我们的客户端应用程序(Web)
我们的应用程序使用已注册的 JWT 调用我们的后端 API
问题如下:
- 如果此工作流程有效/正常
- 在 JWT 中为 user_email、organization_id、token 使用的正确声明是什么
【问题讨论】:
-
JWT 令牌是带有哈希的普通 json。所以我再次建议
user_email作为 JWT 的一部分,我更喜欢使用代表用户的 UUID。另外,我建议您为每个第 3 方使用不同的密钥。因此,您和第 3 方生成的令牌应该具有不同的哈希值,并且您还需要有一个字段说明哪个客户端生成了 JWT 来区分。休息一下,你的架构看起来不错 -
我想知道在这种情况下过期时间是如何处理的?
标签: jwt cloud bearer-token jwt-auth