将用户名 + 加密密码发送到 RESTful 服务

Posted

技术标签:

【中文标题】将用户名 + 加密密码发送到 RESTful 服务【英文标题】:Sending user name + encrypted password to a RESTful service 【发布时间】:2012-10-20 07:34:28 【问题描述】:

在我的应用程序中,我使用带有 javascript 客户端的 Spring MVC。现在是我需要向我的应用程序添加 4 眼验证表单的时候了。也就是说,必须有第二个人过来并输入他的用户名和密码,以验证某种敏感数据更新。然后系统将根据企业 LDAP 检查该人的用户名和密码,然后返回成功或失败。如果该人的身份验证失败,系统将通知用户无法删除/添加。如果成功,系统将执行更新。

我的问题是,既然所有的服务都是 RESTful 的,我怎样才能以最安全的方式实施这样的解决方案?我听说应该不惜一切代价避免使用 JavaScript API 加密密码并通过网络发送密码,因为任何中间人攻击都可能造成严重破坏。 我也不想使用 HTTPS,它只能用于代表我应用程序的 1% 的表单的目的。我应该去 Spring Security 吗?如果是这样,我如何将 Spring Security Web 表单集成到 JavaScript 框架中?任何想法或经验都将受到欢迎。

最好, 吉米

【问题讨论】:

【参考方案1】:

如果安全是一个问题,我会重新考虑你的“不想通过 https 和 ssl 来做”。

【讨论】:

【参考方案2】:

考虑挑战-响应机制。不会交换密码。

【讨论】:

以上是关于将用户名 + 加密密码发送到 RESTful 服务的主要内容,如果未能解决你的问题,请参考以下文章

将敏感信息安全地发送到 RESTful 服务

如何从 RESTful 服务发送安全令牌?

密码加密和通过网络发送的最佳方法[重复]

向服务器发送密码

MD5加密在用户注册时和用户登陆时怎么用?还有效验接收的文件时的问题

密码更改需要来自 RESTful 令牌服务的响应