Source code for cadrumo.application.auth_credentials
"""Typed certificate credentials passed from application orchestration to adapters."""from__future__importannotationsfrompathlibimportPathfrompydanticimportBaseModel,SecretStrfrom..core.configimportSettingsfrom..core.modelsimportSTRICT_FROZEN_CONFIGas_STRICT_FROZEN
[docs]classActiveCertificateCredentials(BaseModel):"""The exact certificate identity and secret selected for one auth attempt."""model_config=_STRICT_FROZENcertificate_path:Path|None=Nonepassword:SecretStr|None=Nonefriendly_name:str|None=Nonesource_name:str|None=None
[docs]defunnamed_certificate_credentials(settings:Settings)->ActiveCertificateCredentials:"""Build the typed credential for the unnamed single-certificate settings."""returnActiveCertificateCredentials(certificate_path=settings.cadrumo_certificate_path,password=settings.cadrumo_certificate_password_secret,friendly_name=settings.cadrumo_certificate_friendly_name,source_name=None,)