微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

keycloak,为什么后端通道需要重定向 url

如何解决keycloak,为什么后端通道需要重定向 url

我尝试使用 openid connect 将我的 Python 应用程序(后端客户端)集成到 Keycloak 系统中,为什么我必须填写 Valid Redirect URIs 字段?根据我对 OAuth 2.0 的理解,后端通道只需要在 Authorization Code Flow 过程

中交换 id 和访问令牌的代码

这里为什么需要重定向网址,难道不应该只在前端客户端填写吗?

有什么想法吗?

enter image description here

解决方法

我们需要它来限制我们在成功登录后可以重定向到的 URL。我们这样做是为了提高您用户的安全性,因为如果提供商在登录后可以重定向到任何 URL,这将是一个很大的安全问题。

,

接收授权码的客户端和交换令牌代码的客户端必须是同一个客户端——至少从授权服务器的角度来看是这样。理论上,您可以使用单独的应用程序来处理 OAuth 流程的一部分,但它们必须使用相同的客户端 ID。

理想情况下,重定向 URI 指向 Python 后端公开的端点。 Keycloak(或任何授权服务器)完成身份验证和授权后,它将用户与授权代码一起重定向到该端点。这样授权码将直接发送到后端客户端,前端应用程序将永远不必处理它。通过注册 URL,您希望确保没有人使用您的客户端 ID 执行授权,而是要求将代码发送到另一个应用程序。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。