关于Web服务:REST请求标头是否已通过SSL加密?

关于Web服务:REST请求标头是否已通过SSL加密?

Are REST request headers encrypted by SSL?

我正在开发将通过休息进行通信的客户端/服务器应用程序。 一些自定义请求数据将存储在请求的标头中。 发送请求的服务器和接收服务器都具有SSL证书-标头会被加密还是仅被加密?


SSL会加密从客户端到服务器再到服务器的整个通信路径,因此可以-头将被加密。

顺便说一句,如果您开发网络应用程序并关心数据安全性,那么您至少应该读一本书,如Niels Ferguson和Bruce Schneier撰写的《实用密码学》,而进一步阅读更着重于Web应用程序安全性的书可能会是一件好事。理念。如果我可以观察一下,请(我不是说作为个人批评),您的问题表明根本缺乏对非常基本的Web安全技术的理解,这永远不是一个好兆头。

同样,确认假定已加密的数据确实已加密绝对不是一个坏主意。您可以使用网络分析仪来监视网络上的流量,并注意任何明文发送的敏感内容。我以前曾使用Wireshark进行此操作-有时结果可能令人惊讶。


只要您在SSL隧道中进行通信,服务器和客户端之间发送的所有内容都会被加密。加密在发送或接收任何数据之前完成。


标头和内容均已加密。


您似乎认为REST是一种独特的协议。

REST不是协议。这是基于HTTP的应用程序的设计风格。

因此,您正在编写一个HTTP应用程序。标头是否已加密?是的,如果您使用的是HTTPS(基于SSL的HTTP)协议而不是纯HTTP。

双方都有证书与您的问题没有直接关系。 SSL证书用于身份验证。它们有助于检测中间人攻击,例如使用DNS缓存中毒可能发生的攻击。


仅凭证书是不够的,您必须配置Web服务器以加密该域或虚拟主机的连接(即使用证书)。另外,我认为您只需要一个证书,对请求的响应仍将被加密。

是的,HTTP标头和数据都被加密。


其他答案是正确的,即使用SSL时,标头确实与主体一起被加密。但是请记住,可能包含查询参数的URL永远不会被加密。因此,请注意不要在URL查询参数中放置任何敏感信息。

更新:如下@blowdart指出的那样,这是错误的。请参阅下面的评论。


SSL ..或更确切地说,HTTPS(基于SSL的HTTP)通过SSL发送所有HTTP内容,并且由于HTTP内容和标头实际上是同一件事,因此这意味着标头也已加密。
看到GET和POST数据是通过HTTP标头发送的,那么这才有意义,然后在安全发送数据时,您不只是希望对响应代码或内容进行加密。


并非所有内容都被加密:请求查询字符串未加密。相信我,我已经看到过这样的要求:

https://mydomain.com/authenticate?user=username&password=MyStrongPasswordSentInTheClear

请不要在查询字符串中放入敏感数据作为参数。


推荐阅读

    linux转发请求命令?

    linux转发请求命令?,系统,工作,密码,网络,服务,信息,工具,项目,状态,标准,关

    linux开机服务命令行?

    linux开机服务命令行?,系统,工作,地址,信息,服务,设备,数字,第一,设计,发行,l

    linux服务器分区命令?

    linux服务器分区命令?,系统,管理,信息,设备,时间,命令,基础,首次,平均,情况,l

    linux下看服务的命令?

    linux下看服务的命令?,服务,状态,系统,名称,信息,工具,命令,环境,网络,情况,

    linux服务器上传命令?

    linux服务器上传命令?,服务,软件,平台,数据,工具,系统,手机,电脑,设备,官网,

    linux服务更新命令?

    linux服务更新命令?,系统,工作,地址,信息,服务,命令,设备,标准,目录,功能,lin

    linux重新服务命令?

    linux重新服务命令?,服务,系统,网络,标准,工作,设备,命令,名称,信息,网络服

    linux加密压缩命令?

    linux加密压缩命令?,系统,网络,基础,管理,基础知识,积极,发展,下来,材料,电

    linux网络服务器命令?

    linux网络服务器命令?,地址,网络,系统,名称,信息,工具,状态,中心,灵活,基础,l

    linux网络服务器命令?

    linux网络服务器命令?,地址,网络,系统,名称,信息,工具,状态,中心,灵活,基础,l

    linux加密压缩命令?

    linux加密压缩命令?,系统,网络,基础,管理,基础知识,积极,发展,下来,材料,电

    linux模拟请求命令?

    linux模拟请求命令?,地址,工作,系统,工具,信息,标准,命令,目录,发行,数据,lin

    linux服务器基本命令?

    linux服务器基本命令?,地址,系统,设备,网络,工作,标准,信息,电脑,命令,密码,l

    linux服务器下载命令?

    linux服务器下载命令?,服务,密码,系统,档案,工具,网络,公共,百度,地址,认证,l

    linux命令怎么停服务?

    linux命令怎么停服务?,服务,系统,状态,代码,跨行,软件,情况,第一,名称,命令,l

    linux服务端退出命令?

    linux服务端退出命令?,档案,命令,环境,异常,标准,网络,模式,终端,编辑,文件,l

    linux中启动服务命令?

    linux中启动服务命令?,服务,系统,命令,信息,工作,设备,网络,标准,名称,密码,l

    linux服务器常用命令?

    linux服务器常用命令?,工作,系统,地址,信息,命令,目录,管理,标准,设备,功能,

    linux筛选服务命令?

    linux筛选服务命令?,服务,系统,状态,软件,环境,主体,技术,号码,发行,名称,查

    linux服务器保存命令?

    linux服务器保存命令?,时间,状态,档案,电脑,命令,信息,位置,编辑,文件,模式,L