与使用保存在浏览器中的用户名/密码的传统 HTTPS 登录表单相比,这提供了什么级别的安全性?
正如您从其他答案中收集的那样,HTTPS 隐藏了实际请求本身。连接到服务器时不会发送完整的 URL - url 的文档部分设置为如下所示的请求:
GET /login/reallysecure/thisismypassword
或更传统的:
POST /login
稍后在 HTTP 请求中以纯格式或作为多部分 mime 主体的一部分发送 POST 参数。
您可能没有想到的一个考虑因素是 url 访问通常由网络服务器记录,这意味着在任何时间点您都会说 3 天(根据您的日志保留策略进行调整)的用户名登录值距离您的系统一个 grep管理员。虽然这可以说是无关紧要的,因为对应用程序本身的修改可以毫不费力地转储普通的登录凭据,但现在有一个额外的保护因素 - 你备份你的日志吗?如果这些被盗怎么办?
更糟糕的是,如果有办法操纵您的服务器将日志返回给外部客户端,会发生什么?这是对安全性的巨大破坏,但与返回密码数据库不同,该数据库希望使用良好的散列技术来减轻(并且非常减轻)这种影响,URL 没有相同的保护 - 它只是即时的访问相关帐户。
这是 Thomas 已经强调的客户端风险的服务器端。