Interface TokenAuthenticationService
- All Superinterfaces:
Serializable
- All Known Implementing Classes:
TokenAuthenticationServiceImpl
Typically, the service is called by the TokenAuthenticationServlet
to get a token from the user information
passed as request parameters, and it allows the TokenAuthenticator
to check for a valid identity given a
token passed as a request header.
- Since:
- 5.7
- Author:
- Antoine Taillefer ([email protected])
-
Method Summary
Modifier and TypeMethodDescriptionacquireToken
(String userName, String applicationName, String deviceId, String deviceDescription, String permission) Acquires a unique token for the specified user, application, and device.acquireToken
(javax.servlet.http.HttpServletRequest request) Acquires a unique token for the specified request.Gets the token for the specified user, application, and device.getTokenBindings
(String userName) Gets the token bindings for the specified user.getTokenBindings
(String userName, String applicationName) Gets the token bindings for the specified user and application.getUserName
(String token) Gets the user name bound to the specified token.void
revokeToken
(String token) Removes the token from the back-end.
-
Method Details
-
acquireToken
String acquireToken(String userName, String applicationName, String deviceId, String deviceDescription, String permission) throws TokenAuthenticationException Acquires a unique token for the specified user, application, and device.If such a token exist in the back-end for the specified (userName, applicationName, deviceId) triplet, just returns it, else generates it and stores it in the back-end with the triplet attributes, the specified device description and permission.
- Throws:
TokenAuthenticationException
- if one of the required parameters is null or empty (all parameters are required except for the device description)NuxeoException
- if multiple tokens are found for the same triplet
-
acquireToken
String acquireToken(javax.servlet.http.HttpServletRequest request) throws TokenAuthenticationException Acquires a unique token for the specified request.Parameters needed (applicationName, deviceId, deviceDescription, permission) to acquire the token are extracted from the request itself.
If such a token exist in the back-end for the specified (userName, applicationName, deviceId) triplet, just returns it, else generates it and stores it in the back-end with the triplet attributes, the specified device description and permission.
- Returns:
- a token or null for no principal or for anonymous principal unless 'allowAnonymous' parameter is explicitly set to true in the authentication plugin configuration.
- Throws:
TokenAuthenticationException
- if one of the required parameters is null or empty (all parameters are required except for the device description)NuxeoException
- if multiple tokens are found for the same triplet- Since:
- 8.3
-
getToken
String getToken(String userName, String applicationName, String deviceId) throws TokenAuthenticationException Gets the token for the specified user, application, and device.- Returns:
- null if such a token doesn't exist
- Throws:
TokenAuthenticationException
- if one of the required parameters is null or empty (all parameters are required except for the device description)NuxeoException
- if multiple tokens are found for the same (userName, applicationName, deviceId) triplet
-
getUserName
Gets the user name bound to the specified token.- Returns:
- The user name bound to the specified token, or null if the token does not exist in the back-end.
-
revokeToken
Removes the token from the back-end. -
getTokenBindings
Gets the token bindings for the specified user. -
getTokenBindings
Gets the token bindings for the specified user and application.- Since:
- 8.3
-