Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Note
Die Unterstützung für den macOS-Authentifizierungsbroker wird mit msal Version 1.31.0 eingeführt.
Mithilfe eines Authentifizierungsbrokers unter macOS können Sie vereinfachen, wie Sich Ihre Benutzer mit Microsoft Entra ID von Ihrer Anwendung authentifizieren, sowie zukünftige Funktionen nutzen, die Microsoft Entra ID Aktualisierungstoken vor Exfiltration und Missbrauch schützen.
Authentifizierungsbroker sind nicht auf macOS vorinstalliert, sondern anwendungen, die von Microsoft entwickelt werden, z. B. Unternehmensportal. Diese Anwendungen werden in der Regel installiert, wenn ein macOS-Computer über eine Endpunktverwaltungslösung wie Microsoft Intune in der Geräteflotte eines Unternehmens registriert wird. Weitere Informationen zum Einrichten des Apple-Geräts mit der Microsoft Identity Platform finden Sie unter Microsoft Enterprise-SSO-Plug-In für Apple-Geräte.
Usage
Um den Broker zu verwenden, müssen Sie die brokerbezogenen Pakete zusätzlich zum Kern-MSAL von PyPI installieren:
pip install msal[broker]>=1.31,<2
Important
Wenn Broker-bezogene Pakete nicht installiert sind und Sie versuchen, den Authentifizierungsbroker zu verwenden, erhalten Sie eine Fehlermeldung: ImportError: You need to install dependency by: pip install "msal[broker]>=1.31,<2".
In der Regel würden Ihre Public-Client-Python-Anwendungen unter macOS Token über den Systembrowser beziehen. Um stattdessen Authentifizierungsbroker auf einem macOS-System zu verwenden, müssen Sie ein zusätzliches Argument im PublicClientApplication Konstruktor übergeben : enable_broker_on_mac
from msal import PublicClientApplication
app = PublicClientApplication(
"CLIENT_ID",
authority="https://login.microsoftonline.com/common",
enable_broker_on_mac =True)
Important
Wenn Sie eine plattformübergreifende Anwendung entwickeln, müssen Sie auch enable_broker_on_windows verwenden, wie im Artikel Using MSAL Python with Web Account Manager beschrieben.
Zusätzlich zur Konstruktoränderung muss Ihre Anwendung brokerspezifische Umleitungs-URIs unterstützen. Bei nicht signierten Anwendungen lautet der URI:
msauth.com.msauth.unsignedapp://auth
Bei signierten Anwendungen sollte der Umleitungs-URI folgendes sein:
msauth.BUNDLE_ID://auth
Wenn die Umleitungs-URIs in der App-Konfiguration im Entra-Portal nicht ordnungsgemäß festgelegt sind, erhalten Sie folgende Fehlermeldung:
Error detected...
tag=508170375
context=AADSTS50011 Description: (pii), Domain: MSAIMSIDOAuthErrorDomain.Error was thrown in location: Broker
errorCode=-51411
status=Response_Status.Status_Unexpected
Nach der Konfiguration können Sie aufrufen acquire_token_interactive , um ein Token zu erwerben.
result = app.acquire_token_interactive(["User.ReadBasic.All"],
parent_window_handle=app.CONSOLE_WINDOW_HANDLE)
Note
Der parent_window_handle Parameter ist erforderlich, obwohl er unter macOS nicht verwendet wird. Bei GUI-Anwendungen wird der Anmeldeaufforderungsspeicherort ad-hoc bestimmt und kann derzeit nicht an ein bestimmtes Fenster gebunden werden. In einem zukünftigen Update wird dieser Parameter verwendet, um das tatsächliche übergeordnete Fenster zu bestimmen.
Zwischenspeichern von Tokens
Der Authentifizierungsbroker verarbeitet das Zwischenspeichern von Aktualisierungs- und Zugriffstoken. Sie müssen keine benutzerdefinierte Zwischenspeicherung einrichten.
Unterstützte macOS-Versionen und -Architekturen
Der macOS-Broker unterstützt die folgenden Konfigurationen:
| Bestandteil | Unterstützte Versionen |
|---|---|
| Architektur | ARM64 (Apple Silicon) und x64 (Intel) |
| macOS-Version | macOS 10.15 (Catalina) und höher |
Tip
Es wird empfohlen, auf die neueste macOS-Version zu aktualisieren, um die Kompatibilität mit den neuesten Sicherheitsfeatures und Brokerfunktionen sicherzustellen.