【发布时间】:2021-01-26 12:41:51
【问题描述】:
使用 vertx-http-proxy (https://github.com/eclipse-vertx/vertx-http-proxy),添加/插入我们的自定义身份验证机制的最佳方法是什么(例如基于客户端证书的 LDAP 身份验证并为我们的后端目标填充 Authorization Basic 标头)?
【问题讨论】:
标签: vert.x
使用 vertx-http-proxy (https://github.com/eclipse-vertx/vertx-http-proxy),添加/插入我们的自定义身份验证机制的最佳方法是什么(例如基于客户端证书的 LDAP 身份验证并为我们的后端目标填充 Authorization Basic 标头)?
【问题讨论】:
标签: vert.x
目前您可以直接使用 ProxyRequest 和 ProxyResponse 来控制流。当 ProxyResponse 准备好发送时,您可以在自定义代理响应 HTTP 标头之前。
【讨论】:
vertx.createHttpServer().requestHandler(HttpProxy.reverseProxy2(vertx.createHttpClient()).selector(request -> {request.headers().set(AUTHORIZATION, "Basic " + retrieveBase64CredentialsFromLdap(request));return Future.succeededFuture(backendSocketAddress);})).listen(rpSocketAddress); 这是正确的方法吗?
server.requestHandler(request -> { request.headers().set("Host", hostHeader); proxy.handle(request); });