加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ajax – 通过HTTPS提供单页应用程序的必要性

发布时间:2020-12-16 02:48:53 所属栏目:百科 来源:网络整理
导读:我目前正在开发一个单页面应用程序,该应用程序与托管在不同服务器上并使用SSL保护的REST api进行通信. 我想知道是否应该在服务于单页应用程序的服务器上设置SSL证书,或者只是在后端服务器上设置它就足够了,考虑以下因素: 单页面应用程序是用于在查询字符串
我目前正在开发一个单页面应用程序,该应用程序与托管在不同服务器上并使用SSL保护的REST api进行通信.

我想知道是否应该在服务于单页应用程序的服务器上设置SSL证书,或者只是在后端服务器上设置它就足够了,考虑以下因素:

>单页面应用程序是用于在查询字符串中使用机密令牌重置密码链接的端点.这些链接通过电子邮件发送给我的用户.当用户点击链接时,他的浏览器会请求单页面应用程序.因此,GET请求未加密,查询字符串也不加密.
>该应用程序然后要求用户输入新密码,这个新密码通过ajax发送到后端,后端受SSL保护.

所以我认为值得为我的单页应用程序设置SSL以确保第一个考虑因素的安全性,因为GET请求因此未加密,查询字符串也不是敏感信息.但是,如果仅考虑第二个考虑因素,则不需要它,因为单页面应用程序和后端之间的连接是通过SSL完成的(因为单页面应用程序使用Ajax与通过SSL保护的端点进行通信) .

我对吗?还是完全偏离了?谢谢!

解决方法

你的直觉是正确的.第一种和第二种情况之间唯一有效的区别在于:(1)您将敏感信息(令牌)发送到前端服务器,(2)您正在向后端服务器发送敏感信息(密码).因此,由于您要向两者发送敏感信息,因此它们都需要通过SSL保护.

如果前端服务器不受SSL保护,则可能是攻击途径:

>攻击者在用户在查询字符串中发送重置令牌时MITM前端服务器,攻击者可以访问重置令牌.
>在真实客户端发送密码重置请求之前,攻击者会将密码重置请求发送到后端服务器.
>攻击者将新密码发送到后端服务器.密码重置为攻击者知道的密码.

在任何情况下,攻击者都不得破坏后端服务器的SSL以在前端服务器上实现此攻击.当然后端服务器将从用户接收密码,因此它也需要SSL.简而言之,为了防止中间人攻击,您需要为两台服务器提供SSL.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读