我有一个独特的情况,我需要在IE浏览器和IIS 6之间通过HTTPS实现客户端证书身份验证.浏览器和IIS由防火墙隔开,只允许浏览器连接到SSL端口上的IIS.
我们在与IIS相同的网络上有一个内部证书服务器.我已经为IIS生成了SSL服务器证书并且已经安装了.我将IIS配置为仅允许SSL,需要客户端证书.
这里的限制是浏览器机器在断开连接的网络上,所以我不能像往常那样去CA的http:// caserver/CertSrv URL并请求客户端证书.
我想如果有一种方法可以针对Root CA的公钥生成CSR,我可以将其复制到CA服务器以生成客户端证书.但是,在IE或证书MMC中似乎没有规定这样做.证书MMC似乎需要直接连接到CA.
有没有人解决过这个问题?
仅供参考,所有引用的服务器都运行Windows Server 2003.
更新:感谢Jonas Oberschweiber和Mark Sutton指出CertReq.exe命令行工具.使用它,我生成了一个CSR,从而生成了一个成功安装的客户端证书.但是,在访问有问题的IIS服务器时,IE显然没有发送此客户端证书; 它仍然生成403.7"Forbidden:需要SSL客户端证书." 我怀疑原因是客户端证书的Subject字段与运行IE的帐户的用户ID不匹配,因此可能不会发送不匹配的客户端证书.主题与我用于提交CSR的用户的主题相匹配,并在防火墙的另一端生成客户端证书.
Subject字段是否重要?我还需要做些什么才能让IE发送这个证书吗?