pyeudiw.satosa.frontends.openid4vci.endpoints package

Submodules

pyeudiw.satosa.frontends.openid4vci.endpoints.authorization_endpoint module

pyeudiw.satosa.frontends.openid4vci.endpoints.base_credential_endpoint module

pyeudiw.satosa.frontends.openid4vci.endpoints.credential_endpoint module

pyeudiw.satosa.frontends.openid4vci.endpoints.credential_issuer_metadata_endpoint module

class pyeudiw.satosa.frontends.openid4vci.endpoints.credential_issuer_metadata_endpoint.CredentialIssuerMetadataHandler(config: dict, internal_attributes: dict[str, dict[str, str | list[str]]], base_url: str, name: str, *args)[source]

Bases: VCIBaseEndpoint

endpoint(context: Context) JsonResponse[source]

Handle request to the metadata endpoint.

Args:

context (Context): The SATOSA context.

Returns:

A Response object.

property metadata: dict
property openid_credential_issuer_metadata_as_dict: dict

Returns the entity configuration as a dictionary.

pyeudiw.satosa.frontends.openid4vci.endpoints.credential_offer_endpoint module

class pyeudiw.satosa.frontends.openid4vci.endpoints.credential_offer_endpoint.CredentialOfferHandler(config: dict, internal_attributes: dict[str, dict[str, str | list[str]]], base_url: str, name: str, *args)[source]

Bases: VCIBaseEndpoint

endpoint(context: Context)[source]

Handle a GET request to the credential_offer endpoint.

Args:

context (Context): The SATOSA context.

Returns:

A Response object.

pyeudiw.satosa.frontends.openid4vci.endpoints.credential_offer_qrcode_endpoint module

pyeudiw.satosa.frontends.openid4vci.endpoints.deferred_credential_endpoint module

pyeudiw.satosa.frontends.openid4vci.endpoints.metadata_endpoint module

class pyeudiw.satosa.frontends.openid4vci.endpoints.metadata_endpoint.MetadataHandler(config: dict, internal_attributes: dict[str, dict[str, str | list[str]]], base_url: str, name: str, *args)[source]

Bases: VCIBaseEndpoint

endpoint(context: Context) Response[source]

Handle request to the metadata endpoint.

Args:

context (Context): The SATOSA context.

Returns:

A Response object.

property entity_configuration: str

Returns the entity configuration as a JWT.

Returns:

The entity configuration

Return type:

str

property entity_configuration_as_dict: dict

Returns the entity configuration as a dictionary.

property metadata: dict

pyeudiw.satosa.frontends.openid4vci.endpoints.nonce_endpoint module

class pyeudiw.satosa.frontends.openid4vci.endpoints.nonce_endpoint.NonceHandler(config: dict, internal_attributes: dict[str, dict[str, str | list[str]]], base_url: str, name: str, *args)[source]

Bases: VCIBaseEndpoint

endpoint(context: Context) Response[source]

Handle a POST request to the nonce endpoint.

Args:

context (Context): The SATOSA context.

Returns:

A Response object.

pyeudiw.satosa.frontends.openid4vci.endpoints.notification_endpoint module

class pyeudiw.satosa.frontends.openid4vci.endpoints.notification_endpoint.NotificationHandler(config: dict, internal_attributes: dict[str, dict[str, str | list[str]]], base_url: str, name: str, *args)[source]

Bases: VCIBaseEndpoint

endpoint(context: Context) Response[source]

Handle a POST request to the notification endpoint.

Args:

context (Context): The SATOSA context.

Returns:

A Response object.

pyeudiw.satosa.frontends.openid4vci.endpoints.oauth_authorization_server_metadata_endpoint module

class pyeudiw.satosa.frontends.openid4vci.endpoints.oauth_authorization_server_metadata_endpoint.OauthAuthorizationServerMetadataHandler(config: dict, internal_attributes: dict[str, dict[str, str | list[str]]], base_url: str, name: str, *args)[source]

Bases: VCIBaseEndpoint

endpoint(context: Context) JsonResponse[source]

Handle request to the metadata endpoint.

Args:

context (Context): The SATOSA context.

Returns:

A Response object.

property oauth_authorization_server_metadata_as_dict: dict

Returns the OAuth authorization server metadata as a dictionary.

pyeudiw.satosa.frontends.openid4vci.endpoints.pushed_authorization_request_endpoint module

pyeudiw.satosa.frontends.openid4vci.endpoints.status_list_endpoint module

class pyeudiw.satosa.frontends.openid4vci.endpoints.status_list_endpoint.AcceptHeaderEnum(*values)[source]

Bases: Enum

STATUS_LIST_CWT = 'application/statuslist+cwt'
STATUS_LIST_JWT = 'application/statuslist+jwt'
class pyeudiw.satosa.frontends.openid4vci.endpoints.status_list_endpoint.StatusListHandler(config: dict, internal_attributes: dict[str, dict[str, str | list[str]]], base_url: str, name: str, *args)[source]

Bases: VCIBaseEndpoint

endpoint(context: Context)[source]

Handle the incoming request and return either a Redirect or Response.

This method must be implemented by subclasses to process the given context and return an appropriate HTTP response, such as a redirect to another URL or a standard HTTP response.

Args:

context (Context): The SATOSA context object containing the request and environment information.

Returns:

Redirect | Response: A Redirect or Response object depending on the logic implemented.

Raises:

NotImplementedError: If the method is not overridden by a subclass.

pyeudiw.satosa.frontends.openid4vci.endpoints.token_endpoint module

pyeudiw.satosa.frontends.openid4vci.endpoints.vci_base_endpoint module

class pyeudiw.satosa.frontends.openid4vci.endpoints.vci_base_endpoint.VCIBaseEndpoint(config: dict, internal_attributes: dict[str, dict[str, str | list[str]]], base_url: str, name: str, auth_callback: Callable[[Context, Any], Response] | None = None, converter: AttributeMapper | None = None)[source]

Bases: BaseEndpoint

property dpop_required: bool

Check if DPoD is required.

Returns:

bool: True if DPoD is required, False otherwise. Defaults to True.

property dpop_signing_alg_values_supported: list[str] | None

Get the supported DPoP signing algorithms.

Returns:

list[str]: List of supported DPoP signing algorithms.

property entity_id: str
property signed_par_request: str

Check if signed par request is required.

Returns:

str: “true”, “false” or “both”. Defaults to “true”.

property status_endpoint: str | None
property wallet_attestation_required: bool

Check if wallet attestation is required.

Returns:

bool: True if wallet_attestation is required, False otherwise. Defaults to True.

Module contents