java - 如何从休息服务验证用户

标签 java security authentication dropwizard

我正在尝试使用我使用删除向导构建的 REST 服务对用户进行身份验证。从前面的问题中,我在 github 上找到了使用 openID 进行身份验证的很好的例子:https://github.com/gary-rowe/DropwizardOpenID

但是,我现在不想处理 openID,只想让用户 1. 注册,2. 登录

我的问题/困惑是:

  1. 对于注册:我正在考虑将用户的用户名/密码作为 POST 请求发送,并将凭据作为表单参数或 JSON 正文的一部分。但是,这里以明文形式发送密码是否存在安全风险?

  2. 对于 Sing-in,我正在考虑在 Dropwizard 中使用 Authenticator

  3. 我不想以纯文本形式存储密码。 POST 明文获取用户密码后应该采取什么策略?我正在寻找一些可以协助密码加盐和 MD5 的 Java 库

最佳答案

感谢您对 Dropwizard OpenID 项目的大力支持。很高兴它能够帮助您入门。

如果您想要纯 Web 表单类型的方法,请查看我的另一个项目 MultiBit Merchant它提供了多种身份验证方法(Web 表单、HMAC、cookie)。

您需要仔细研究才能真正看到它的工作原理,因为该项目并非设计为演示本身,而是一项正在进行的工作。

加载项目后,寻找WebFormClientAuthenticator这将使您进入正确的区域。

Dropwizard 身份验证的一般原则 are discussed in this blog article .尽管它以 HMAC 为目标,但您可以使用前面引用的源代码轻松地将其调整为 Web 表单或 cookie。

这都是麻省理工学院的许可证,所以只要你需要就可以使用它。

关于java - 如何从休息服务验证用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20639844/

相关文章:

php - 如何创建一个使用 cookie 登录的 php 页面?

cordova - 如何使用刷新 token 通过 ADAL for Cordova 请求多个资源

我的网站的 Facebook 登录授权

java - Windows 7 SWT 表格选定行突出显示颜色

java - 检查当前使用哪个 ArrayAdapter Spinner

security - 沙盒脚本

javascript - 阻止用户在登录失败时读取 javascript 数据和文件

python - CSRF 攻击是否适用于 API?

java - 在 Java 中处理数组(两列)

java - 为什么这个数字解析器不能正确解析 double ?