# keystone.application_credential.backends.base module

class keystone.application_credential.backends.base.ApplicationCredentialDriverBase

  Bases: `object`

  abstractmethod authenticate(application_credential_id, secret)

    Validate an application credential.

    Parameters:

      - application_credential_id (str) – Application Credential ID

      - secret (str) – Secret

    Raises:

      AssertionError – If id or secret is invalid.

  abstractmethod create_application_credential(application_credential, roles)

    Create a new application credential.

    Parameters:

      - application_credential (dict) – Application Credential data

      - roles (list) – A list of roles that apply to the application_credential.

    Returns:

      a new application credential

  abstractmethod delete_access_rule(access_rule_id)

    Delete one access rule.

    Parameters:

      access_rule_id (str) – Access Rule ID

  abstractmethod delete_access_rules_for_user(user_id)

    Delete all access rules for user.

    This is called when the user itself is deleted.

    Parameters:

      user_id (str) – User ID

  abstractmethod delete_application_credential(application_credential_id)

    Delete a single application credential.

    Parameters:

      application_credential_id (str) – ID of the application credential to delete.

  abstractmethod delete_application_credentials_for_user(user_id)

    Delete all application credentials for a user.

    Parameters:

      user_id – ID of a user to whose application credentials should be deleted.

  abstractmethod delete_application_credentials_for_user_on_project(user_id, project_id)

    Delete all application credentials for a user on a given project.

    Parameters:

      - user_id (str) – ID of a user to whose application credentials should be deleted.

      - project_id (str) – ID of a project on which to filter application credentials.

  abstractmethod get_access_rule(access_rule_id)

    Get an access rule by its ID.

    Parameters:

      access_rule_id (str) – Access Rule ID

  abstractmethod get_application_credential(application_credential_id)

    Get an application credential by the credential id.

    Parameters:

      application_credential_id (str) – Application Credential ID

  abstractmethod list_access_rules_for_user(user_id)

    List the access rules that a user has created.

    Access rules are only created as attributes of application credentials, they cannot be created independently.

    Parameters:

      user_id (str) – User ID

  abstractmethod list_application_credentials_for_user(user_id, hints)

    List application credentials for a user.

    Parameters:

      - user_id (str) – User ID

      - hints – contains the list of filters yet to be satisfied. Any filters satisfied here will be removed so that the caller will know if any filters remain.

this page last updated: 2026-06-11 21:50:20

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.

found an error? report a bug