• ASP.NET Web API编程——使用自签名SSL证书


    1自签名SSL证书的创建

    创建自签名SSL工具xca为:https://sourceforge.net/projects/xca/

    创建过程

    1)创建根证书

    打开软件,界面如下。

    点击,看到下拉菜单,选择,创建新的数据库。

    给文件命名,选择文件存储的位置,这里我放在了E:CA这个文件夹下

     

    点击保存,弹出下页,填写密码

    点击ok,弹出下页

     

    点击,弹出下页

     

    签名算法改为SHA 256,其他不变,点击,然后点击ok,弹出下页

     

    点击,填写信息,如下:

     

    点击,弹出下页

     

    确认无误,点击,成功显示下页

     

    点击ok,显示下页

     

    点击ok,创建成功显示下页

     

    点击ok,至此成功生成了根证书。

    2)创建服务端证书

    在上述根证书创建成功的基础上,选中已生成的根证书。

     

    点击,弹出下页

     

    修改加密算法为SHA 256,证书模板有三个,选择

     

     

    点击,点击ok,弹出下页

     

    其他操作与生成根证书类似,生成好了以后,页面如下:

     

    3)创建客户端证书

    与创建服务端证书基本一致,不同的是选择

     

    2 导出证书

    选中证书,点击

     

    选择文件夹和导出格式,导出格式有多种,根据需求导出。

     

    3 IIS中安装证书

    注意同一个证书不要安装多次,若要重装,那么先删除已安装的证书。

    打开IIS,点击根目录,双击

     

    右键,弹出菜单,点击完成证书申请,即红框部分

     

    弹出页,选择生成好的证书(证书需要以格式导出)

     

    命名并点击确定

     

    至此,不同的IIS会有不同的反应,有些服务器导入成功,有些服务器报错:

     

    有的导入似乎成功,但刷新页面,导入的证书消失。对于这种情况,导入证书后别刷新,右键查看证书,截图如下:

     

     

    针对上述两种错误的解决办法是:

    1 )报错的解决方案是

     

    先将证书安装到计算机受信区,然后打开证书管理器,即开始处运行:certmgr.msc

    选中证书,右键操作如图所示。

     

    选择

     

    依提示操作,到输入密码时,这里指的就是创建证书的密码

     

    输入正确的密码,依提示操作即可。

    但是有些计算机即使正常安装了证书,也无法导出,如下图,导出私钥为不可选。

     

    解决办法是,在安装证书的时候,要勾选对应选项,如下图所示:

     

    2)双击证书(针对.cer格式或.p12格式),按提示安装,选择自动存储模式

    这种方法不起作用,安装完依然不可用,截图如下。

     

     

     

     

    选择,这种方式指定存储区也不起作用。

     

    要导出格式,然后双击安装才可以。

     

    4 访问自签名Https网站

    一般添加安全例外就可以,但是有些会显示不全,解决办法是:

    例如火狐浏览器中,点击暂时解除保护。这是因为https请求返回的页中含有http的请求,这种混合类型的被浏览器认为是不安全的。

     

  • 相关阅读:
    图解HTTPS
    JQuery 控件
    sql server 中某个字段值合并【转】
    ASP.NET时间函数及其格式转换
    数据库 'tempdb' 的日志已满
    @@ERROR 和 @@ROWCOUNT
    SQL Server中行列转换 Pivot UnPivot 【转】
    Global.asax详解
    SQL Server 2008时提示评估期已过的解决办法
    C# IO读取文件问题:正由另一进程使用
  • 原文地址:https://www.cnblogs.com/hdwgxz/p/7857578.html
Copyright © 2020-2023  润新知