|
|
1
3
这是一个很长的答案: http://java.sun.com/javase/6/docs/technotes/guides/security/jsse/JSSERefGuide.html 不要相信我的话,但我相信,作为一个客户机,当服务器请求时,客户机身份验证将自动执行。 如果配置Tomcat是个问题,您读过吗? http://tomcat.apache.org/tomcat-6.0-doc/ssl-howto.html ?尤其要注意connector元素的clientauth属性。 |
|
|
2
3
更新: 尝试以下方法在Tomcat中启用客户端身份验证。 为了使Tomcat利用客户机身份验证的优势,我们需要三个证书。即Tomcat的服务器证书、浏览器的客户端证书和将签署上述两个证书的CA证书。在这里,我将在窗口演示如何操作。 有两种方法。 1)您应该有一个CSR文件,即证书签名请求。您可以像这样提交给证书颁发机构 Verisign 或 Comodo 或者像他们一样的很多人。他们会给你提供证书的。或 2)您可以创建自己的证书颁发机构并对证书进行签名。但建议仅用于个人用途。 您应该安装Java和OpenSSL来执行下面的步骤。 要生成证书签名请求,您应该拥有密钥。要生成密钥,请在cmd中键入以下命令。
这将生成一个文件“serverkey.key”。密钥大小为1024。你可以根据你的要求给它。 现在,在以下命令的帮助下生成CSR文件。
一旦执行了这个命令,就会要求您提供一些信息。 之后,您将在目录中找到CSR文件。您可以将此文件提交给CA。如果您这样做是为了个人使用,并且您希望拥有自己的CA,在上面给出的两个命令的帮助下为您的CA创建一个密钥和CSR。在您将CSR用于CA之后,您可以在下面的命令的帮助下使用CA的密钥进行签名。
一旦您拥有了CA证书,就可以使用它来签署其他证书。
您也可以对客户端证书使用相同的命令。 我们的客户端浏览器将接受p12格式证书。p12格式是一个包含证书和密钥的文件。 要将CRT转换为P12,请使用以下命令。
在Tomcat中,有一个信任库将拥有CA的证书,另一个信任库将拥有服务器的密钥和证书(p12文件)。 要将CA的证书导入信任库,请使用以下命令。
你可以随意给别名。请注意在执行上述命令后,当被询问时所提供的密码。我们将在server.xml文件中使用该密码。以下命令同样适用。 要将p12格式证书导入密钥库,请使用以下命令。
现在,更改tomcat的server.xml,如下所示。
现在,将客户机的p12格式证书导入浏览器。然后,启动Tomcat服务器并尝试访问 https://localhost:8443 . 您可以访问 blog 关于这个答案的详细版本。希望这有帮助。 |
|
|
3
1
我不知道这是关于配置Tomcat的,除了能够将系统属性传递给在Tomcat中运行的Web应用程序之外。 提供Web应用程序的供应商确实应该能够告诉您如何从他们的软件获取客户端连接,以便在与远程Web服务进行SSL连接时使用特定的客户端证书。 例如,他们可以让应用程序实现自定义 KeyManager 对于能够从可配置位置查找客户端证书和私钥的SSL连接。 如果他们没有这样做,他们可能正在使用默认的sunx509 keymanager。 对于默认的keymanager,您显然可以使用keytool创建一个包含客户机证书和证书描述的私钥的密钥库。然后,可以使用以下系统参数指定密钥存储:
您需要配置Tomcat来传递这些属性。 |
|
|
gigashark · 部署生成的Maven Spring项目不起作用 8 年前 |
|
|
Tristan Le Gacque · ApachePOI:NoClassDefFoundError:org。阿帕奇。poi。openxml4j。例外情况。invalidFormatException无效格式异常 8 年前 |
|
|
Carlos Chávez · Tomcat/Hibernate配置 8 年前 |