首页 > 其他分享 >netcore强制使用https,把所有的HTTP请求转换为HTTPS

netcore强制使用https,把所有的HTTP请求转换为HTTPS

时间:2023-03-22 12:34:19浏览次数:60  
标签:HTTP HTTPS netcore UseHsts https 回路 security


使用HTTPS

根据官方文档(​​https://docs.microsoft.com/en-us/aspnet/core/security/enforcing-ssl?view=aspnetcore-2.1&tabs=visual-studio#require-https​​), 它建议ASP.NET Core web应用都应该调用HTTPS重定向中间件, 这样就可以把所有的HTTP请求转换为HTTPS.

只需要在Startup的Configure方法里调用UseHttpsRedirection()方法即可:



UseHttpsRedirection


而在ConfigureServices方法里可以配置这个中间件:


AddHttpsRedirection


HSTS (HTTP 严格的传输安全协议)

web应用通过使用特殊的响应header可以选择使用加强的安全协议OWASP(Open Web Application Security Project), HSTS(HTTP Strict Transport Security). 当所支持的浏览器接收到这个header的时候, 浏览器就会阻止任何通过HTTP到指定域名的通信, 会使用HTTPS代替. 同时它也会阻止从浏览提的提示框点击的HTTPS.

为实现这个只需要在Startup的Configure里使用:

UseHsts


一般不建议在开发环境使用Hsts, 因为浏览器极有可能会缓存HSTS 的header. 默认情况下, UseHsts会排除本地回路的地址.

UseHsts会排除下列回路宿主:

  • ​localhost​​ : IPv4 回路地址.
  • ​127.0.0.1​​ : IPv4 回路地址.
  • ​[::1]​​ : IPv6 回路地址.

可以在ConfigureServices方法里对它进行配置:

addhsts


这部分具体请查看文档: ​​https://docs.microsoft.com/en-us/aspnet/core/security/enforcing-ssl?view=aspnetcore-2.1&tabs=visual-studio#http-strict-transport-security-protocol-hsts​

标签:HTTP,HTTPS,netcore,UseHsts,https,回路,security
From: https://blog.51cto.com/dupeng0811/6142395

相关文章

  • netcore读取、写入文件内容
    读取文件内容使用System.IO.StreamReader文档地址​​System.IO.StreamReader​​.FileStreamfileStream=newFileStream("file.txt",FileMode.Open);using(StreamRe......
  • 使用IDEA连接服务器,执行脚本/上传文件/连接数据库/模拟HTTP请求
    工欲善其事必先利其器所以最近使用开发的时候,由于测试环境太多,搞的人很是崩溃。开发的、测试的、回归问题的,不同的机器能测试侧重点不一样,使用的人不一样。结果一个bug出......
  • 深入浅出--梯度下降法及其实现 https://www.jianshu.com/p/c7e642877b0e
    深入浅出--梯度下降法及其实现六尺帐篷关注IP属地:上海612018.01.1721:06:22字数3,199阅读348,388梯度下降的场景假设梯度梯度下降算法的数学解释梯度下......
  • 浏览器背后的故事、HTTP协议的前世今生
    浏览器背后的故事HHTP超文本传输协议(HTTP)是一种通信协议,它允许将超文本标记语言(HTML)文挡从Web服务器传送到客户端的浏览器HTTP是一个属于应用层的面向对象的协议,由于其......
  • django admin 后台比如添加http超链接,直接点击访问
    如果后台添加了超链接,如默认带http或者https点击访问的时候可以直接打开,如不带,这默认则会自动加上默认的系统域名,导致打不开。如录入:www.baidu.com,点击打开的时候则会打开......
  • Http、Https、Http2、Http3
    一、概述Https通信过程:1.TCP三次握手2.TLS连接(加密)a.加密算法协商i.客户端罗列出自己有的加密算法传输给服务端ii.服务端从客户端加密算法套件......
  • 在http://ASP.NET Core中实现健康检查
    要实现运行状况检查,您需要在项目中安装 Microsoft.AspNetCore.Diagnostics.HealthChecks 。接下来,在ConfigureServices方法中添加运行状况检查中间件。publicvoi......
  • 彻底搞懂HTTP协议 - 天天造轮子
    你将Get的技能如何调戏百度服务器-用自己手写的HTTP协议 如何调戏Chrome浏览器-用自己手写的HTTP协议 了解HTTP协议与TCP协议的关系 了解HTTP协议的发明的动机 一个......
  • HTTP协议分析与Unity用法
    一、http协议简介http协议是HyperTextTransferProtocol(超文本传输协议)的缩写,是用于从万维网服务器传输超文本到本地浏览器的传送协议,使用TCP/IP通信协议传输数据,面向......
  • nginx做https域名映射
     ......