class_docstr: Retrieves Connections and Variables from Hashicorp Vault.
  
  Configurable via ``airflow.cfg`` as follows:
  
  .. code-block:: ini
  
      [secrets]
      backend = airflow.providers.hashicorp.secrets.vault.VaultBackend
      backend_kwargs = {
          "connections_path": "connections",
          "url": "http://127.0.0.1:8200",
          "mount_point": "airflow"
          }
  
  For example, if your keys are under ``connections`` path in ``airflow`` mount_point, this
  would be accessible if you provide ``{"connections_path": "connections"}`` and request
  conn_id ``smtp_default``.
  
  :param connections_path: Specifies the path of the secret to read to get Connections.
      (default: 'connections'). If set to None (null), requests for connections will not be sent to Vault.
  :param variables_path: Specifies the path of the secret to read to get Variable.
      (default: 'variables'). If set to None (null), requests for variables will not be sent to Vault.
  :param config_path: Specifies the path of the secret to read Airflow Configurations
      (default: 'config'). If set to None (null), requests for configurations will not be sent to Vault.
  :param url: Base URL for the Vault instance being addressed.
  :param auth_type: Authentication Type for Vault. Default is ``token``. Available values are:
      ('approle', 'aws_iam', 'azure', 'github', 'gcp', 'kubernetes', 'ldap', 'radius', 'token', 'userpass')
  :param auth_mount_point: It can be used to define mount_point for authentication chosen
        Default depends on the authentication method used.
  :param mount_point: The "path" the secret engine was mounted on. Default is "secret". Note that
       this mount_point is not used for authentication if authentication is done via a
       different engine. If set to None, the mount secret should be provided as a prefix for each
       variable/connection_id. For authentication mount_points see, auth_mount_point.
  :param kv_engine_version: Select the version of the engine to run (``1`` or ``2``, default: ``2``).
  :param token: Authentication token to include in requests sent to Vault.
      (for ``token`` and ``github`` auth_type)
  :param token_path: path to file containing authentication token to include in requests sent to Vault
      (for ``token`` and ``github`` auth_type).
  :param username: Username for Authentication (for ``ldap`` and ``userpass`` auth_type).
  :param password: Password for Authentication (for ``ldap`` and ``userpass`` auth_type).
  :param key_id: Key ID for Authentication (for ``aws_iam`` and ''azure`` auth_type).
  :param secret_id: Secret ID for Authentication (for ``approle``, ``aws_iam`` and ``azure`` auth_types).
  :param role_id: Role ID for Authentication (for ``approle``, ``aws_iam`` auth_types).
  :param kubernetes_role: Role for Authentication (for ``kubernetes`` auth_type).
  :param kubernetes_jwt_path: Path for kubernetes jwt token (for ``kubernetes`` auth_type, default:
      ``/var/run/secrets/kubernetes.io/serviceaccount/token``).
  :param gcp_key_path: Path to Google Cloud Service Account key file (JSON) (for ``gcp`` auth_type).
         Mutually exclusive with gcp_keyfile_dict.
  :param gcp_keyfile_dict: Dictionary of keyfile parameters. (for ``gcp`` auth_type).
         Mutually exclusive with gcp_key_path.
  :param gcp_scopes: Comma-separated string containing OAuth2 scopes (for ``gcp`` auth_type).
  :param azure_tenant_id: The tenant id for the Azure Active Directory (for ``azure`` auth_type).
  :param azure_resource: The configured URL for the application registered in Azure Active Directory
         (for ``azure`` auth_type).
  :param radius_host: Host for radius (for ``radius`` auth_type).
  :param radius_secret: Secret for radius (for ``radius`` auth_type).
  :param radius_port: Port for radius (for ``radius`` auth_type).
class_docstr_tok: ["Retrieves","Connections","and","Variables","from","Hashicorp","Vault",".","Configurable","via","``","airflow.cfg","``","as","follows",":","..","code-block",":",":","ini","[","secrets","]","backend","=","airflow.providers.hashicorp.secrets.vault.VaultBackend","backend_kwargs","=","{","``","connections_path","''",":","``","connections","''",",","``","url","''",":","``","http",":","\/\/127.0.0.1:8200","''",",","``","mount_point","''",":","``","airflow","''","}","For","example",",","if","your","keys","are","under","``","connections","``","path","in","``","airflow","``","mount_point",",","this","would","be","accessible","if","you","provide","``","{","``","connections_path","''",":","``","connections","''","}","``","and","request","conn_id","``","smtp_default","``",".",":","param","connections_path",":","Specifies","the","path","of","the","secret","to","read","to","get","Connections",".","(","default",":","'connections","'",")",".","If","set","to","None","(","null",")",",","requests","for","connections","will","not","be","sent","to","Vault",".",":","param","variables_path",":","Specifies","the","path","of","the","secret","to","read","to","get","Variable",".","(","default",":","'variables","'",")",".","If","set","to","None","(","null",")",",","requests","for","variables","will","not","be","sent","to","Vault",".",":","param","config_path",":","Specifies","the","path","of","the","secret","to","read","Airflow","Configurations","(","default",":","'config","'",")",".","If","set","to","None","(","null",")",",","requests","for","configurations","will","not","be","sent","to","Vault",".",":","param","url",":","Base","URL","for","the","Vault","instance","being","addressed",".",":","param","auth_type",":","Authentication","Type","for","Vault",".","Default","is","``","token","``",".","Available","values","are",":","(","'approle","'",",","'aws_iam","'",",","'azure","'",",","'github","'",",","'gcp","'",",","'kubernetes","'",",","'ldap","'",",","'radius","'",",","'token","'",",","'userpass","'",")",":","param","auth_mount_point",":","It","can","be","used","to","define","mount_point","for","authentication","chosen","Default","depends","on","the","authentication","method","used",".",":","param","mount_point",":","The","``","path","''","the","secret","engine","was","mounted","on",".","Default","is","``","secret","''",".","Note","that","this","mount_point","is","not","used","for","authentication","if","authentication","is","done","via","a","different","engine",".","If","set","to","None",",","the","mount","secret","should","be","provided","as","a","prefix","for","each","variable\/connection_id",".","For","authentication","mount_points","see",",","auth_mount_point",".",":","param","kv_engine_version",":","Select","the","version","of","the","engine","to","run","(","``","1","``","or","``","2","``",",","default",":","``","2","``",")",".",":","param","token",":","Authentication","token","to","include","in","requests","sent","to","Vault",".","(","for","``","token","``","and","``","github","``","auth_type",")",":","param","token_path",":","path","to","file","containing","authentication","token","to","include","in","requests","sent","to","Vault","(","for","``","token","``","and","``","github","``","auth_type",")",".",":","param","username",":","Username","for","Authentication","(","for","``","ldap","``","and","``","userpass","``","auth_type",")",".",":","param","password",":","Password","for","Authentication","(","for","``","ldap","``","and","``","userpass","``","auth_type",")",".",":","param","key_id",":","Key","ID","for","Authentication","(","for","``","aws_iam","``","and","``","azure","``","auth_type",")",".",":","param","secret_id",":","Secret","ID","for","Authentication","(","for","``","approle","``",",","``","aws_iam","``","and","``","azure","``","auth_types",")",".",":","param","role_id",":","Role","ID","for","Authentication","(","for","``","approle","``",",","``","aws_iam","``","auth_types",")",".",":","param","kubernetes_role",":","Role","for","Authentication","(","for","``","kubernetes","``","auth_type",")",".",":","param","kubernetes_jwt_path",":","Path","for","kubernetes","jwt","token","(","for","``","kubernetes","``","auth_type",",","default",":","``","\/var\/run\/secrets\/kubernetes.io\/serviceaccount\/token","``",")",".",":","param","gcp_key_path",":","Path","to","Google","Cloud","Service","Account","key","file","(","JSON",")","(","for","``","gcp","``","auth_type",")",".","Mutually","exclusive","with","gcp_keyfile_dict",".",":","param","gcp_keyfile_dict",":","Dictionary","of","keyfile","parameters",".","(","for","``","gcp","``","auth_type",")",".","Mutually","exclusive","with","gcp_key_path",".",":","param","gcp_scopes",":","Comma-separated","string","containing","OAuth2","scopes","(","for","``","gcp","``","auth_type",")",".",":","param","azure_tenant_id",":","The","tenant","id","for","the","Azure","Active","Directory","(","for","``","azure","``","auth_type",")",".",":","param","azure_resource",":","The","configured","URL","for","the","application","registered","in","Azure","Active","Directory","(","for","``","azure","``","auth_type",")",".",":","param","radius_host",":","Host","for","radius","(","for","``","radius","``","auth_type",")",".",":","param","radius_secret",":","Secret","for","radius","(","for","``","radius","``","auth_type",")",".",":","param","radius_port",":","Port","for","radius","(","for","``","radius","``","auth_type",")","."]
docstr: Get data from Vault.
  
  :return: The data from the Vault path if exists
docstr_tok: ["Get","data","from","Vault",".",":","return",":","The","data","from","the","Vault","path","if","exists"]
code: def get_response(self, conn_id: str) -> dict | None:
      """
      Get data from Vault.
  
      :return: The data from the Vault path if exists
      """
      mount_point, conn_key = self._parse_path(conn_id)
      if self.connections_path is None or conn_key is None:
          return None
      if self.connections_path == "":
          secret_path = conn_key
      else:
          secret_path = self.build_path(self.connections_path, conn_key)
      return self.vault_client.get_secret(
          secret_path=(mount_point + "/" if mount_point else "")
          + secret_path
      )
  
file_path: airflow/airflow/providers/hashicorp/secrets/vault.py
imports: from __future__ import annotations
  import warnings
  from typing import TYPE_CHECKING
  from airflow.exceptions import AirflowProviderDeprecationWarning
  from airflow.providers.hashicorp._internal_client.vault_client import _VaultClient
  from airflow.secrets import BaseSecretsBackend
  from airflow.utils.log.logging_mixin import LoggingMixin
label_desc: Use image node_id 3 for calling the VaultBackend obj's underlying member method code with example usage: obj.get_response(conn_id) and returns: self, None