DefaultAzureCredential Classe
Informations d’identification par défaut capables de gérer la plupart des scénarios d’authentification du Kit de développement logiciel (SDK) Azure.
L’identité qu’il utilise dépend de l’environnement. Lorsqu’un jeton d’accès est nécessaire, il en demande un à l’aide de ces identités à son tour, en s’arrêtant lorsque l’on fournit un jeton :
Un principal de service configuré par des variables d’environnement. Consultez EnvironmentCredential pour plus d’informations.
WorkloadIdentityCredential si la configuration de la variable d’environnement est définie par le webhook d’identité de charge de travail Azure.
Une identité managée Azure. Consultez ManagedIdentityCredential pour plus d’informations.
Sur Windows uniquement : un utilisateur qui s’est connecté avec une application Microsoft, telle que Visual Studio. Si plusieurs identités se trouvent dans le cache, la valeur de la variable
AZURE_USERNAME
d’environnement est utilisée pour sélectionner l’identité à utiliser. Consultez SharedTokenCacheCredential pour plus d’informations.Identité actuellement connectée à Azure CLI.
Identité actuellement connectée à Azure PowerShell.
Identité actuellement connectée au Azure Developer CLI.
Ce comportement par défaut est configurable avec mot clé arguments.
- Héritage
-
azure.identity._credentials.chained.ChainedTokenCredentialDefaultAzureCredential
Constructeur
DefaultAzureCredential(**kwargs: Any)
Paramètres
- authority
- str
Autorité d’un point de terminaison Azure Active Directory, par exemple « login.microsoftonline.com », l’autorité pour le cloud public Azure (qui est la valeur par défaut). AzureAuthorityHosts définit les autorités pour d’autres clouds. Les identités managées ignorent cela, car elles résident dans un seul cloud.
- exclude_workload_identity_credential
- bool
Indique s’il faut exclure l’identité de charge de travail des informations d’identification. La valeur par défaut est False.
- exclude_developer_cli_credential
- bool
Indique s’il faut exclure le Azure Developer CLI des informations d’identification. La valeur par défaut est False.
- exclude_cli_credential
- bool
Indique s’il faut exclure Azure CLI des informations d’identification. La valeur par défaut est False.
- exclude_environment_credential
- bool
Indique s’il faut exclure d’informations d’identification un principal de service configuré par des variables d’environnement. La valeur par défaut est False.
- exclude_managed_identity_credential
- bool
Indique s’il faut exclure l’identité managée des informations d’identification. La valeur par défaut est False.
- exclude_powershell_credential
- bool
Indique s’il faut exclure Azure PowerShell. La valeur par défaut est False.
- exclude_visual_studio_code_credential
- bool
Indique s’il faut exclure les informations d’identification stockées de VS Code. La valeur par défaut est True.
- exclude_shared_token_cache_credential
- bool
Indique s’il faut exclure le cache de jetons partagé. La valeur par défaut est False.
- exclude_interactive_browser_credential
- bool
Indique s’il faut exclure l’authentification interactive par navigateur (voir InteractiveBrowserCredential). La valeur par défaut est True.
- interactive_browser_tenant_id
- str
ID de locataire à utiliser lors de l’authentification d’un utilisateur via InteractiveBrowserCredential. Par défaut, la valeur de la variable d’environnement AZURE_TENANT_ID, le cas échéant. S’il n’est pas spécifié, les utilisateurs s’authentifient dans leurs locataires d’origine.
- managed_identity_client_id
- str
ID de client d’une identité managée affectée par l’utilisateur. Par défaut, la valeur de la variable d’environnement AZURE_CLIENT_ID, le cas échéant. Si elle n’est pas spécifiée, une identité affectée par le système est utilisée.
- workload_identity_client_id
- str
ID client d’une identité affectée au pod. Par défaut, la valeur de la variable d’environnement AZURE_CLIENT_ID, le cas échéant. Si elle n’est pas spécifiée, l’identité par défaut du pod est utilisée.
- workload_identity_tenant_id
- str
Locataire préféré pour WorkloadIdentityCredential. Par défaut, la valeur de la variable d’environnement AZURE_TENANT_ID, le cas échéant.
- interactive_browser_client_id
- str
ID client à utiliser dans les informations d’identification interactives du navigateur. S’il n’est pas spécifié, les utilisateurs s’authentifient auprès d’une application de développement Azure.
- shared_cache_username
- str
Nom d’utilisateur préféré pour SharedTokenCacheCredential. Par défaut, la valeur de la variable d’environnement AZURE_USERNAME, le cas échéant.
- shared_cache_tenant_id
- str
Locataire préféré pour SharedTokenCacheCredential. Par défaut, la valeur de la variable d’environnement AZURE_TENANT_ID, le cas échéant.
- visual_studio_code_tenant_id
- str
ID de locataire à utiliser lors de l’authentification avec VisualStudioCodeCredential. Par défaut, le paramètre « Azure : Locataire » dans les paramètres utilisateur de VS Code ou, lorsque ce paramètre n’a aucune valeur, le locataire « organisations », qui prend uniquement en charge les comptes professionnels ou scolaires Azure Active Directory.
- process_timeout
- int
Délai d’expiration en secondes à utiliser pour les informations d’identification du développeur qui exécutent des sous-processus (par exemple, AzureCliCredential, AzurePowerShellCredential). Valeur par défaut : 10 secondes.
Exemples
Créez un DefaultAzureCredential.
from azure.identity import DefaultAzureCredential
credential = DefaultAzureCredential()
Méthodes
close |
Fermez la session de transport de chaque informations d’identification dans la chaîne. |
get_token |
Demandez un jeton d’accès pour les étendues. Cette méthode est appelée automatiquement par les clients du Kit de développement logiciel (SDK) Azure. |
close
Fermez la session de transport de chaque informations d’identification dans la chaîne.
close() -> None
get_token
Demandez un jeton d’accès pour les étendues.
Cette méthode est appelée automatiquement par les clients du Kit de développement logiciel (SDK) Azure.
get_token(*scopes: str, claims: str | None = None, tenant_id: str | None = None, **kwargs: Any) -> AccessToken
Paramètres
- scopes
- str
étendues souhaitées pour le jeton d’accès. Cette méthode nécessite au moins une étendue. Pour plus d’informations sur les étendues, consultez https://learn.microsoft.com/azure/active-directory/develop/scopes-oidc.
- claims
- str
revendications supplémentaires requises dans le jeton, telles que celles retournées dans la contestation de revendications d’un fournisseur de ressources suite à un échec d’autorisation.
- tenant_id
- str
locataire facultatif à inclure dans la demande de jeton.
Retours
Jeton d’accès avec les étendues souhaitées.
Type de retour
Exceptions
échec de l’authentification. L’exception a un attribut de message répertoriant chaque tentative d’authentification et son message d’erreur.