我有一种独特的情况,我需要通过HTTPS在IE浏览器和IIS 6之间实现客户端证书身份验证。浏览器和IIS由防火墙隔开,只允许浏览器连接到SSL端口上的IIS。如何从断开的网络生成SSL客户端证书?
我们在与IIS相同的网络上有内部证书服务器。我已经为IIS生成了SSL服务器证书并且已安装。我将IIS配置为只允许SSL,需要客户端证书。
这里的限制是浏览器机器处于断开连接的网络上,所以我不能像往常一样去CA的http://caserver/CertSrv URL和request a client cert。
我想如果有一种方法可以根据根CA的公钥生成CSR,我可以将其复制到CA服务器以生成客户端证书。但是,在IE或证书MMC中似乎没有规定这样做。证书MMC似乎需要直接连接到CA.
有没有人解决过这个问题?
仅供参考,所有的服务器都引用运行Windows Server 2003
更新:感谢乔纳斯Oberschweiber和马克·萨顿对指出了的certreq.exe命令行工具。使用此功能,我生成了一个CSR,并因此生成了成功安装的客户端证书。但是,当访问相关的IIS服务器时,IE显然不会发送此客户端证书;它仍然会生成一个403.7“禁止:SSL客户端证书是必需的。”我怀疑原因是客户端证书的主题字段与运行IE的帐户的用户标识不匹配,因此可能不会发送不匹配的客户端证书。主题与我用来提交CSR的用户相匹配,并在防火墙的另一端生成客户端证书。
该主题字段是否重要?我还需要做些什么来使IE能够发送这个证书?
恐怕这不是我所要求的。通过根CA证书链复制是微不足道的。我需要为断开连接的计算机生成客户端证书。 – spoulson 2008-11-07 12:45:13