即使在 BFF 设置中,OAuth2 授权代码流中的代码是否会访问浏览器?

问题描述 投票:0回答:1

想象一下使用 PKCE 的 OAuth2 授权代码流程是在前端后端 (BFF) 位于浏览器和资源服务器之间的情况下完成的,如基于浏览器的应用程序的 OAuth 2.0 中所述。

我的理解是,当授权端点返回代码时,它将位于 https 302 重定向响应中,并将代码作为查询参数之一。这意味着代码实际上(在短时间内)驻留在浏览器中。这样的分析正确吗?

如果是,这会带来安全问题,还是因为 OAuth2 客户端(BFF)必须是机密客户端(如果代码来自攻击者)?

oauth-2.0 backend-for-frontend
1个回答
0
投票
是的,它总是会在浏览器中传递,因为用户将重定向到您的 OAuth2 授权端点并被重定向回来。这个发生在浏览器中的过程对于安全性至关重要,因为它训练人们只向受信任域的授权服务器提供密码。

如果攻击者在目标人员使用代码之前获取了代码,他们将获得访问令牌,但在正常情况下,攻击者不应能够拦截此代码。

© www.soinside.com 2019 - 2024. All rights reserved.