Для простоты я генерирую свой собственный токен аутентификации, используя UUID
, прежде чем шифровать весь токен с помощью Jasypt : -
String key = UUID.randomUUID().toString().toUpperCase() +
"|" + someImportantProjectToken +
"|" + userName +
"|" + creationDateTime;
StandardPBEStringEncryptor jasypt = new StandardPBEStringEncryptor();
...
// this is the authentication token user will send in order to use the web service
String authenticationToken = jasypt.encrypt(key);
Ключ содержит creationDateTime
, чтобы я мог использовать его для проверки времени жизни. Таким образом, если пользователь использует тот же токен аутентификации через X минут, он больше не будет работать, и я отправлю обратно запрещенный код 403.