public class JdbcDbUserDao
extends io.inversion.action.security.AuthAction.JwtUserDao
User from the configured JdbcDb supporting user/group/role permissioning.
Usage requires a password encryption "salt" value be configured either explicitly or via a $name.salt environment var or system prop.
In this model, Users, Groups, and Roles can all be assigned Permissions. Users can Groups can both be assigned Roles and Users can be assigned to Groups. This means users can be assigned permissions through any one of the following relationship paths.
| Modifier and Type | Field and Description |
|---|---|
protected JdbcDb |
db |
protected java.lang.String |
name
Optional name param that is used for $name.salt
parameter configuration.
|
protected java.lang.String |
salt |
| Constructor and Description |
|---|
JdbcDbUserDao() |
JdbcDbUserDao(JdbcDb db) |
| Modifier and Type | Method and Description |
|---|---|
protected boolean |
checkPassword(java.lang.String actual,
java.lang.String supplied) |
protected io.inversion.utils.Rows |
findGRP(java.sql.Connection conn,
int userId,
java.lang.String api,
java.lang.String tenant) |
JdbcDb |
getDb() |
java.lang.String |
getName() |
java.lang.String |
getSalt() |
io.inversion.User |
getUser(io.inversion.action.security.AuthAction action,
java.lang.String username,
java.lang.String suppliedPassword,
java.lang.String apiName,
java.lang.String tenant) |
void |
setDb(JdbcDb db) |
void |
setName(java.lang.String name) |
static java.lang.String |
strongHash(java.lang.Object salt,
java.lang.String password) |
static java.lang.String |
weakHash(java.lang.String password) |
JdbcDbUserDao |
withDb(JdbcDb db) |
JdbcDbUserDao |
withSalt(java.lang.String salt) |
addPermsToUser, createUserFromValidJwt, getJwtSecrets, getRevokedTokenCache, getUser, signJwt, withRevokedTokenCacheprotected java.lang.String name
protected JdbcDb db
protected java.lang.String salt
public JdbcDbUserDao()
public JdbcDbUserDao(JdbcDb db)
public static java.lang.String strongHash(java.lang.Object salt,
java.lang.String password)
throws io.inversion.ApiException
io.inversion.ApiExceptionpublic static java.lang.String weakHash(java.lang.String password)
protected boolean checkPassword(java.lang.String actual,
java.lang.String supplied)
public io.inversion.User getUser(io.inversion.action.security.AuthAction action,
java.lang.String username,
java.lang.String suppliedPassword,
java.lang.String apiName,
java.lang.String tenant)
throws io.inversion.ApiException
getUser in interface io.inversion.action.security.AuthAction.UserDaogetUser in class io.inversion.action.security.AuthAction.JwtUserDaoio.inversion.ApiExceptionprotected io.inversion.utils.Rows findGRP(java.sql.Connection conn,
int userId,
java.lang.String api,
java.lang.String tenant)
throws java.lang.Exception
java.lang.Exceptionpublic JdbcDbUserDao withDb(JdbcDb db)
public JdbcDb getDb()
public void setDb(JdbcDb db)
public JdbcDbUserDao withSalt(java.lang.String salt)
public java.lang.String getSalt()
public java.lang.String getName()
public void setName(java.lang.String name)
Copyright © 2021 Rocket Partners, LLC. All rights reserved.