AbandonTech / AbandonTech/abandonauth

Short lived and one-time-use tokens for authentication endpoints

Ouverte
#12 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
backend enhancement vulnerability
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.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.