:py:mod:`airflow.providers.google.common.utils.id_token_credentials`
====================================================================

.. py:module:: airflow.providers.google.common.utils.id_token_credentials

.. autoapi-nested-parse::

   You can execute this module to get ID Token.

       python -m airflow.providers.google.common.utils.id_token_credentials_provider

   To obtain info about this token, run the following commands:

       ID_TOKEN="$(python -m airflow.providers.google.common.utils.id_token_credentials)"
       curl "https://www.googleapis.com/oauth2/v3/tokeninfo?id_token=${ID_TOKEN}" -v

   .. spelling::

       RefreshError



Module Contents
---------------

Classes
~~~~~~~

.. autoapisummary::

   airflow.providers.google.common.utils.id_token_credentials.IDTokenCredentialsAdapter



Functions
~~~~~~~~~

.. autoapisummary::

   airflow.providers.google.common.utils.id_token_credentials.get_default_id_token_credentials



Attributes
~~~~~~~~~~

.. autoapisummary::

   airflow.providers.google.common.utils.id_token_credentials.request_adapter


.. py:class:: IDTokenCredentialsAdapter(credentials)

   Bases: :py:obj:`google.auth.credentials.Credentials`

   Convert Credentials with ``openid`` scope to IDTokenCredentials.

   .. py:property:: expired

      Checks if the credentials are expired.

      Note that credentials can be invalid but not expired because
      Credentials with :attr:`expiry` set to None is considered to never
      expire.


   .. py:method:: refresh(request)

      Refreshes the access token.

      Args:
          request (google.auth.transport.Request): The object used to make
              HTTP requests.

      Raises:
          google.auth.exceptions.RefreshError: If the credentials could
              not be refreshed.



.. py:function:: get_default_id_token_credentials(target_audience, request = None)

   Gets the default ID Token credentials for the current environment.

   `Application Default Credentials`_ provides an easy way to obtain credentials to call Google APIs for
   server-to-server or local applications.

   .. _Application Default Credentials: https://developers.google.com        /identity/protocols/application-default-credentials

   :param target_audience: The intended audience for these credentials.
   :param request: An object used to make HTTP requests. This is used to detect whether the application
           is running on Compute Engine. If not specified, then it will use the standard library http client
           to make requests.
   :return: the current environment's credentials.
   :rtype: google.auth.credentials.Credentials
   :raises ~google.auth.exceptions.DefaultCredentialsError:
       If no credentials were found, or if the credentials found were invalid.


.. py:data:: request_adapter
   

   

