Files
cpl/src/cpl-auth/cpl/auth/keycloak/keycloak_client.py
edraft 6639946346
All checks were successful
Test before pr merge / test-lint (pull_request) Successful in 6s
Improved wrapped logging #187
2025-09-23 23:34:45 +02:00

24 lines
691 B
Python

from typing import Optional
from keycloak import KeycloakOpenID
from cpl.auth.logger import AuthLogger
from cpl.auth.keycloak_settings import KeycloakSettings
class KeycloakClient(KeycloakOpenID):
def __init__(self, logger: AuthLogger, settings: KeycloakSettings):
KeycloakOpenID.__init__(
self,
server_url=settings.url,
client_id=settings.client_id,
realm_name=settings.realm,
client_secret_key=settings.client_secret,
)
logger.info("Initializing Keycloak client")
def get_user_id(self, token: str) -> Optional[str]:
info = self.introspect(token)
return info.get("sub", None)