Package org.minijax.security
Interface SecurityDao
- All Superinterfaces:
BaseDao
public interface SecurityDao extends BaseDao
-
Method Summary
Modifier and Type Method Description default voiddeleteUserSessionsByUser(java.util.UUID userId)Deletes all sessions for a user by user ID.default ApiKeyfindApiKeyByValue(java.lang.String value)Finds a API key by value.default java.util.List<ApiKey>findApiKeysByUser(SecurityUser user)Returns a list of API keys for the specified user.default PasswordChangeRequestfindPasswordChangeRequest(java.lang.String code)Finds a password change request by code.default <T extends SecurityUser>
TfindUserByEmail(java.lang.Class<T> entityClass, java.lang.String email)Finds a user by email address.default java.util.List<UserSession>readUserSessionsByUser(java.util.UUID userId)Returns a list of all sessions for a user by user ID.Methods inherited from interface org.minijax.dao.BaseDao
countAll, create, delete, getEntityManager, purge, read, readByHandle, readPage, update
-
Method Details
-
findApiKeysByUser
Returns a list of API keys for the specified user.- Parameters:
user- The user.- Returns:
- The list of API keys.
-
findApiKeyByValue
Finds a API key by value.- Parameters:
value- The API key value.- Returns:
- The API key on success; null on failure.
-
findUserByEmail
default <T extends SecurityUser> T findUserByEmail(java.lang.Class<T> entityClass, java.lang.String email)Finds a user by email address. Returns the user on success. Returns null on failure.- Parameters:
email- The user's email address.- Returns:
- the user on success; null on failure.
-
findPasswordChangeRequest
Finds a password change request by code.- Parameters:
code- The password change request code.- Returns:
- The password change request on success; null on failure.
-
readUserSessionsByUser
Returns a list of all sessions for a user by user ID. This can be used to show all locations and devices where a user is currently logged in.- Parameters:
userId- The user ID.
-
deleteUserSessionsByUser
default void deleteUserSessionsByUser(java.util.UUID userId)Deletes all sessions for a user by user ID. This should be used when there is evidence for potential security or cookie tampering.- Parameters:
userId- The user ID.
-