使用证书在zuul和微服务之间进行相互身份验证

时间:2018-01-19 05:12:51

标签: java spring ssl netflix-zuul

我有一个zuul代理充当边缘服务器,我的微服务是非jvm应用程序,我不使用功能区或尤里卡。这些微服务只能通过https访问,并且需要客户端证书才能与它们通信。 zuul是否支持与下游的证书相互认证?如果是这样,我如何在我的zuul服务器上进行设置。

1 个答案:

答案 0 :(得分:4)

如果你正在使用Spring Cloud Zuul,你可以通过定义CloseableHttpClient bean来提供你自己的Http客户端,如下所示。 (从Edgware发行版支持)

@Bean
public CloseableHttpClient httpClient() throws Throwable {
    return HttpClients.custom()
           .......ssl context or sslsocketfactory settging.
           .build();
}

如果你提供这种类型的bean,Zuul会在发出http请求时使用这个bean。因此,您可以定义自定义SSL上下文以支持客户端证书。您可以在apache http客户端中找到许多支持客户端证书的示例,例如thisthis