JanssenProject / JanssenProject/jans
Refresh token Expiration / Replay protection
- Dominant language
- Java
- Stars
- 648
- Forks
- 174
- Avg merge
- 1d 18h
- Merged PRs (30d)
- 110
Description
_nynymike commented on Jan 23, 2020_
We could add some features to make refresh tokens (RT) more flexible.
- Introduce a client | system property `OauthRefreshTokenUsage` with values `one-time`, `eternal`, `sliding`. Sliding extends the lifetime after each use. For example, RT has expiration in 30 days when it's issued, and each time it's used, the lifetime is extended 30 days.
- System | client property `AbsoluteRefreshTokenLifetime`
- System | client property `SlidingRefreshTokenLifetime`
- Introduce a system property `OauthRefreshTokenReplayProtection`: True | False; If true and RT is `one-time`, if the token is presented twice, revoke all access to the client/user combination. If False, just return access error.
Contributor guide
Assessment
This issue has not been assessed yet.