两个微服务之间的通信-Keycloak客户端

时间:2018-08-14 06:51:46

标签: rest keycloak

我有两个服务注册为同一领域中的两个keycloak客户端。 在keycloak客户端设置中,两个客户端的访问类型都设置为public。

当我们尝试通过Keycloak登录时,两种服务都可以正常工作。

登录到第一个(service-1)用户后,需要执行一些操作,为此我需要对(service-2)进行REST调用。 现在,如果我尝试从一个服务到另一个服务进行REST调用,它将重定向到HTML并返回一些HTML响应,而不是实际响应。

我可以在这两个服务之间进行呼叫的方式。

2 个答案:

答案 0 :(得分:0)

要与通过密钥斗篷保护的api通信,您需要提供授权。为此,您需要做的就是在授权标头中传递访问令牌。

要获取此令牌,您可以进行登录调用,获取访问令牌并将其传递,或者您可以利用传递的令牌来访问第一项服务本身。

答案 1 :(得分:0)

否,尚不可能,因为此问题https://issues.jboss.org/plugins/servlet/mobile#issue/KEYCLOAK-6073。 总之,除非在两种情况下都使用相同的密钥公开URL,否则您将无法在后退呼叫中使用登录网页生成的令牌。