-
Notifications
You must be signed in to change notification settings - Fork 701
关于用户认证
Jeff Zhu edited this page May 30, 2018
·
6 revisions
Saturn3.0.0开始,Console支持用户登录认证。但用户注册功能不在Scope里面,这意味着用户注册需要用户自行实现。
Saturn当前支持2类认证手段:明文(plaintext)和PBKDF2WithHmacSHA1.
可以通过设置JVM property “-Dauthentication.hash”改变算法,默认是plaintext(明文)。如果authentication.hash非上述2种,会返回异常。
注意,明文仅作测试用途,不建议上生产。
在定制用户注册功能时,请务必保证用户信息持久化到数据库的user表里面。其中,password字段用于保存密码。
密码存储格式需要结合认证的方式。
如果是明文认证,则password存放的是明文。 如果是使用PBKDF2WithHmacSHA1,则格式为:
<code1>$<code2>
- code1: 使用PBKDF2WithHmacSHA1生成的密码在经过encode后的值
- code2: 盐encode后的值
实现用户注册时,可以使用com.vip.saturn.job.console.utils.PasswordUtils.genPassword(password, salt, algorithm)或者com.vip.saturn.job.console.utils.PasswordUtils.genPassword(password, algorithm)方法生成密码,并持久化到数据库。其中,password是明文密码,salt是盐,algorithm即上面提到的算法。