Partager via


@azure/identity package

Classes

AggregateAuthenticationError

Fournit un tableau errors contenant instance AuthenticationError pour les échecs d’authentification à partir d’informations d’identification dans une ChainedTokenCredential.

AuthenticationError

Fournit des détails sur l’échec de l’authentification auprès d’Azure Active Directory. Le champ errorResponse contient plus d’informations sur l’échec spécifique.

AuthenticationRequiredError

Erreur utilisée pour appliquer l’authentification après avoir essayé de récupérer un jeton en mode silencieux.

AuthorizationCodeCredential

Active l’authentification auprès de Microsoft Entra ID à l’aide d’un code d’autorisation obtenu via le flux de code d’autorisation, décrit plus en détail dans la documentation microsoft Entra ID :

https://learn.microsoft.com/entra/identity-platform/v2-oauth2-auth-code-flow

AzureCliCredential

Ces informations d’identification utilisent les informations de connexion utilisateur actuellement connectées via l’outil de ligne de commande Azure CLI ('az'). Pour ce faire, il lit le jeton d’accès utilisateur et expire avec la commande Azure CLI « az account get-access-token ».

AzureDeveloperCliCredential

Azure Developer CLI est un outil d’interface de ligne de commande qui permet aux développeurs de créer, gérer et déployer des ressources dans Azure. Il est basé sur Azure CLI et fournit des fonctionnalités supplémentaires spécifiques aux développeurs Azure. Il permet aux utilisateurs de s’authentifier en tant qu’utilisateur et/ou d’un principal de service sur Microsoft Entra ID. AzureDeveloperCliCredential s’authentifie dans un environnement de développement et acquiert un jeton pour le compte de l’utilisateur ou du principal de service connecté dans Azure Developer CLI. Il agit en tant que l’interface cli du développeur Azure connecté à l’utilisateur ou au principal du service et exécute une commande Azure CLI sous-jacente pour authentifier l’application sur l’ID Microsoft Entra.

Configurer AzureDeveloperCliCredential

Pour utiliser ces informations d’identification, le développeur doit s’authentifier localement dans Azure Developer CLI à l’aide de l’une des commandes ci-dessous :

  1. Exécutez « azd auth login » dans Azure Developer CLI pour s’authentifier de manière interactive en tant qu’utilisateur.
  2. Exécutez « azd auth login --client-id clientID --client-secret clientSecret --tenant-id tenantID » pour s’authentifier en tant que principal de service.

Vous devrez peut-être répéter ce processus après une certaine période, en fonction de la validité du jeton d’actualisation dans votre organisation. En règle générale, la période de validité du jeton d’actualisation est de quelques semaines à quelques mois. AzureDeveloperCliCredential vous invite à vous reconnecter.

AzurePipelinesCredential

Ces informations d’identification sont conçues pour être utilisées dans Azure Pipelines avec des connexions de service comme configuration pour la fédération des identités de charge de travail.

AzurePowerShellCredential

Ces informations d’identification utilisent les informations utilisateur actuellement connectées à partir du module Azure PowerShell. Pour ce faire, il lit le jeton d’accès utilisateur et expire avec la commande Azure PowerShell Get-AzAccessToken -ResourceUrl {ResourceScope}

ChainedTokenCredential

Permet à plusieurs implémentations de TokenCredential d’être essayées dans l’ordre jusqu’à ce que l’une des méthodes getToken retourne un jeton d’accès.

ClientAssertionCredential

Authentifie un principal de service avec une assertion JWT.

ClientCertificateCredential

Active l’authentification auprès de Microsoft Entra ID à l’aide d’un certificat encodé pem affecté à une inscription d’application. Vous trouverez plus d’informations sur la configuration de l’authentification par certificat ici :

https://learn.microsoft.com/en-us/azure/active-directory/develop/active-directory-certificate-credentials#register-your-certificate-with-azure-ad

ClientSecretCredential

Active l’authentification auprès de Microsoft Entra ID à l’aide d’une clé secrète client générée pour une inscription d’application. Vous trouverez plus d’informations sur la configuration d’une clé secrète client ici :

https://learn.microsoft.com/entra/identity-platform/quickstart-configure-app-access-web-apis#add-credentials-to-your-web-application

CredentialUnavailableError

Cela signifie que les informations d’identification qui ont été essayées dans des informations d’identification chaînées n’étaient pas disponibles pour être utilisées comme informations d’identification. Au lieu de traiter cela comme une erreur qui devrait arrêter la chaîne, elle est interceptée et la chaîne continue

DefaultAzureCredential

Fournit une configuration par défaut ChainedTokenCredential qui doit fonctionner pour la plupart des applications qui utilisent le Kit de développement logiciel (SDK) Azure.

DeviceCodeCredential

Active l’authentification auprès de Microsoft Entra ID à l’aide d’un code d’appareil que l’utilisateur peut entrer dans https://microsoft.com/devicelogin.

EnvironmentCredential

Active l’authentification auprès de Microsoft Entra ID à l’aide d’une clé secrète client ou d’un certificat, ou en tant qu’utilisateur avec un nom d’utilisateur et un mot de passe.

InteractiveBrowserCredential

Active l’authentification auprès de Microsoft Entra ID à l’intérieur du navigateur web à l’aide du flux de connexion interactif.

ManagedIdentityCredential

Tente l’authentification à l’aide d’une identité managée disponible dans l’environnement de déploiement. Ce type d’authentification fonctionne dans les machines virtuelles Azure, les instances App Service, les applications Azure Functions, Azure Kubernetes Services, les instances Azure Service Fabric et à l’intérieur d’Azure Cloud Shell.

Vous trouverez plus d’informations sur la configuration des identités managées ici : https://learn.microsoft.com/en-us/azure/active-directory/managed-identities-azure-resources/overview

OnBehalfOfCredential

Active l’authentification auprès de Microsoft Entra ID à l’aide de la au nom du flux.

UsernamePasswordCredential

Active l’authentification auprès de Microsoft Entra ID avec le nom d’utilisateur et le mot de passe d’un utilisateur. Ces informations d’identification nécessitent un niveau de confiance élevé. Vous ne devez donc l’utiliser que si d’autres types d’informations d’identification plus sécurisés ne peuvent pas être utilisés.

VisualStudioCodeCredential

Se connecte à Azure à l’aide des informations d’identification fournies par l’extension VSCode « Compte Azure ». Une fois que l’utilisateur s’est connecté via l’extension, ces informations d’identification peuvent partager le même jeton d’actualisation que celui mis en cache par l’extension.

Il s’agit d’un problème connu que ces informations d’identification ne fonctionnent pas avec extension de compte Azure versions plus récentes que 0.9.11. Une solution à long terme à ce problème est en cours. En attendant, envisagez d’authentifier avec AzureCliCredential.

WorkloadIdentityCredential

L’authentification d’identité de charge de travail est une fonctionnalité dans Azure qui permet aux applications s’exécutant sur des machines virtuelles d’accéder à d’autres ressources Azure sans avoir besoin d’un principal de service ou d’une identité managée. Avec l’authentification d’identité de charge de travail, les applications s’authentifient à l’aide de leur propre identité, plutôt que d’utiliser un principal de service partagé ou une identité managée. Sous le capot, l’authentification de l’identité de charge de travail utilise le concept d’informations d’identification du compte de service (SAP), qui sont automatiquement créées par Azure et stockées en toute sécurité dans la machine virtuelle. En utilisant l’authentification d’identité de charge de travail, vous pouvez éviter d’avoir à gérer et à faire pivoter les principaux de service ou les identités managées pour chaque application sur chaque machine virtuelle. En outre, étant donné que les SAP sont créées automatiquement et gérées par Azure, vous n’avez pas besoin de vous soucier du stockage et de la sécurisation des informations d’identification sensibles elles-mêmes. WorkloadIdentityCredential prend en charge l’authentification de l’ID de charge de travail Microsoft Entra sur Azure Kubernetes et acquiert un jeton à l’aide des sacs disponibles dans l’environnement Azure Kubernetes. Pour plus d’informations, consultez l’ID de charge de travail Microsoft Entra.

Interfaces

AccessToken

Représente un jeton d’accès avec un délai d’expiration.

AuthenticationRecord

Enregistrement à utiliser pour rechercher les jetons mis en cache dans le cache.

AuthenticationRequiredErrorOptions

Paramètres facultatifs pour l' AuthenticationRequiredError

AuthorityValidationOptions

Fournit des options pour configurer la façon dont la bibliothèque d’identité effectue la validation de l’autorité pendant les demandes d’authentification auprès de Microsoft Entra ID.

AuthorizationCodeCredentialOptions

Options du AuthorizationCodeCredential

AzureCliCredentialOptions

Options du AzureCliCredential

AzureDeveloperCliCredentialOptions

Options pour l' AzureDeveloperCliCredential

AzurePipelinesCredentialOptions

Paramètres facultatifs pour la classe AzurePipelinesCredential.

AzurePowerShellCredentialOptions

Options de l'azurePowerShellCredential

BrokerAuthOptions

Options de configuration pour InteractiveBrowserCredential pour prendre en charge l’authentification du répartiteur WAM.

BrokerDisabledOptions

Paramètres lorsque l’authentification du répartiteur WAM est désactivée.

BrokerEnabledOptions

Paramètres lorsque l’authentification du répartiteur WAM est activée.

BrowserCustomizationOptions

Options de configuration partagée pour la personnalisation du navigateur

ClientAssertionCredentialOptions

Options du clientAssertionCredential

ClientCertificateCredentialOptions

Paramètres facultatifs pour la classe clientCertificateCredential .

ClientCertificatePEMCertificate

Options de configuration requises pour l'clientCertificateCredential , avec le contenu de chaîne d’un certificat PEM

ClientCertificatePEMCertificatePath

Options de configuration requises pour l'clientCertificateCredential , avec le chemin d’accès à un certificat PEM.

ClientSecretCredentialOptions

Paramètres facultatifs pour la classe clientSecretCredential .

CredentialPersistenceOptions

Options de configuration partagée pour les informations d’identification qui prennent en charge la mise en cache des jetons persistants.

DefaultAzureCredentialClientIdOptions

Fournit des options pour configurer la classe DefaultAzureCredential. Cette variante prend en charge managedIdentityClientId et non managedIdentityResourceId, car une seule des deux est prise en charge.

DefaultAzureCredentialOptions

Fournit des options pour configurer la classe DefaultAzureCredential.

DefaultAzureCredentialResourceIdOptions

Fournit des options pour configurer la classe DefaultAzureCredential. Cette variante prend en charge managedIdentityResourceId et non managedIdentityClientId, car une seule des deux est prise en charge.

DeviceCodeCredentialOptions

Définit les options de la classe InteractiveBrowserCredential pour Node.js.

DeviceCodeInfo

Fournit le code utilisateur et l’URI de vérification où le code doit être entré. Fournit également un message à afficher à l’utilisateur qui contient une instruction avec ces détails.

EnvironmentCredentialOptions

Active l’authentification auprès de Microsoft Entra ID en fonction des variables d’environnement disponibles. Définit les options de la classe EnvironmentCredential.

ErrorResponse

Pour plus d’informations, consultez la documentation officielle :

https://learn.microsoft.com/en-us/azure/active-directory/develop/v1-protocols-oauth-code#error-response-1

REMARQUE : Cette documentation concerne la prise en charge d’OAuth v1, mais les mêmes détails de réponse d’erreur s’appliquent toujours à v2.

GetBearerTokenProviderOptions

Options de configuration du fournisseur de jetons.

GetTokenOptions

Définit les options de TokenCredential.getToken.

InteractiveBrowserCredentialInBrowserOptions

Définit les options courantes pour la classe InteractiveBrowserCredential.

InteractiveBrowserCredentialNodeOptions

Définit les options courantes pour la classe InteractiveBrowserCredential.

InteractiveCredentialOptions

Options de constructeur courantes pour les informations d’identification d’identité qui nécessitent une interaction utilisateur.

ManagedIdentityCredentialClientIdOptions

Options à envoyer sur le constructeur ManagedIdentityCredential. Cette variante prend en charge clientId et non resourceId, car une seule des deux est prise en charge.

ManagedIdentityCredentialResourceIdOptions

Options à envoyer sur le constructeur ManagedIdentityCredential. Cette variante prend en charge resourceId et non clientId, car une seule des deux est prise en charge.

MultiTenantTokenCredentialOptions

Options pour les applications multilocataires qui autorisent les locataires autorisés.

OnBehalfOfCredentialAssertionOptions

Définit les paramètres pour authentifier le OnBehalfOfCredential avec une assertion.

OnBehalfOfCredentialCertificateOptions

Définit les paramètres pour authentifier le OnBehalfOfCredential avec un certificat.

OnBehalfOfCredentialSecretOptions

Définit les paramètres pour authentifier le OnBehalfOfCredential avec un secret.

TokenCachePersistenceOptions

Paramètres qui activent la persistance du cache de jetons dans les informations d’identification d’identité.

TokenCredential

Représente des informations d’identification capables de fournir un jeton d’authentification.

TokenCredentialOptions

Fournit des options pour configurer la façon dont la bibliothèque d’identité envoie des demandes d’authentification à Microsoft Entra ID.

UsernamePasswordCredentialOptions

Définit les options de la classe UsernamePasswordCredential.

VisualStudioCodeCredentialOptions

Fournit des options pour configurer les informations d’identification Visual Studio Code.

WorkloadIdentityCredentialOptions

Options de WorkloadIdentityCredential

Alias de type

BrokerOptions

Paramètres qui activent l’authentification du répartiteur WAM dans InteractiveBrowserCredential.

BrowserLoginStyle

(Fonctionnalité de navigateur uniquement) Le « style de connexion » à utiliser dans le flux d’authentification :

  • La « redirection » redirige l’utilisateur vers la page d’authentification, puis les redirige vers la page une fois l’authentification terminée.
  • « fenêtre contextuelle » ouvre une nouvelle fenêtre de navigateur via laquelle le flux de redirection est lancé. La fenêtre de navigateur existante de l’utilisateur ne quitte pas la page active
ClientCertificateCredentialPEMConfiguration

Options de configuration requises pour l'clientCertificateCredential , avec le contenu de chaîne d’un certificat PEM ou le chemin d’accès à un certificat PEM.

DeviceCodePromptCallback

Définit la signature d’un rappel qui sera transmis à DeviceCodeCredential pour afficher les détails de l’authentification à l’utilisateur.

IdentityPlugin

Type d’un plug-in Azure Identity, fonction acceptant un contexte de plug-in.

OnBehalfOfCredentialOptions

Paramètres facultatifs pour la classe OnBehalfOfCredential.

Énumérations

AzureAuthorityHosts

Liste des hôtes d’autorité Azure connus

Functions

deserializeAuthenticationRecord(string)

Désérialise un enregistrement d’authentification sérialisé précédemment à partir d’une chaîne dans un objet.

La chaîne d’entrée doit contenir les propriétés suivantes :

  • « autorité »
  • « homeAccountId »
  • « clientId »
  • « tenantId »
  • « nom d’utilisateur »
  • « version »

Si la version que nous recevons n’est pas prise en charge, une erreur est levée.

Pour le moment, la seule version disponible est la suivante : « 1.0 », qui est toujours définie lorsque l’enregistrement d’authentification est sérialisé.

getBearerTokenProvider(TokenCredential, string | string[], GetBearerTokenProviderOptions)

Retourne un rappel qui fournit un jeton du porteur. Par exemple, le jeton du porteur peut être utilisé pour authentifier une demande comme suit :

import { DefaultAzureCredential } from "@azure/identity";

const credential = new DefaultAzureCredential();
const scope = "https://cognitiveservices.azure.com/.default";
const getAccessToken = getBearerTokenProvider(credential, scope);
const token = await getAccessToken();

// usage
const request = createPipelineRequest({ url: "https://example.com" });
request.headers.set("Authorization", `Bearer ${token}`);
getDefaultAzureCredential()

Retourne une nouvelle instance duDefaultAzureCredential .

serializeAuthenticationRecord(AuthenticationRecord)

Sérialise une AuthenticationRecord dans une chaîne.

La sortie d’un enregistrement d’authentification sérialisé contient les propriétés suivantes :

  • « autorité »
  • « homeAccountId »
  • « clientId »
  • « tenantId »
  • « nom d’utilisateur »
  • « version »

Pour convertir ultérieurement cette chaîne en AuthenticationRecordsérialisée, utilisez la fonction exportée deserializeAuthenticationRecord().

useIdentityPlugin(IdentityPlugin)

Étendez l’identité Azure avec des fonctionnalités supplémentaires. Transmettez un plug-in à partir d’un package de plug-in, par exemple :

  • @azure/identity-cache-persistence: fournit la mise en cache des jetons persistants
  • @azure/identity-vscode: fournit les dépendances de VisualStudioCodeCredential et l’active

Exemple:

import { cachePersistencePlugin } from "@azure/identity-cache-persistence";

import { useIdentityPlugin, DefaultAzureCredential } from "@azure/identity";
useIdentityPlugin(cachePersistencePlugin);

// The plugin has the capability to extend `DefaultAzureCredential` and to
// add middleware to the underlying credentials, such as persistence.
const credential = new DefaultAzureCredential({
  tokenCachePersistenceOptions: {
    enabled: true
  }
});

Informations relatives à la fonction

deserializeAuthenticationRecord(string)

Désérialise un enregistrement d’authentification sérialisé précédemment à partir d’une chaîne dans un objet.

La chaîne d’entrée doit contenir les propriétés suivantes :

  • « autorité »
  • « homeAccountId »
  • « clientId »
  • « tenantId »
  • « nom d’utilisateur »
  • « version »

Si la version que nous recevons n’est pas prise en charge, une erreur est levée.

Pour le moment, la seule version disponible est la suivante : « 1.0 », qui est toujours définie lorsque l’enregistrement d’authentification est sérialisé.

function deserializeAuthenticationRecord(serializedRecord: string): AuthenticationRecord

Paramètres

serializedRecord

string

Enregistrement d’authentification précédemment sérialisé en chaîne.

Retours

AuthenticationRecord.

getBearerTokenProvider(TokenCredential, string | string[], GetBearerTokenProviderOptions)

Retourne un rappel qui fournit un jeton du porteur. Par exemple, le jeton du porteur peut être utilisé pour authentifier une demande comme suit :

import { DefaultAzureCredential } from "@azure/identity";

const credential = new DefaultAzureCredential();
const scope = "https://cognitiveservices.azure.com/.default";
const getAccessToken = getBearerTokenProvider(credential, scope);
const token = await getAccessToken();

// usage
const request = createPipelineRequest({ url: "https://example.com" });
request.headers.set("Authorization", `Bearer ${token}`);
function getBearerTokenProvider(credential: TokenCredential, scopes: string | string[], options?: GetBearerTokenProviderOptions): () => Promise<string>

Paramètres

credential
TokenCredential

Informations d’identification utilisées pour authentifier la demande.

scopes

string | string[]

Étendues requises pour le jeton du porteur.

options
GetBearerTokenProviderOptions

Options de configuration du fournisseur de jetons.

Retours

() => Promise<string>

rappel qui fournit un jeton du porteur.

getDefaultAzureCredential()

Retourne une nouvelle instance duDefaultAzureCredential .

function getDefaultAzureCredential(): TokenCredential

Retours

serializeAuthenticationRecord(AuthenticationRecord)

Sérialise une AuthenticationRecord dans une chaîne.

La sortie d’un enregistrement d’authentification sérialisé contient les propriétés suivantes :

  • « autorité »
  • « homeAccountId »
  • « clientId »
  • « tenantId »
  • « nom d’utilisateur »
  • « version »

Pour convertir ultérieurement cette chaîne en AuthenticationRecordsérialisée, utilisez la fonction exportée deserializeAuthenticationRecord().

function serializeAuthenticationRecord(record: AuthenticationRecord): string

Paramètres

Retours

string

useIdentityPlugin(IdentityPlugin)

Étendez l’identité Azure avec des fonctionnalités supplémentaires. Transmettez un plug-in à partir d’un package de plug-in, par exemple :

  • @azure/identity-cache-persistence: fournit la mise en cache des jetons persistants
  • @azure/identity-vscode: fournit les dépendances de VisualStudioCodeCredential et l’active

Exemple:

import { cachePersistencePlugin } from "@azure/identity-cache-persistence";

import { useIdentityPlugin, DefaultAzureCredential } from "@azure/identity";
useIdentityPlugin(cachePersistencePlugin);

// The plugin has the capability to extend `DefaultAzureCredential` and to
// add middleware to the underlying credentials, such as persistence.
const credential = new DefaultAzureCredential({
  tokenCachePersistenceOptions: {
    enabled: true
  }
});
function useIdentityPlugin(plugin: IdentityPlugin)

Paramètres

plugin
IdentityPlugin

le plug-in à inscrire