如何隐藏通过HTTP请求收到的数据?

时间:2016-03-24 14:03:48

标签: angularjs rest security http

我目前正在使用AngularJS设计一个Web应用程序。在这里,我通过Rest API使用不同的方法获取和发布数据。我检索的数据以JSON的形式提取。

问题:
这里的问题是,当我使用 https 时,通过HTTP请求发送和接收的数据仍然可以在代理工具或流量监视器中看到。所有的JSON都可以从中轻松阅读 我的每个请求都在其标题中附加了令牌,用于处理身份验证。但是,一旦获得授权,有些部分我不想在这样的监控工具中显示/捕获。

问题:
这些数据以加密的方式存储在数据库中,但是当通过HTTP请求发送时,它首先被解密然后发送。如何隐藏/保护这些数据?

2 个答案:

答案 0 :(得分:5)

你不能。

如果您将其提供给客户,那么客户必须能够看到它。

如果用户已将其浏览器配置为代理请求,则代理是客户端。

一旦数据以HTTP响应离开您的服务器,那么客户端的用户想要信任该数据的任何/任何事物都可以访问它。那时你没有控制权。

答案 1 :(得分:0)

代理工具或流量监控器只有在客户通过安装MITM使用的ssl证书接受中间人(MITM)时才会看到https数据:

要查看https连接的内容(主机名除外),既不是客户端也不是服务器的人必须执行MITM。

如果某人使用不受客户信任的证书进行MITM,则客户端将拒绝该连接。

警告:如果服务器不使用HSTS,如果第一个连接是http,则执行MITM的人可以进行SSLSTRIP攻击。在这种情况下,MITM不需要可信证书,因为连接将保留为纯文本(http)