Freigeben über


WorkloadIdentityCredential Klasse

Authentifiziert sich mithilfe einer Azure Active Directory-Workloadidentität.

Die Workloadidentitätsauthentifizierung ist ein Feature in Azure, mit dem Anwendungen, die auf virtuellen Computern (VMs) ausgeführt werden, ohne dass ein Dienstprinzipal oder eine verwaltete Identität erforderlich ist, auf andere Azure-Ressourcen zugreifen können. Bei der Workloadidentitätsauthentifizierung authentifizieren sich Anwendungen selbst mit ihrer eigenen Identität, anstatt einen freigegebenen Dienstprinzipal oder eine verwaltete Identität zu verwenden. Unter der Haube verwendet die Workloadidentitätsauthentifizierung das Konzept der Dienstkontoanmeldeinformationen (Service Account Credentials, SACs), die automatisch von Azure erstellt und sicher auf der VM gespeichert werden. Mithilfe der Workloadidentitätsauthentifizierung können Sie die Notwendigkeit vermeiden, Dienstprinzipale oder verwaltete Identitäten für jede Anwendung auf jedem virtuellen Computer zu verwalten und zu rotieren. Da SACs automatisch erstellt und von Azure verwaltet werden, müssen Sie sich darüber hinaus keine Gedanken über das Speichern und Schützen vertraulicher Anmeldeinformationen selbst machen.

WorkloadIdentityCredential unterstützt die Authentifizierung der Azure-Workloadidentität in Azure Kubernetes und ruft ein Token mithilfe der Anmeldeinformationen des Dienstkontos ab, die in der Azure Kubernetes-Umgebung verfügbar sind. Weitere Informationen finden Sie in dieser Übersicht über die Workloadidentität .

Vererbung
azure.identity.aio._credentials.client_assertion.ClientAssertionCredential
WorkloadIdentityCredential
azure.identity._credentials.workload_identity.TokenFileMixin
WorkloadIdentityCredential

Konstruktor

WorkloadIdentityCredential(*, tenant_id: str | None = None, client_id: str | None = None, token_file_path: str | None = None, **kwargs: Any)

Parameter

tenant_id
str

ID des Azure Active Directory-Mandanten der Anwendung. Wird auch als "Verzeichnis"-ID bezeichnet.

client_id
str

Die Client-ID einer Azure AD-App-Registrierung.

token_file_path
str

Der Pfad zu einer Datei, die ein Kubernetes-Dienstkontotoken enthält, das die Identität authentifiziert.

Beispiele

Erstellen Sie ein WorkloadIdentityCredential-Objekt.


   from azure.identity.aio import WorkloadIdentityCredential

   credential = WorkloadIdentityCredential(
       tenant_id="<tenant_id>",
       client_id="<client_id>",
       token_file_path="<token_file_path>",
   )

   # Parameters can be omitted if the following environment variables are set:
   #   - AZURE_TENANT_ID
   #   - AZURE_CLIENT_ID
   #   - AZURE_FEDERATED_TOKEN_FILE
   credential = WorkloadIdentityCredential()

Methoden

close

Schließen Sie die Transportsitzung der Anmeldeinformationen.

get_token

Fordern Sie ein Zugriffstoken für Bereiche an.

Diese Methode wird von Azure SDK-Clients automatisch aufgerufen.

close

Schließen Sie die Transportsitzung der Anmeldeinformationen.

async close() -> None

get_token

Fordern Sie ein Zugriffstoken für Bereiche an.

Diese Methode wird von Azure SDK-Clients automatisch aufgerufen.

async get_token(*scopes: str, claims: str | None = None, tenant_id: str | None = None, **kwargs: Any) -> AccessToken

Parameter

scopes
str
Erforderlich

gewünschte Bereiche für das Zugriffstoken. Für diese Methode ist mindestens ein Bereich erforderlich. Weitere Informationen zu Bereichen finden Sie unter https://learn.microsoft.com/azure/active-directory/develop/scopes-oidc.

claims
str

Zusätzliche Ansprüche, die im Token erforderlich sind, z. B. die in der Anspruchsanforderung eines Ressourcenanbieters nach einem Autorisierungsfehler zurückgegeben werden.

tenant_id
str

optionaler Mandant, der in die Tokenanforderung aufgenommen werden soll.

enable_cae
bool

gibt an, ob die fortlaufende Zugriffsauswertung (Continuous Access Evaluation, CAE) für das angeforderte Token aktiviert werden soll. Der Standardwert lautet „False“.

Gibt zurück

Ein Zugriffstoken mit den gewünschten Bereichen.

Rückgabetyp

Ausnahmen

Die Anmeldeinformationen können nicht versucht werden, die Authentifizierung zu versuchen, da die erforderlichen Daten, der Status oder die Plattform nicht unterstützt werden.

Fehler bei der Authentifizierung. Das Attribut des Fehlers message gibt einen Grund an.