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 String
generateRandomString
(int length) void
revokeUserToken
(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
-