【发布时间】:2018-12-18 22:09:33
【问题描述】:
我的 Keycloak 服务器部署在反向代理后面的 aws EC2 上,而我的前端客户端 (Springbootapp) 位于另一个 EC2 上。
现在我收到 Invalid redirect_uri 错误,尽管它在前端客户端位于 localhost 且 Keycloak 位于 aws 时有效。即
Keycloak 可通过以下方式访问:http://api.my-kc.site/
Valid Redirect URIs: http://localhost:8012/* and /login/* 工作
查询:https://api.my-kc.site/auth/realms/WebApps/protocol/openid-connect/auth?response_type=code&client_id=product-app&redirect_uri=http%3A%2F%2Flocalhost%3A8012%2Fsso%2Flogin&state=53185486-ef52-44a7-8304-ac4cfeb575ee&login=true&scope=openid
Valid Redirect URIs: http://awspublicip:80/* and /login/* 不工作
而且我还尝试了不指定端口的建议,即http://awspublicip/*;但这仍然不起作用:/
查询:https://api.my-kc.site/auth/realms/WebApps/protocol/openid-connect/auth?response_type=code&client_id=product-app&redirect_uri=https%3A%2F%2Fawspublicip%3A0%2Fsso%2Flogin&state=8bbb01e7-ad4d-4ee1-83fa-efb7f05397cc&login=true&scope=openid
有人有想法吗?我一直在查看所有 Invalid redirect_uri 帖子,但似乎没有任何结果。
当请求的发起者不是 localhost 时,似乎 Keycloack 会为查询生成不同的重定向 URI。有人知道如何避免这种情况吗?
【问题讨论】:
-
does not work是什么意思?看看 keycloak 日志,你有什么显示的吗? -
08:37:31,385 WARN [org.keycloak.events](默认任务 7) type=LOGIN_ERROR, realmId=WebApps, clientId=product-app, userId=null, ipAddress=84.59.129.188 , error=invalid_redirect_uri, redirect_uri=api.my-kc-webapp.site:0/sso/login
-
您似乎没有正确设置 KC 以使用反向代理。您是否按照这些步骤进行操作?
-
谢谢!我会再次检查我的配置
-
@IndranilAriunbold 你知道了吗?我有同样的问题。你注意到了吗,redirect_uri 里面有端口 0。 "invalid_redirect_uri, redirect_uri=api.my-kc-webapp.site:0/"
标签: amazon-ec2 keycloak jwilder-nginx-proxy