Azure Identity Broker-Plug-In für Python
Dieses Paket erweitert die Azure Identity-Bibliothek , indem zusätzliche Anmeldeinformationen für die Authentifizierung über einen Authentifizierungsbroker bereitgestellt werden.
Ein Authentifizierungsbroker ist eine Anwendung, die auf dem Computer eines Benutzers ausgeführt wird und die Authentifizierungs-Handshakes und die Tokenwartung für verbundene Konten verwaltet. Derzeit wird nur der Windows-Authentifizierung Broker, Web Account Manager (WAM), unterstützt.
Quellcode | Paket (PyPI) | API-Referenzdokumentation | Dokumentation zur Microsoft Entra ID
Erste Schritte
Installieren des Pakets
Installieren Sie das Azure Identity Broker-Plug-In für Python mit pip:
pip install azure-identity-broker
Wichtige Begriffe
Dieses Paket ermöglicht die Brokerunterstützung, bei InteractiveBrowserBrokerCredential
der InteractiveBrowserCredential
es sich um eine Unterklasse der Azure Identity-Bibliothek handelt.
Übergeordnete Fensterhandle
Bei der interaktiven Authentifizierung über InteractiveBrowserBrokerCredential
ist ein übergeordnetes Fensterhandle erforderlich, um sicherzustellen, dass das Authentifizierungsdialogfeld über das anfordernde Fenster ordnungsgemäß angezeigt wird. Im Kontext grafischer Benutzeroberflächen auf Geräten ist ein Fensterhandle ein eindeutiger Bezeichner, den das Betriebssystem jedem Fenster zuweist. Für das Windows-Betriebssystem ist dieses Handle ein ganzzahliger Wert, der als Verweis auf ein bestimmtes Fenster dient.
Passthrough für Microsoft-Konto (MSA)
Microsoft-Konten (MSA) sind persönliche Konten, die von Benutzern für den Zugriff auf Microsoft-Dienste erstellt werden. MSA-Passthrough ist eine Legacykonfiguration, mit der Benutzer Token an Ressourcen abrufen können, die normalerweise keine MSA-Anmeldungen akzeptieren. Dieses Feature ist nur für Erstanbieteranwendungen verfügbar. Benutzer, die sich bei einer Anwendung authentifizieren, die für die Verwendung von MSA-Passthrough konfiguriert ist, können auf True
inside InteractiveBrowserBrokerCredential
festgelegt enable_msa_passthrough
werden, damit diese persönlichen Konten von WAM aufgelistet werden können.
Umleitungs-URIs
Microsoft Entra Anwendungen basieren auf Umleitungs-URIs, um zu bestimmen, wohin die Authentifizierungsantwort gesendet werden soll, nachdem sich ein Benutzer angemeldet hat. Um die Brokerauthentifizierung über WAM zu aktivieren, sollte ein Umleitungs-URI, der dem folgenden Muster entspricht, bei der Anwendung registriert werden:
ms-appx-web://Microsoft.AAD.BrokerPlugin/{client_id}
Beispiele
Authentifizieren mit InteractiveBrowserBrokerCredential
In diesem Beispiel wird die Verwendung InteractiveBrowserBrokerCredential
als Broker-aktivierte Anmeldeinformationen für die Authentifizierung mit dem BlobServiceClient
aus der azure-storage-blob-Bibliothek veranschaulicht. Hier wird das win32gui
Paket verwendet, um das aktuelle Fenster abzurufen.
import win32gui
from azure.identity.broker import InteractiveBrowserBrokerCredential
from azure.storage.blob import BlobServiceClient
# Get the handle of the current window
current_window_handle = win32gui.GetForegroundWindow()
credential = InteractiveBrowserBrokerCredential(parent_window_handle=current_window_handle)
client = BlobServiceClient(account_url, credential=default_credential)
Problembehandlung
Ausführliche Informationen zur Diagnose verschiedener Fehlerszenarien finden Sie im Leitfaden zur Problembehandlung für Azure Identity.
Nächste Schritte
Unterstützung von Clientbibliotheken
Client- und Verwaltungsbibliotheken, die auf der Releaseseite des Azure SDK aufgeführt sind und Microsoft Entra Authentifizierung unterstützen, akzeptieren Anmeldeinformationen aus dieser Bibliothek. Weitere Informationen zur Verwendung dieser Bibliotheken finden Sie in der Dokumentation, die auf der Releaseseite verlinkt ist.
Bekannte Probleme
Diese Bibliothek unterstützt Azure AD B2C nicht.
Weitere offene Probleme finden Sie im GitHub-Repository der Bibliothek.
Feedback bereitstellen
Wenn Fehler auftreten oder Vorschläge vorliegen, öffnen Sie ein Problem.
Mitwirken
Beiträge und Vorschläge für dieses Projekt sind willkommen. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. Ausführliche Informationen finden Sie unter https://cla.microsoft.com.
Wenn Sie einen Pull Request (PR) übermitteln, überprüft ein CLA-Bot automatisch, ob Sie eine Lizenzvereinbarung bereitstellen und den PR entsprechend ergänzen müssen (z.B. mit einer Bezeichnung oder einem Kommentar). Führen Sie einfach die Anweisungen des Bots aus. Sie müssen dies nur einmal für alle Repositorys ausführen, die unsere CLA verwenden.
Für dieses Projekt gelten die Microsoft-Verhaltensregeln für Open Source (Microsoft Open Source Code of Conduct). Weitere Informationen finden Sie in den häufig gestellten Fragen zum Verhaltenskodex. Sie können sich auch an opencode@microsoft.com wenden, wenn Sie weitere Fragen oder Anmerkungen haben.
Azure SDK for Python