from rest_framework_simplejwt.authentication import JWTAuthentication from rest_framework_simplejwt.exceptions import InvalidToken class StatelessUser: """ Stateless user class for JWT authentication. Does not require database User model. """ def __init__(self, username): self.username = username self.is_authenticated = True def __str__(self): return self.username class StatelessJWTAuthentication(JWTAuthentication): """ Custom JWT authentication that extracts user from token's 'name' claim. """ def get_user(self, validated_token): name = validated_token.get("name") if not name: raise InvalidToken("Token does not contain 'name' claim.") return StatelessUser(username=name)