SSL CA客户端证书双向认证IIS配置及代码验证

1。申请一个SSL证书

      我是在腾讯云上申请了一个免费的证书,申请后下载证书,部署到服务器,部署过程参照以下(从腾讯证书安装指南Copy过来的  https://www.qcloud.com/document/product/400/4143 )

3. IIS 证书部署

3.1 获取证书

IIS文件夹内获得SSL证书文件 www.domain.com.pfx。

3.2 证书安装

1、打开IIS服务管理器,点击计算机名称,双击‘服务器证书’
3.2.1

2、双击打开服务器证书后,点击右则的导入
3.2.2

3、选择证书文件,如果输入申请证书时有填写私钥密码需要输入密码,否则输入文件夹中密码文件keystorePass.txt的密码内容,点击确定。参考私钥密码指引
3.2.3

4、点击网站下的站点名称,点击右则的绑定
3.2.4

5、打开网站绑定界面后,点击添加
3.2.5

6、添加网站绑定内容:选择类型为https,端口443和指定对应的SSL证书,点击确定
3.2.6

7、添加完成后,网站绑定界面将会看到刚刚添加的内容
3.2.7


2. 安装客户端证书

   本来想自己生成一个证书用来测试,结果没有实验通过,由于项目赶进度,所以先找一个免费的客户端正式来试试,先把逻辑走通。后面有时间再研究自己怎么生成客户端证书。

从沃通网 https://www.wosign.com/ 申请一个免费的客户端证书 https://www.wosign.com/price_client.htm  下载到本地

客户端证书部署步骤:https://bbs.wosign.com/forum.php?mod=viewthread&tid=2850&highlight=%CB%AB%CF%F2%C8%CF%D6%A4

在此非常感谢沃通网 一个客服 *双 ,一开始问了好几个客服咨询怎么配置,但是他们都因为没有购买他们的ssl证书不予帮助。后来这个 *双 客服最后给我发了上面的链接,最终配置成功。

首先在IIS上部署好服务器证书,请查阅一下链接:
http://www.wosign.com/Docdownload/IIS7.0SSL%E8%AF%81%E4%B9%A6%E9%83%A8%E7%BD%B2%E6%8C%87%E5%8D%97.pdf
一、服务器端:
双向认证需要在服务器上做以下操作:
1、点击站点,选择SSL设置。
SSL CA客户端证书双向认证IIS配置及代码验证_第1张图片
配置如下图操作,勾选要求SSL,客户端证书:选择必需,点击应用。
SSL CA客户端证书双向认证IIS配置及代码验证_第2张图片


2、申请一张免费电子邮件加密证书 https://buy.wosign.com/free
SSL CA客户端证书双向认证IIS配置及代码验证_第3张图片

3、按服务器导入证书的方式将申请下来的PFX证书导入到本地计算机。
SSL CA客户端证书双向认证IIS配置及代码验证_第4张图片

SSL CA客户端证书双向认证IIS配置及代码验证_第5张图片

SSL CA客户端证书双向认证IIS配置及代码验证_第6张图片
此时可以在中级颁发机构找到这两个中级根,重启服务器。
SSL CA客户端证书双向认证IIS配置及代码验证_第7张图片
完成服务器端的配置。




二、客户端
将下载的客户端证书,双击安装。
输入 https://yourdomain.com ,浏览器会弹出刚刚安装的客户端证书。
SSL CA客户端证书双向认证IIS配置及代码验证_第8张图片
选择这个证书,点击OK,顺利访问,否则访问会被拒绝。
SSL CA客户端证书双向认证IIS配置及代码验证_第9张图片
SSL CA客户端证书双向认证IIS配置及代码验证_第10张图片


3. 在代码中获取客户端证书

using System.Security.Cryptography.X509Certificates;

var x509 = new X509Certificate2(this.Request.ClientCertificate.Certificate);

    var chain = new X509Chain(true);

    chain.ChainPolicy.RevocationMode = X509RevocationMode.Offline;

    chain.Build(x509);


其中 x509.Subject  获取到的格式为: [email protected], [email protected]

通过邮箱地址来自己验证所登录用户的合法性。


你可能感兴趣的:(C#,Asp.Net)