node.js - 我应该在哪里存储 code_verifier(使用 PKCE 的 oauth 2.0 代码授权流程)
问题描述
我目前正在 SSR 页面中使用 PKCE 进行 oauth 2.0 代码授权授权(在前面使用 React,在后面使用 Express)。
code_verifier
当客户端请求授权服务器代码时我应该存储在哪里(当授权服务器创建 code_challenge 和 code_verifier 以验证后者时)。我的授权服务器在独立的堆栈/基础架构中运行。
我应该存储code_verifier
在 req.headers 中吗?(参见坎贝尔 OAuth TBPKCE-00 草案)
我们遵循RFC6749
解决方案
我建议您考虑将其存储在 中cookies
,这是一种简单的方法,如果有人看到它也没什么大不了的。您可以使用Node.jscookie-parser
的库,我个人非常喜欢并且几乎每天都在使用它,因为它提供了对开发人员友好的工具。
仅供参考:我主要研究GraphQLcode_verifier
API,并且我找到了一个很好的解决方案来存储context
GraphQL Server,例如Apollo Server。
推荐阅读
- javascript - 如何比较数组中的日期
- python - 如何用moviepy连接视频和图片
- kendo-ui - 如何按行 Kendo UI Grid 从 dataSource 获取值 id
- express - 每个 Nuxt Auth 请求都会更改 Express sessionID
- kubernetes - 您可以使用“kubectl run”在特定节点上安排 pod 吗?
- html - 网页上的简单下拉列表速度很慢 - Chrome 和 Edge
- python - Python,解析错误时出现意外的EOF
- google-cloud-platform - 生命周期策略:为非当前版本设置最低年龄
- database - 无法查看 SQLite 表
- python - 到达日期/时间时如何发送邮件?