asp.net 5.0 https的双向认证(windows和ubuntu) 以及go的调用

前几天搞go 的Grpc和http2的双向认证。现在来搞搞。net core 里面是如何实现的

首先需要下载 OpenSSL http://slproweb.com/products/Win32OpenSSL.html 

Windows

证书创建:

一、创建根证书

//生成key文件,输入密码:
openssl genrsa -des3 -out root.key
//生成请求证书文件,如果安装路径发生改变,可以通过在下面命令后面添加-config openssl.cfg来指明配置文件路径
openssl req -new -key root.key -out root.csr 
//生成一个10年期根证书 root.crt:
openssl x509 -req -days 3650 -sha1 -extensions v3_ca -signkey root.key -in root.csr -out root.crt
//分别在客户端或服务端安装根证书,windows上安装证书时,证书存储可选择“受信任的根证书颁发机构

二、创建服务端证书

//生成key文件,输入密码
openssl genrsa -des3 -out server.key 2048
//生成请求证书文件,如果安装路径发生改变
openssl req -new -key server.key -out server.csr
//用根证书生成一个10年期证书 server.crt:
openssl x509 -req -days 3650 -sha1 -extensions v3_req -CA root.crt -CAkey root.key -CAserial root.srl -CAcreateserial -in server.csr -out server.crt
//生成.net core识别的证书文件server.pfx
openssl pkcs12 -export -in server.crt -inkey server.key -out server.pfx

三、创建客户端证书

//生成key文件,输入密码
openssl genrsa -des3 -out client.key 2048
//生成请求证书文件,如果安装路径发生改变
openssl req -new -key client.key -out client.csr
//用根证书生成一个10年期证书 client.crt:
openssl x509 -req -days 3650 -sha1 -extensions v3_req -CA root.crt -CAkey root.key -CAserial root.srl -CAcreateserial -in client.csr -out client.crt
//生成.net core识别的证书文件client.pfx
openssl pkcs12 -export -in client.crt -inkey client.key -out client.pfx

创建项目

接下来创建asp.net core web api项目,并把server.pfx添加到项目中,并设置属性为“始终复制”,接着修改Program.cs下的CreateHostBuilder方法就可以:

 public static IHos
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值