首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >应该生成代码验证器和代码挑战的Oauth2 PKCE

应该生成代码验证器和代码挑战的Oauth2 PKCE
EN

Stack Overflow用户
提问于 2020-05-25 09:08:05
回答 1查看 1.8K关注 0票数 3

我正在编写与某些Oauth2提供商集成的客户端应用程序。我将使用本地android应用程序作为前端,而spring引导作为后端。我想在PKCE中使用authorization_code流。我的问题是谁应该生成代码验证器和代码挑战?我的后端还是我的本地应用程序?

我可以看到两种选择:

1)前端调用授权端点。后端正在生成code_verifier和代码挑战,并将代码挑战返回到前端,并将其重定向到授权服务器。用户登录,授予权限,然后接收授权代码并转发到后端。然后后端使用code_verifier、客户端id和客户端机密调用授权服务器,并接收访问令牌。

( 2) FE生成code_verifier和代码挑战。它用code_challenge调用授权提供程序,用户登录,授予权限,然后接收授权代码。前端使用code_verifier转发授权代码,然后后端使用授权代码、code_verifier、客户端id和客户端机密调用授权提供程序。

哪一种方法更好、更安全?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-25 09:29:00

我们选择了方法2)。

对手可能会拦截前端和后端之间的通信,并使用代码从后端端点获取令牌。使用选项1,您只保护后端和授权提供程序之间的通信,而不保护前端和后端之间的通信。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61999232

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档