繁体   English   中英

将X509证书放入HTTP请求中

[英]Putting X509 Certificate in HTTP Request

我正在使用Spring Security for X.509 preauthentication身份验证。

要确保客户端按HTTP请求发送证书,是否有必要:

  • 修改pom.xml以将<wantClientAuth><needClientAuth>true
  • 将Apache的SSLVerifyClient设置为require 引用

根据读取,Web服务器必须告诉客户端发送其证书,以便客户端实际发送它。 如果需要Spring Security和Apache配置来实现这一点,我感到很困惑。

Spring Security配置与客户端是否发送证书无关。 这是由SSL协议级别决定的,因此也是客户端和服务器之间的协商决定的。 您的问题有点不清楚,它指的是maven pom和Apache配置,但没有解释您的系统是如何设置的。 您是否正在运行带有Apache服务器的maven Jetty插件?

如果SSL连接未在servlet容器上终止,则Spring Security的X.509身份验证将不起作用。 因此,如果客户端和Apache之间存在HTTPS,并且Apache与servlet容器之间存在非SSL连接,则客户端证书通常不可用。

如果您使用的是AJP连接器,则可以使用ExportCertData选项将Apache配置为将证书传递到后端。 如果不是,您仍然可以获取导出的证书并将其作为请求标头传递(您可以在其他地方找到SO的示例)。 您还需要自定义Spring Security X.509代码以从标头中提取证书,而不是默认使用的标准Java属性名称。

暂无
暂无

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

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