public interface

SecureUserTokenManager

com.atlassian.jira.user.SecureUserTokenManager
Known Indirect Subclasses

Class Overview

Provides the ability to generated and multiple secure tokens for a given user and type.

The token and type can then be resolved back to that user.

Tokens provided by these implementations should be generated securly (i.e. using com.atlassian.security.random.DefaultSecureTokenGenerator) expire after 30 minutes and only be available for use once!

Summary

Nested Classes
enum SecureUserTokenManager.TokenType Token will be usable only for types of requests specified via this enum  
Public Methods
String generateToken(ApplicationUser user, SecureUserTokenManager.TokenType tokenType)
Given a user and tokentype this method creates a new secure token and returns this token.
ApplicationUser useToken(String token, SecureUserTokenManager.TokenType tokenType)
Given a token and tokenType, this method returns the User that was mapped to this token and then revokes the token to ensure it can't be used again.

Public Methods

public String generateToken (ApplicationUser user, SecureUserTokenManager.TokenType tokenType)

Given a user and tokentype this method creates a new secure token and returns this token. A particular user can have multiple tokens mapped at any given time.

Parameters
user The user this token is for
tokenType The SecureUserTokenManager.TokenType for this token
Returns
  • A new token or null if no user was provided

public ApplicationUser useToken (String token, SecureUserTokenManager.TokenType tokenType)

Given a token and tokenType, this method returns the User that was mapped to this token and then revokes the token to ensure it can't be used again.

Parameters
token A secure token
tokenType The SecureUserTokenManager.TokenType for this token
Returns
  • The User mapped to this token, or null if no mapping can be found.