![](/img/trans.png)
[英]Oauth - authorization code flow with pkce - security implications of using localhost as redirect_uri
[英]Will PKCE implementation resolve problem with dynamic redirect_uri Oauth 2.0 (Code Grant Flow)
我想在 Code Grant 中使用 redirect_uri 作为动态参数,但出于安全原因,我知道 redirect_uri 必须是 static。 如果我实现 PKCE 流程并保留对 client_secret 参数的验证,那么使用动态 redirect_uri 会更安全吗? 在我看来,我将添加一个新的身份验证步骤(使用 PKCE)。
谢谢!
并不真地
PKCE 最初旨在保护身份验证代码流免受 CSRF 和身份验证代码注入攻击。 PKCE RFC-7636在 PKCE RFC 中强烈建议遵循 OAuth 2.0 安全建议。 RFC-6819 第 5.2.3.3 节说明了 static redirect_uri 的原因是为了防止:
动态重定向 uri 向向恶意行为者提供 code_challenge 和身份验证令牌的客户端打开了一个潜在漏洞。
*.example_domain.com
某些网站(例如 Google)使用户能够创建自己的网站作为子域。 恶意行为者可以利用这一点。 它可能并不简单或容易,但它确实暴露了一个漏洞。
子域。*
这更糟。 任何具有匹配子域的站点都是有效的。
在上述任何一种情况下,PKCE 都不会阻止冒充,这可能允许攻击者获取和访问令牌。 它是在令牌端点受信任的环境中防止利用的出色工具。
您的问题被标记为 Openid-Connect。 OIDC 要求将 redirect_uri 预先注册到 OpenID 提供者Openid-connect-core 。 您可以创建一个很长的重定向 uri 白名单以供使用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.