简体   繁体   English

Java从Apache标头接收证书%{SSL_CLIENT_S_DN}

[英]Java receiving certificate %{SSL_CLIENT_S_DN} from Apache headers

I'm using Apache as reverse/proxy server. 我正在使用Apache作为反向/代理服务器。 I've configured Apache 2.2 to require client certificate based authentication and I'm sending information of the certificate from Apache like this: 我已经将Apache 2.2配置为要求基于客户端证书的身份验证,并且我正在从Apache发送证书信息,如下所示:

SSLRequireSSL
SSLVerifyClient require
SSLVerifyDepth 1

SSLOptions +StdEnvVars +StrictRequire +ExportCertData

RequestHeader set X-Client-DN %{SSL_CLIENT_S_DN}e
RequestHeader set X-Client-Verify %{SSL_CLIENT_VERIFY}e

I would like to receive those successfully to Java side.. 我想成功地将这些接收到Java端。

I can see that those headers working fine, from Apache log file, but I'm still wondering how to receive those wanted headers to backend side. 我可以从Apache日志文件中看到这些标头工作正常,但是我仍然想知道如何将那些想要的标头接收到后端。 I'm using java se request.getHeaderNames() method and I can see headers from current page, but not those desired ones. 我正在使用java se request.getHeaderNames()方法,可以看到当前页面的标题,但看不到那些想要的标题。 I'm using ajp to receive headers from Apache.. 我正在使用ajp从Apache接收标头。

The SSL handshake is made so many times and I can see many different headers from the log even "referred" by the same page.. Is it possible to save those specific headers somehow to session/stickysession so those would be readable since then when desired..? SSL握手已经进行了很多次,我甚至可以从同一页面“引用”的日志中看到许多不同的标头。是否可以将这些特定标头保存到会话/粘性会话中,以便从那时起便可以读取它们了..?

You have to change: 您必须更改:

RequestHeader set X-Client-DN %{SSL_CLIENT_S_DN}e
RequestHeader set X-Client-Verify %{SSL_CLIENT_VERIFY}e

By: 通过:

RequestHeader set X-Client-DN "%{SSL_CLIENT_S_DN_CN}s"
RequestHeader set X-Client-Verify "%{SSL_CLIENT_VERIFY}s"

Right answer was to set: 正确的答案是:

Header echo ^X-Client 标头echo ^ X-Client

To get desired headers to application (copies everything starting with "X-Client" from request headers to response headers) 要获得所需的应用程序标头(将所有以“ X-Client”开头的内容从请求标头复制到响应标头)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM