request.authentication.base =========================== .. py:module:: request.authentication.base .. autoapi-nested-parse:: Provides base authentication class using the Composite pattern for modular authentication. Module Contents --------------- .. py:class:: AuthenticationComponent Bases: :py:obj:`abc.ABC` Abstract base class for authentication components. .. py:method:: authenticate(context) :abstractmethod: Authenticate a request using specific logic. .. py:class:: ClientCertificateAuthentication(*, domain_credential_only = True) Bases: :py:obj:`AuthenticationComponent`, :py:obj:`trustpoint.logger.LoggerMixin` Handles authentication via client certificates. .. py:attribute:: domain_credential_only :type: bool :value: True .. py:method:: authenticate(context) Authenticate using the client certificate from the context. .. py:class:: IDevIDAuthentication Bases: :py:obj:`AuthenticationComponent`, :py:obj:`trustpoint.logger.LoggerMixin` Handles authentication via IDevID certificates. .. py:method:: authenticate(context) Authenticate the request using the IDevID mechanism. .. py:class:: CompositeAuthentication Bases: :py:obj:`AuthenticationComponent`, :py:obj:`trustpoint.logger.LoggerMixin` Composite authenticator for grouping and executing multiple authentication methods. .. py:attribute:: components :type: list[AuthenticationComponent] :value: [] .. py:method:: add(component) Add an authentication component to the composite. .. py:method:: remove(component) Remove an authentication component from the composite. .. py:method:: authenticate(context) Authenticate the request using all registered components.