AbandonTech / AbandonTech/abandonauth
Short lived and one-time-use tokens for authentication endpoints
- Langage dominant
- Python
- Étoiles
- 4
- Forks
- 2
- Merge moyen
- 59 min
- PR mergées (30 j)
- 1
Description
## Summary
When a service attempts to login with abandonauth, they are given a temporary token that is used to identify them on the respective service. This token is currently a regular JWT with a relatively long lifetime, it can also be used multiple times to authenticate a single user. This is a security vulnerability. The token should be as short lived as possible and also only be valid for a single use.
## Acceptance Criteria
- Temporary JWTs have a very short lifespan, no more than 60 seconds
- We cache all the currently issued, valid and unused tokens on abandon auth
- An endpoint exists to check that a given token is in this cache of valid/unused tokens
- An endpoint exists to burn short-lives tokens (pop them from the cache of valid tokens)
- This allows a service to call the endpoint and burn a token that is known to be consumed
- Garbage collector exists to remove all unused and expired tokens from this cache
- This is to prevent the cache from becoming a memory leak
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Évaluation
Cette issue n'a pas encore été évaluée.