安全方面是否存在差异,在查询字符串中发送用户名和密码,而不是将其作为复杂对象发送到POST
的正文中?
我正在使用HTTPS
。
例如:
myservices.com/auth?username=myname&password=mypass
与从请求中获取Stream并将其反序列化为对象?
由于该方法为POST
并使用HTTPS
,这有关系吗?
答案 0 :(得分:2)
存在巨大差异。查询字符串是URL的一部分。它位于浏览器历史记录和明文地址栏中。已知的攻击可以检查浏览器的历史记录。不要将敏感数据放在URL中。
答案 1 :(得分:1)
我会在之前的答案中添加一件事。 URL也很可能最终出现在服务器访问日志中。因此,URL中的敏感信息将以明文形式存储在服务器日志中(而不是仅在某个地方的db中加密/散列)。
答案 2 :(得分:0)
通过HTTPS发送信息的方式是
"adaadnajdkbjkbdbk27y27672323gyu2gugsgjuguq2e2eh2t67878et27tshjdgjg32766t17te76tgeuyg1et617e67t281te8t128et71te56t1267e71dvdhj12d672d7f12fd712dgugvduv217df76127dr6217712d6721dr716rd671r672d"
无论GET或POST方法如何,唯一的区别是您的敏感数据将在URL中公开。我不建议使用它,因为您的浏览器历史记录将存储可由黑客提取的敏感数据。