Skip to content

castlecraft_engineer.application.auth._base

castlecraft_engineer.application.auth._base

AuthenticationServiceBase

Base class for AuthenticationService, declaring attributes expected by various mixin components.

Source code in src/castlecraft_engineer/application/auth/_base.py
class AuthenticationServiceBase:
    """
    Base class for AuthenticationService, declaring attributes
    expected by various mixin components.
    """

    _logger: logging.Logger
    _cache: Optional[_RedisClientForHint]
    _async_cache: Optional[_AsyncRedisClientForHint]  # This will be the resolved client
    _request_verify_ssl: bool

    # Configuration attributes (initialized in the main service class)
    JWKS_TTL_SEC: int
    DEFAULT_TOKEN_TTL_SEC: int
    ENABLE_BACKCHANNEL_LOGOUT: bool
    ENABLE_LOGOUT_BY_SUB: bool
    BACKCHANNEL_SID_MAP_TTL_SEC: int
    BACKCHANNEL_LOGOUT_TOKEN_ISS: Optional[str]
    BACKCHANNEL_LOGOUT_TOKEN_AUD: Optional[list[str] | str]
    BACKCHANNEL_SUB_MAP_TTL_SEC: int