Package com.axelor.auth
Class UserTokenService
java.lang.Object
com.axelor.auth.UserTokenService
Service for managing API tokens for user authentication.
This service provides functionality to generate, rotate, and revoke API keys that are used for authenticating users via the API key authentication mechanism.
Key features of this service:
- Generates cryptographically secure random strings for keys and tokens
- Ensures uniqueness of generated keys and tokens
- Manages the lifecycle of user tokens (creation, rotation, revocation)
The service uses SecureRandom for generating random strings and AuthService
for encrypting tokens before storage.
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionUserTokenService(UserTokenRepository userTokenRepository, UserRepository userRepository) -
Method Summary
Modifier and TypeMethodDescriptioncreateUserToken(String name, LocalDateTime expiresAt, User owner) protected StringgenerateRandomString(int length) voidrevokeUserToken(UserToken userToken) rotateUserToken(UserToken userToken) protected UserToken
-
Field Details
-
TOKEN_KEY_LENGTH
public static final int TOKEN_KEY_LENGTH- See Also:
-
-
Constructor Details
-
UserTokenService
@Inject public UserTokenService(UserTokenRepository userTokenRepository, UserRepository userRepository)
-
-
Method Details
-
createUserToken
-
saveUserToken
-
rotateUserToken
-
revokeUserToken
-
generateRandomString
-