授权码 PKCE - 后端可以使用该代码请求令牌吗?
Authorization Code PKCE - can backend request token using the code?
在授权码流程中。
前端可以将授权码发送给后端,后端可以使用来自授权服务器的代码请求令牌。
现在假设我们有 SPA 前端,并使用了 PKCE。
前端是否仍然有可能将代码发送到后端,并且后端使用其客户端凭据请求令牌?
我的意思是,后端不知道前端生成的证明密钥秘密。
您不会将 PKCE 与客户端密钥混合搭配,但常见的解决方案是通过后端代理授权码授予消息:
- 从浏览器向后端发送PKCE验证器
- 然后将验证者发送到授权服务器
这可以是一种将访问令牌和/或刷新令牌保留在浏览器之外的机制。例如,我的 Sample SPA 是这样工作的。
在授权码流程中。 前端可以将授权码发送给后端,后端可以使用来自授权服务器的代码请求令牌。
现在假设我们有 SPA 前端,并使用了 PKCE。 前端是否仍然有可能将代码发送到后端,并且后端使用其客户端凭据请求令牌? 我的意思是,后端不知道前端生成的证明密钥秘密。
您不会将 PKCE 与客户端密钥混合搭配,但常见的解决方案是通过后端代理授权码授予消息:
- 从浏览器向后端发送PKCE验证器
- 然后将验证者发送到授权服务器
这可以是一种将访问令牌和/或刷新令牌保留在浏览器之外的机制。例如,我的 Sample SPA 是这样工作的。