.NET CORE学习笔记系列(4)——ASP.NET CORE 程序启用SSL

本文介绍了SSL协议的基本概念及其在保障互联网数据传输安全方面的作用,并详细阐述了两种为ASP.NET Core应用程序启用SSL的方法:一是手动构建并使用pfx证书;二是通过修改Program中的BuildWebHost来增加SSL支持。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、什么是SSL?

  1、概念:

  SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层对网络连接进行加密。SSL为Netscape所研发,用以保障在Internet上数据传输之安全,利用数据加密(Encryption)技术,可确保数据在网络上之传输过程中不会被截取及窃听。一般通用之规格为40 bit之安全标准,美国则已推出128 bit之更高安全标准,但限制出境。只要3.0版本以上之I.E.或Netscape浏览器即可支持SSL。当前版本为3.0。它已被广泛地用于Web浏览器与服务器之间的身份认证和加密数据传输。SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持。SSL协议可分为两层: SSL记录协议(SSL Record Protocol):它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。 SSL握手协议(SSL Handshake Protocol):它建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。

  2、SSL的主要作用

  1)认证用户和服务器,确保数据发送到正确的 客户机服务器
  2)加密数据以防止数据中途被窃取;
  3)维护数据的完整性,确保数据在传输过程中不被改变。
 
 
二、为ASP.NET CORE 程序启用SSL
  方法一
   1、获取pfx证书
  由于 ASP.NetCore默认服务器Kestrel不像iis Express那样会自动生成本地证书,所以就需要手动构建pfx证书.
(1)进入管理器:双击服务器证书选项,然后将证书导出。
 
 
(2)选中点击右键,选择导出

 

 2、修改Program中BuildWebHost以增加SSL支持

(1)添加配置文件hosts.json

 

 (2)修改Program中BuildWebHost以增加SSL支持

 1 public class Program
 2     {
 3         public static void Main(string[] args)
 4         {
 5             CreateWebHostBuilder(args).Build().Run();
 6         }
 7        
 8         public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
 9             WebHost.CreateDefaultBuilder(args)
10             //添加自定义配置文件
11             .ConfigureAppConfiguration((hostingContext, config) =>
12             {                
13                 config.AddJsonFile("hosts.json", false, true).AddJsonFile(string.Format("hosts.{0}.json", (object)hostingEnvironment.EnvironmentName), true, true);
14             }).UseStartup<Startup>();
15     }

方法二

可以参考https://blog.youkuaiyun.com/qq3401247010/article/details/78111488

转载于:https://www.cnblogs.com/qtiger/p/9510855.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值