Freigeben über


@azure/identity package

Klassen

AggregateAuthenticationError

Stellt ein errors Array bereit, das AuthenticationError Instanz für Authentifizierungsfehler aus Anmeldeinformationen in einer ChainedTokenCredential-enthält.

AuthenticationError

Enthält Details zu einem Fehler bei der Authentifizierung bei Azure Active Directory. Das feld errorResponse enthält weitere Details zum spezifischen Fehler.

AuthenticationRequiredError

Fehler, der zum Erzwingen der Authentifizierung verwendet wird, nachdem versucht wurde, ein Token im Hintergrund abzurufen.

AuthorizationCodeCredential

Ermöglicht die Authentifizierung für Microsoft Entra-ID mithilfe eines Autorisierungscodes, der über den Autorisierungscodefluss abgerufen wurde, der in der Dokumentation zur Microsoft Entra-ID ausführlicher beschrieben wird:

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

AzureCliCredential

Diese Anmeldeinformationen verwenden die aktuell angemeldeten Benutzeranmeldeinformationen über das Befehlszeilentool Azure CLI (az'). Dazu liest er das Benutzerzugriffstoken und läuft mit dem Azure CLI-Befehl "az account get-access-token" ab.

AzureDeveloperCliCredential

Azure Developer CLI ist ein Befehlszeilenschnittstellentool, mit dem Entwickler Ressourcen in Azure erstellen, verwalten und bereitstellen können. Sie basiert auf der Azure CLI und bietet zusätzliche Funktionen speziell für Azure-Entwickler. Benutzer können sich als Benutzer und/oder Dienstprinzipal bei Microsoft Entra IDauthentifizieren. AzureDeveloperCliCredential authentifiziert sich in einer Entwicklungsumgebung und erwirbt ein Token im Namen des angemeldeten Benutzers oder Dienstprinzipals in der Azure Developer CLI. Sie fungiert als der Azure Developer CLI, der sich im Benutzer- oder Dienstprinzipal angemeldet hat, und führt einen darunter liegenden Azure CLI-Befehl aus, um die Anwendung gegen die Microsoft Entra-ID zu authentifizieren.

Konfigurieren von AzureDeveloperCliCredential

Um diese Anmeldeinformationen zu verwenden, muss sich der Entwickler lokal in der Azure Developer CLI mithilfe eines der folgenden Befehle authentifizieren:

  1. Führen Sie "azd auth login" in Azure Developer CLI aus, um sich interaktiv als Benutzer zu authentifizieren.
  2. Führen Sie "azd auth login --client-id clientID --client-secret clientSecret --tenant-id tenant-id tenantID" aus, um sich als Dienstprinzipal zu authentifizieren.

Möglicherweise müssen Sie diesen Vorgang nach einem bestimmten Zeitraum wiederholen, abhängig von der Gültigkeit des Aktualisierungstokens in Ihrer Organisation. Im Allgemeinen beträgt der Gültigkeitszeitraum des Aktualisierungstokens einige Wochen bis zu einigen Monaten. AzureDeveloperCliCredential fordert Sie auf, sich erneut anzumelden.

AzurePipelinesCredential

Diese Anmeldeinformationen sind für die Verwendung in Azure-Pipelines mit Dienstverbindungen als Einrichtung für den Workload-Identitätsverbund konzipiert.

AzurePowerShellCredential

Diese Anmeldeinformationen verwenden die aktuell angemeldeten Benutzerinformationen aus dem Azure PowerShell-Modul. Dazu liest er das Benutzerzugriffstoken und läuft ab mit dem Azure PowerShell-Befehl Get-AzAccessToken -ResourceUrl {ResourceScope}

ChainedTokenCredential

Ermöglicht das Ausprobieren mehrerer TokenCredential Implementierungen, bis eine der getToken-Methoden ein Zugriffstoken zurückgibt.

ClientAssertionCredential

Authentifiziert einen Dienstprinzipal mit einer JWT-Assertion.

ClientCertificateCredential

Aktiviert die Authentifizierung für Microsoft Entra-ID mithilfe eines PEM-codierten Zertifikats, das einer App-Registrierung zugewiesen ist. Weitere Informationen zum Konfigurieren der Zertifikatauthentifizierung finden Sie hier:

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

ClientSecretCredential

Ermöglicht die Authentifizierung für Microsoft Entra-ID mithilfe eines geheimen Clientschlüssels, der für eine App-Registrierung generiert wurde. Weitere Informationen zum Konfigurieren eines geheimen Clientschlüssels finden Sie hier:

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

CredentialUnavailableError

Dies bedeutet, dass die Anmeldeinformationen, die in einer verketteten Anmeldeinformation versucht wurden, nicht als Anmeldeinformationen verwendet werden konnten. Anstatt dies als Fehler zu behandeln, der die Kette anhalten sollte, wird sie abgefangen, und die Kette wird fortgesetzt.

DefaultAzureCredential

Stellt eine Standardkonfiguration ChainedTokenCredential bereit, die für die meisten Anwendungen funktionieren sollte, die das Azure SDK verwenden.

DeviceCodeCredential

Ermöglicht die Authentifizierung für Microsoft Entra-ID mithilfe eines Gerätecodes, den der Benutzer in https://microsoft.com/devicelogineingeben kann.

EnvironmentCredential

Ermöglicht die Authentifizierung von Microsoft Entra-ID mithilfe eines geheimen Clientschlüssels oder Zertifikats oder als Benutzer mit einem Benutzernamen und Kennwort.

InteractiveBrowserCredential

Ermöglicht die Authentifizierung der Microsoft Entra-ID innerhalb des Webbrowsers mithilfe des interaktiven Anmeldeflusses.

ManagedIdentityCredential

Versucht die Authentifizierung mithilfe einer verwalteten Identität, die in der Bereitstellungsumgebung verfügbar ist. Dieser Authentifizierungstyp funktioniert in Azure VMs, App Service-Instanzen, Azure Functions-Anwendungen, Azure Kubernetes Services, Azure Service Fabric-Instanzen und innerhalb der Azure Cloud Shell.

Weitere Informationen zum Konfigurieren von verwalteten Identitäten finden Sie hier: https://learn.microsoft.com/en-us/azure/active-directory/managed-identities-azure-resources/overview

OnBehalfOfCredential

Aktiviert die Authentifizierung für Microsoft Entra-ID mithilfe des Im Auftrag von Fluss.

UsernamePasswordCredential

Ermöglicht die Authentifizierung für Die Microsoft Entra-ID mit dem Benutzernamen und Kennwort eines Benutzers. Für diese Anmeldeinformationen ist eine hohe Vertrauenswürdigkeit erforderlich, sodass Sie sie nur verwenden sollten, wenn andere, sicherere Anmeldeinformationstypen nicht verwendet werden können.

VisualStudioCodeCredential

Stellt eine Verbindung mit Azure mithilfe der von der VSCode-Erweiterung "Azure-Konto" bereitgestellten Anmeldeinformationen hergestellt. Sobald sich der Benutzer über die Erweiterung angemeldet hat, können diese Anmeldeinformationen das gleiche Aktualisierungstoken gemeinsam nutzen, das von der Erweiterung zwischengespeichert wird.

Es ist ein bekanntes Problem, dass diese Anmeldeinformationen nicht mit Azure-Kontoerweiterung neueren Versionen als 0.9.11funktionieren. Eine langfristige Lösung für dieses Problem ist in Bearbeitung. In der Zwischenzeit sollten Sie die Authentifizierung mit AzureCliCredentialin Betracht ziehen.

WorkloadIdentityCredential

Die Workload-Identitätsauthentifizierung ist ein Feature in Azure, mit dem Anwendungen, die auf virtuellen Computern (VMs) ausgeführt werden, auf andere Azure-Ressourcen zugreifen können, ohne dass ein Dienstprinzipal oder eine verwaltete Identität erforderlich ist. Bei der Workload Identity-Authentifizierung authentifizieren sich Anwendungen selbst mithilfe ihrer eigenen Identität, anstatt einen gemeinsamen Dienstprinzipal oder eine verwaltete Identität zu verwenden. Unter der Haube verwendet die Workload-Identitätsauthentifizierung das Konzept der Dienstkontoanmeldeinformationen (SERVICE Account Credentials, SACs), die automatisch von Azure erstellt und sicher auf dem virtuellen Computer gespeichert werden. Mithilfe der Workload-Identitätsauthentifizierung können Sie vermeiden, dass Dienstprinzipale oder verwaltete Identitäten für jede Anwendung auf jeder VM verwaltet und verwaltet werden müssen. Da SACs von Azure automatisch erstellt und verwaltet werden, müssen Sie sich keine Gedanken über das Speichern und Sichern vertraulicher Anmeldeinformationen selbst machen. Die WorkloadIdentityCredential unterstützt die Microsoft Entra Workload ID-Authentifizierung in Azure Kubernetes und erwirbt ein Token mithilfe der in der Azure Kubernetes-Umgebung verfügbaren SACs. Weitere Informationen finden Sie unter Microsoft Entra Workload ID.

Schnittstellen

AccessToken

Stellt ein Zugriffstoken mit einer Ablaufzeit dar.

AuthenticationRecord

Der Datensatz, der zum Suchen der zwischengespeicherten Token im Cache verwendet werden soll.

AuthenticationRequiredErrorOptions

Optionale Parameter für das AuthenticationRequiredError-

AuthorityValidationOptions

Bietet Optionen zum Konfigurieren der Autorisierungsüberprüfung der Identitätsbibliothek bei Authentifizierungsanforderungen an Microsoft Entra ID.

AuthorizationCodeCredentialOptions

Optionen für die AuthorizationCodeCredential-

AzureCliCredentialOptions

Optionen für die AzureCliCredential-

AzureDeveloperCliCredentialOptions

Optionen für die AzureDeveloperCliCredential-

AzurePipelinesCredentialOptions

Optionale Parameter für die AzurePipelinesCredential Klasse.

AzurePowerShellCredentialOptions

Optionen für die AzurePowerShellCredential-

BrokerAuthOptions

Konfigurationsoptionen für InteractiveBrowserCredential zur Unterstützung der WAM-Brokerauthentifizierung.

BrokerDisabledOptions

Parameter, wenn die WAM-Brokerauthentifizierung deaktiviert ist.

BrokerEnabledOptions

Parameter, wenn die WAM-Brokerauthentifizierung aktiviert ist.

BrowserCustomizationOptions

Optionen für die gemeinsame Konfiguration für die Browseranpassung

ClientAssertionCredentialOptions

Optionen für die ClientAssertionCredential-

ClientCertificateCredentialOptions

Optionale Parameter für die klasse ClientCertificateCredential.

ClientCertificatePEMCertificate

Erforderliche Konfigurationsoptionen für die ClientCertificateCredentialmit dem Zeichenfolgeninhalt eines PEM-Zertifikats

ClientCertificatePEMCertificatePath

Erforderliche Konfigurationsoptionen für die ClientCertificateCredentialmit dem Pfad zu einem PEM-Zertifikat.

ClientSecretCredentialOptions

Optionale Parameter für die klasse ClientSecretCredential.

CredentialPersistenceOptions

Freigegebene Konfigurationsoptionen für Anmeldeinformationen, die das zwischenspeichern persistente Token unterstützen.

DefaultAzureCredentialClientIdOptions

Bietet Optionen zum Konfigurieren der DefaultAzureCredential Klasse. Diese Variation unterstützt managedIdentityClientId und nicht managedIdentityResourceId, da nur eine von beiden unterstützt wird.

DefaultAzureCredentialOptions

Bietet Optionen zum Konfigurieren der DefaultAzureCredential Klasse.

DefaultAzureCredentialResourceIdOptions

Bietet Optionen zum Konfigurieren der DefaultAzureCredential Klasse. Diese Variation unterstützt managedIdentityResourceId und nicht managedIdentityClientId, da nur eine von beiden unterstützt wird.

DeviceCodeCredentialOptions

Definiert Optionen für die InteractiveBrowserCredential-Klasse für Node.js.

DeviceCodeInfo

Stellt den Benutzercode und den Überprüfungs-URI bereit, in den der Code eingegeben werden muss. Stellt außerdem eine Meldung bereit, die dem Benutzer angezeigt wird, der eine Anweisung mit diesen Details enthält.

EnvironmentCredentialOptions

Aktiviert die Authentifizierung für Microsoft Entra-ID abhängig von den verfügbaren Umgebungsvariablen. Definiert Optionen für die EnvironmentCredential-Klasse.

ErrorResponse

Weitere Informationen finden Sie in der offiziellen Dokumentation:

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

HINWEIS: Diese Dokumentation ist für die OAuth-Unterstützung von v1 vorgesehen, aber die gleichen Fehlerantwortdetails gelten weiterhin für v2.

GetBearerTokenProviderOptions

Die Optionen zum Konfigurieren des Tokenanbieters.

GetTokenOptions

Definiert Optionen für TokenCredential.getToken.

InteractiveBrowserCredentialInBrowserOptions

Definiert die allgemeinen Optionen für die InteractiveBrowserCredential-Klasse.

InteractiveBrowserCredentialNodeOptions

Definiert die allgemeinen Optionen für die InteractiveBrowserCredential-Klasse.

InteractiveCredentialOptions

Allgemeine Konstruktoroptionen für die Identitätsanmeldeinformationen, die eine Benutzerinteraktion erfordern.

ManagedIdentityCredentialClientIdOptions

Optionen zum Senden im ManagedIdentityCredential--Konstruktor. Diese Variation unterstützt clientId und nicht resourceId, da nur eine von beiden unterstützt wird.

ManagedIdentityCredentialObjectIdOptions

Optionen zum Senden im ManagedIdentityCredential--Konstruktor. Diese Variation unterstützt objectId als Konstruktorargument.

ManagedIdentityCredentialResourceIdOptions

Optionen zum Senden im ManagedIdentityCredential--Konstruktor. Diese Variation unterstützt resourceId und nicht clientId, da nur eine von beiden unterstützt wird.

MultiTenantTokenCredentialOptions

Optionen für mehrinstanzenfähige Anwendungen, die zusätzlich zulässige Mandanten ermöglichen.

OnBehalfOfCredentialAssertionOptions

Definiert die Parameter zum Authentifizieren des OnBehalfOfCredential- mit einer Assertion.

OnBehalfOfCredentialCertificateOptions

Definiert die Parameter zum Authentifizieren des OnBehalfOfCredential- mit einem Zertifikat.

OnBehalfOfCredentialSecretOptions

Definiert die Parameter, um die OnBehalfOfCredential- mit einem geheimen Schlüssel zu authentifizieren.

TokenCachePersistenceOptions

Parameter, die die Persistenz des Tokencaches in den Identitätsanmeldeinformationen ermöglichen.

TokenCredential

Stellt eine Anmeldeinformation dar, die ein Authentifizierungstoken bereitstellen kann.

TokenCredentialOptions

Stellt Optionen bereit, um zu konfigurieren, wie die Identitätsbibliothek Authentifizierungsanforderungen an Microsoft Entra ID sendet.

UsernamePasswordCredentialOptions

Definiert Optionen für die UsernamePasswordCredential Klasse.

VisualStudioCodeCredentialOptions

Bietet Optionen zum Konfigurieren der Visual Studio Code-Anmeldeinformationen.

WorkloadIdentityCredentialOptions

Optionen für die WorkloadIdentityCredential-

Typaliase

BrokerOptions

Parameter, die die WAM-Brokerauthentifizierung in InteractiveBrowserCredential aktivieren.

BrowserLoginStyle

(Nur Browserfeature) Der "Anmeldestil", der im Authentifizierungsfluss verwendet werden soll:

  • "Umleitung" leitet den Benutzer zur Authentifizierungsseite um und leitet sie dann nach Abschluss der Authentifizierung wieder zur Seite um.
  • "popup" öffnet ein neues Browserfenster, durch das der Umleitungsfluss initiiert wird. Das vorhandene Browserfenster des Benutzers belässt die aktuelle Seite nicht.
ClientCertificateCredentialPEMConfiguration

Erforderliche Konfigurationsoptionen für die ClientCertificateCredentialmit dem Zeichenfolgeninhalt eines PEM-Zertifikats oder dem Pfad zu einem PEM-Zertifikat.

DeviceCodePromptCallback

Definiert die Signatur eines Rückrufs, der an DeviceCodeCredential übergeben wird, um Authentifizierungsdetails für den Benutzer anzuzeigen.

IdentityPlugin

Der Typ eines Azure Identity-Plug-Ins, eine Funktion, die einen Plug-In-Kontext akzeptiert.

OnBehalfOfCredentialOptions

Optionale Parameter für die OnBehalfOfCredential Klasse.

Enumerationen

AzureAuthorityHosts

Eine Liste bekannter Azure-Autoritätshosts

Functions

deserializeAuthenticationRecord(string)

Deserialisiert einen zuvor serialisierten Authentifizierungsdatensatz aus einer Zeichenfolge in ein Objekt.

Die Eingabezeichenfolge muss die folgenden Eigenschaften enthalten:

  • "Autorität"
  • "homeAccountId"
  • "clientId"
  • "tenantId"
  • "Benutzername"
  • "Version"

Wenn die empfangene Version nicht unterstützt wird, wird ein Fehler ausgelöst.

Derzeit ist die einzige verfügbare Version: "1.0", die immer festgelegt wird, wenn der Authentifizierungseintrag serialisiert wird.

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

Gibt einen Rückruf zurück, der ein Bearertoken bereitstellt. Beispielsweise kann das Bearertoken verwendet werden, um eine Anforderung wie folgt zu authentifizieren:

import { DefaultAzureCredential, getBearerTokenProvider } from "@azure/identity";
import { createPipelineRequest } from "@azure/core-rest-pipeline";

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()

Gibt eine neue Instanz des DefaultAzureCredential-zurück.

serializeAuthenticationRecord(AuthenticationRecord)

Serialisiert eine AuthenticationRecord in eine Zeichenfolge.

Die Ausgabe eines serialisierten Authentifizierungsdatensatzes enthält die folgenden Eigenschaften:

  • "Autorität"
  • "homeAccountId"
  • "clientId"
  • "tenantId"
  • "Benutzername"
  • "Version"

Wenn Sie diese Zeichenfolge später in eine serialisierte AuthenticationRecordkonvertieren möchten, verwenden Sie bitte die exportierte Funktion deserializeAuthenticationRecord().

useIdentityPlugin(IdentityPlugin)

Erweitern Sie Azure Identity durch zusätzliche Funktionen. Übergeben Sie ein Plug-In aus einem Plug-In-Paket, z. B.:

  • @azure/identity-cache-persistence: Stellt die zwischenspeicherung persistenter Token bereit.
  • @azure/identity-vscode: stellt die Abhängigkeiten von VisualStudioCodeCredential bereit und aktiviert sie.

Beispiel:

import { useIdentityPlugin, DeviceCodeCredential } from "@azure/identity";

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

Details zur Funktion

deserializeAuthenticationRecord(string)

Deserialisiert einen zuvor serialisierten Authentifizierungsdatensatz aus einer Zeichenfolge in ein Objekt.

Die Eingabezeichenfolge muss die folgenden Eigenschaften enthalten:

  • "Autorität"
  • "homeAccountId"
  • "clientId"
  • "tenantId"
  • "Benutzername"
  • "Version"

Wenn die empfangene Version nicht unterstützt wird, wird ein Fehler ausgelöst.

Derzeit ist die einzige verfügbare Version: "1.0", die immer festgelegt wird, wenn der Authentifizierungseintrag serialisiert wird.

function deserializeAuthenticationRecord(serializedRecord: string): AuthenticationRecord

Parameter

serializedRecord

string

Authentifizierungseintrag, der zuvor in eine Zeichenfolge serialisiert wurde.

Gibt zurück

AuthenticationRecord.

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

Gibt einen Rückruf zurück, der ein Bearertoken bereitstellt. Beispielsweise kann das Bearertoken verwendet werden, um eine Anforderung wie folgt zu authentifizieren:

import { DefaultAzureCredential, getBearerTokenProvider } from "@azure/identity";
import { createPipelineRequest } from "@azure/core-rest-pipeline";

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>

Parameter

credential
TokenCredential

Die zum Authentifizieren der Anforderung verwendeten Anmeldeinformationen.

scopes

string | string[]

Die bereiche, die für das Bearertoken erforderlich sind.

options
GetBearerTokenProviderOptions

Optionen zum Konfigurieren des Tokenanbieters.

Gibt zurück

() => Promise<string>

ein Rückruf, der ein Bearertoken bereitstellt.

getDefaultAzureCredential()

Gibt eine neue Instanz des DefaultAzureCredential-zurück.

function getDefaultAzureCredential(): TokenCredential

Gibt zurück

serializeAuthenticationRecord(AuthenticationRecord)

Serialisiert eine AuthenticationRecord in eine Zeichenfolge.

Die Ausgabe eines serialisierten Authentifizierungsdatensatzes enthält die folgenden Eigenschaften:

  • "Autorität"
  • "homeAccountId"
  • "clientId"
  • "tenantId"
  • "Benutzername"
  • "Version"

Wenn Sie diese Zeichenfolge später in eine serialisierte AuthenticationRecordkonvertieren möchten, verwenden Sie bitte die exportierte Funktion deserializeAuthenticationRecord().

function serializeAuthenticationRecord(record: AuthenticationRecord): string

Parameter

Gibt zurück

string

useIdentityPlugin(IdentityPlugin)

Erweitern Sie Azure Identity durch zusätzliche Funktionen. Übergeben Sie ein Plug-In aus einem Plug-In-Paket, z. B.:

  • @azure/identity-cache-persistence: Stellt die zwischenspeicherung persistenter Token bereit.
  • @azure/identity-vscode: stellt die Abhängigkeiten von VisualStudioCodeCredential bereit und aktiviert sie.

Beispiel:

import { useIdentityPlugin, DeviceCodeCredential } from "@azure/identity";

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

Parameter

plugin
IdentityPlugin

das Zu registrierende Plug-In