class_docstr: Retrieves Airflow Connections or Variables from Azure Key Vault secrets.
  
  The Azure Key Vault can be configured as a secrets backend in the ``airflow.cfg``:
  
  .. code-block:: ini
  
      [secrets]
      backend = airflow.providers.microsoft.azure.secrets.key_vault.AzureKeyVaultBackend
      backend_kwargs = {"connections_prefix": "airflow-connections", "vault_url": "<azure_key_vault_uri>"}
  
  For example, if the secrets prefix is ``airflow-connections-smtp-default``, this would be accessible
  if you provide ``{"connections_prefix": "airflow-connections"}`` and request conn_id ``smtp-default``.
  And if variables prefix is ``airflow-variables-hello``, this would be accessible
  if you provide ``{"variables_prefix": "airflow-variables"}`` and request variable key ``hello``.
  
  For client authentication, the ``DefaultAzureCredential`` from the Azure Python SDK is used as
  credential provider, which supports service principal, managed identity and user credentials
  
  For example, to specify a service principal with secret you can set the environment variables
  ``AZURE_TENANT_ID``, ``AZURE_CLIENT_ID`` and ``AZURE_CLIENT_SECRET``.
  
  .. seealso::
      For more details on client authentication refer to the ``DefaultAzureCredential`` Class reference:
      https://docs.microsoft.com/en-us/python/api/azure-identity/azure.identity.defaultazurecredential?view=azure-python
  
  :param connections_prefix: Specifies the prefix of the secret to read to get Connections
      If set to None (null), requests for connections will not be sent to Azure Key Vault
  :param variables_prefix: Specifies the prefix of the secret to read to get Variables
      If set to None (null), requests for variables will not be sent to Azure Key Vault
  :param config_prefix: Specifies the prefix of the secret to read to get Variables.
      If set to None (null), requests for configurations will not be sent to Azure Key Vault
  :param vault_url: The URL of an Azure Key Vault to use
  :param sep: separator used to concatenate secret_prefix and secret_id. Default: "-"
  :param tenant_id: The tenant id of an Azure Key Vault to use.
      If not given, it falls back to ``DefaultAzureCredential``
  :param client_id: The client id of an Azure Key Vault to use.
      If not given, it falls back to ``DefaultAzureCredential``
  :param managed_identity_client_id: The client ID of a user-assigned managed identity.
      If provided with `workload_identity_tenant_id`, they'll pass to ``DefaultAzureCredential``.
  :param workload_identity_tenant_id: ID of the application's Microsoft Entra tenant.
      Also called its "directory" ID.
      If provided with `managed_identity_client_id`, they'll pass to ``DefaultAzureCredential``.
docstr: Get a serialized representation of Airflow Connection from an Azure Key Vault secret.
  
  :param conn_id: The Airflow connection id to retrieve
docstr_tok: ["Get","a","serialized","representation","of","Airflow","Connection","from","an","Azure","Key","Vault","secret",".",":","param","conn_id",":","The","Airflow","connection","id","to","retrieve"]
code: def get_conn_value(self, conn_id: str) -> str | None:
      """
      Get a serialized representation of Airflow Connection from an Azure Key Vault secret.
  
      :param conn_id: The Airflow connection id to retrieve
      """
      if self.connections_prefix is None:
          return None
  
      return self._get_secret(self.connections_prefix, conn_id)
  
imports: from __future__ import annotations
  import logging
  import os
  import warnings
  from functools import cached_property
  from azure.core.exceptions import ResourceNotFoundError
  from azure.identity import ClientSecretCredential, DefaultAzureCredential
  from azure.keyvault.secrets import SecretClient
  from airflow.exceptions import AirflowProviderDeprecationWarning
  from airflow.providers.microsoft.azure.utils import get_sync_default_azure_credential
  from airflow.secrets import BaseSecretsBackend
  from airflow.utils.log.logging_mixin import LoggingMixin
label_desc: Use image node_id 3 for calling the AzureKeyVaultBackend obj's underlying member method code with example usage: obj.get_conn_value(conn_id) and returns: self, None