如何 out.println Apache JKEnvVar SSL_CLIENT_DN 从 mod_ssl 到 java、javascript 或 html?

Posted

技术标签:

【中文标题】如何 out.println Apache JKEnvVar SSL_CLIENT_DN 从 mod_ssl 到 java、javascript 或 html?【英文标题】:How to out.println Apache JKEnvVar SSL_CLIENT_DN from mod_ssl to java, javascript or html? 【发布时间】:2020-01-06 14:23:41 【问题描述】:

我无法将 apache JKEnvVar SSL_SESSION_ID 和 SSL_CLIENT_DN out.println 或 system.out.println 转换为 java 代码或 javascript。我想将它添加到我的 web 应用程序中的每个会话中,然后将其打印到字符串中。

使用 SSL_mods 正确设置 Apache 并将变量设置为可从 tomcat 获得。

我的 httpd.conf 示例

<virtual host>
  SSLOptions +StdEnvVars +ExportCertData
  JKMount /*.jsp ajp13
  JKMount /Servlet ajp13`
  JKEnvVar SSL_CLIENT_CERT
  JKEnvVar SSL_CLIENT_DN
  JKEnvVar SSL_CLIENT_V_START

我希望能够在我的 tomcat Web 应用程序中利用这些变量。但我不知道怎么做。

这是我尝试过的: 我尝试了几种方法:我尝试制作一个接口,将变量定义为字符串,然后打印出来 (request.getAttribute(SSL_CLIENT_DN));我也尝试过 HTTPServletRequest a= (HttpServletRequest) 请求; javax.servlet.http.HttpSession ahttpsession = a.getSession();然后 httpSession.getAttribute(SSL_CLIENT_DN);

这些返回空值,我也试过:打印标题为枚举 headerNames=request.getHeaderNames();

这将返回此字符串“SSL_CLIENT_DN”。我需要动态数据,即 SSL_CLIENT_DN 产生的动态变量。客户端的实际 DN 为字符串。

【问题讨论】:

=StdEnvVars 是错字吗?您如何尝试从请求中获取值? 我尝试了几种方法:i 请具体说明。发布您的尝试和结果。 【参考方案1】:

好的,我想通了。我做对了,问题是变量无法访问,因为我必须使用 chmod 775 -R

更改“/var/www”的文件夹目录权限

【讨论】:

以上是关于如何 out.println Apache JKEnvVar SSL_CLIENT_DN 从 mod_ssl 到 java、javascript 或 html?的主要内容,如果未能解决你的问题,请参考以下文章

IDEA中如何查看System.out.println的输出

在eclipse中, 如何快速输入(快捷键)System.out.println();

如何简化System.out.println

java中使用System.out.println如何输出多个变量?

Scala 中的 println 与 System.out.println

使用 System.out.println() 的目的是啥 [关闭]