【发布时间】:2011-04-25 03:45:14
【问题描述】:
我正在 Windows 机器上的独立 tomcat 6 服务器上运行应用程序。我希望它能够从 DoD CAC 卡请求和接收客户端证书。
我有一台运行 IE 的客户端计算机,它正确设置以传递来自 CAC 卡的证书,我知道它是正确的,因为当我转到启用 CAC 的站点时,IE 会弹出一个窗口,要求我选择一个证书并在其中窗口我可以看到我的 CAC 卡中的证书。
我已将 tomcat 配置为向用户请求证书,当我导航到在 tomcat 上运行的站点时,我看到相同的 IE 提示,要求我选择我的证书,但是当我查看我的站点时,证书列表是空的。在我的 server.xml 文件中,我将连接器配置如下:
<Connector port="8443"
protocol="HTTP/1.1"
SSLEnabled="true"
maxThreads="150"
scheme="https"
secure="true"
keystoreFile="<myKeysotre>"
keystorePass="<myPassword>"
clientAuth="want"
sslProtocol="TLS" />
我认为我搞砸的地方是密钥存储文件的生成。现在我使用 java keytool 命令生成它,如下所示:
keytool -genkey -alias -keypass myPassword -keystore myKeystore -storepass myPassword
我现在正在进行开发,我正在寻找一种方法将客户端证书从 CAC 卡获取到我的应用程序,但我缺少一些东西。我对它的工作原理不是很熟悉,所以我可以使用一些帮助/指导。
谢谢
【问题讨论】:
-
你现在用证书做什么?我假设您想以某种方式将它们转换为用户名?
标签: tomcat ssl certificate cac common-access-card