security - 如何使用 OAuth2 重定向错误来防止不良操作回火
问题描述
当 OAuth 流程失败时,我们会像这样重定向回客户端
https://example.com/?error=error_1&state=abcd
error
param的可能值可以是error_1
或error_2
。并基于此值需要做出决定。
现在客户端如何确保重定向确实是由 OAuth2 服务器而不是由谁
- 弄清楚根据
error
查询字符串的不同可能值做出的决定。 - 不知何故,停止了原始重定向以到达
example.com
(因此它不是回复攻击),然后手工制作了与由于浏览器重定向而发出的任何请求相同的伪造请求。
对于成功的流程,我知道我们将返回一个code
需要交换的,并且有 PKCE 以提供额外的安全性以防止伪造。您如何确保为错误重定向提供相同级别的保证?
解决方案
推荐阅读
- python - 无法运行简单的程序 - Python - Kivy - Ubuntu
- python - 炮兵脚本的“TypeError:'float'对象不可调用”
- r - 在 R data.table 中使用 := 和动态过滤器
- ios - 在 SwiftUI 中,如何在键盘顶部和 TextField 底部之间创建一个 20 点的不可见间隔?
- python - 将字符串列表转换为年数
- git - Git svn 将分支 url 更改为主干
- javascript - 根据数据深度切换选择
- reactjs - Next.js 自动静态优化
- python - 重试循环无法找到新创建的文件,即使它在那里
- javascript - 进入屏幕时应用程序崩溃 React Native