推荐 原创 视频 Java开发 iOS开发 前端开发 JavaScript开发 Android开发 PHP开发 数据库 开发工具 Python开发 Kotlin开发 Ruby开发 .NET开发 服务器运维 开放平台 架构师 大数据 云计算 人工智能 开发语言 其它开发
Lambda在线 > 云服务圈 > 研发:http协议,什么是混合内容

研发:http协议,什么是混合内容

云服务圈 2018-10-26

什么是混合内容?

混合内容在以下情况下出现:初始 HTML 内容通过安全的 HTTPS 连接加载,但其他资源(例如,图像、视频、样式表、脚本)则通过不安全的 HTTP 连接加载。之所以称为混合内容,是因为同时加载了 HTTP 和 HTTPS 内容以显示同一个页面,且通过 HTTPS 加载的初始请求是安全的。现代浏览器会针对此类型的内容显示警告,以向用户表明此页面包含不安全的资源。

TL;DR

  • HTTPS 对于保护您的网站和用户免受攻击非常重要。

  • 混合内容会降低您的 HTTPS 网站的安全性和用户体验。

资源请求和网络浏览器

当浏览器访问网站的页面时,它将请求 HTML 资源。然后,网络服务器返回 HTML 内容,浏览器进行解析并显示给用户。通常,一个 HTML 文件不足以显示一个完整页面,因此,HTML 文件包含浏览器需要请求的其他资源的引用。这些子资源可以是图像、视频、额外 HTML、CSS 或 JavaScript 之类的资源;每个资源均使用单独的请求获取。

HTTPS 的优势

当浏览器通过 HTTPS(HTTP Secure 的缩写形式)请求资源时,它使用一个已加密连接与网络服务器进行通信。

使用 HTTPS 有三个主要优势:

  • 身份验证

  • 数据完整性

  • 保密性

身份验证

我正在访问的网站是正确的吗?

HTTPS 让浏览器检查并确保其已打开正确的网站,并且没有被重定向到恶意的网站。 当导航到您的银行网站时,您的浏览器对该网站进行身份验证,从而防止攻击者冒充您的银行窃取您的登录凭据。

数据完整性

是否有人篡改我正在发送或接收的内容?

HTTPS 让浏览器检测是否有攻击者更改了浏览器接收的任何数据。 使用您的银行网站转账时,这样做可防止当您的请求在传输中时攻击者更改目标帐号。

保密性

是否有人能看到我正在发送或接收的内容?

HTTPS 可防止攻击者窃取浏览器的请求,跟踪访问的网站或窃取已发送或接收的信息。

HTTPS、传输层安全协议 (TLS) 和 SSL

HTTPS 是 HTTP Secure 的缩写,即超文本传输安全协议。此处的 secure 部分来自于添加到浏览器发送和接收的请求的加密。目前大多数浏览器都使用传输层安全协议 (TLS) 提供加密;TLS有时称为 SSL。

本文不会详细介绍 HTTPS、传输层安全协议 (TLS) 和 SSL,但是,如果您想了解更多信息,可以先从以下资源入手:

  • Wikipedia HTTPS

  • Wikipedia TLS

  • 可汗学院 (Khan Academy) 的加密课程

混合内容会降低 HTTPS 的安全性

使用不安全的 HTTP 协议请求子资源会降低整个页面的安全性,因为这些请求容易受到中间人攻击,攻击者窃听网络连接,查看或修改双方的通信。通过使用这些资源,攻击者通常可以完全控制页面,而不只是泄露的资源。

尽管许多浏览器向用户报告混合内容警告,但出现警告时为时已晚:不安全的请求已被执行,且页面的安全性被破坏。遗憾的是,这种情况在网络中很普遍,正因如此,浏览器不能简单地阻止所有混合请求,否则将会限制许多网站的功能。


版权声明:本站内容全部来自于腾讯微信公众号,属第三方自助推荐收录。《研发:http协议,什么是混合内容》的版权归原作者「云计算与大数据」所有,文章言论观点不代表Lambda在线的观点, Lambda在线不承担任何法律责任。如需删除可联系QQ:516101458

文章来源: 阅读原文

相关阅读

关注云计算与大数据微信公众号

云计算与大数据微信公众号:heidcloud

云计算与大数据

手机扫描上方二维码即可关注云计算与大数据微信公众号

云计算与大数据最新文章

精品公众号随机推荐