Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Note
Stöd för autentiseringsförmedlare i macOS införs i msal version 1.31.0.
Med hjälp av en autentiseringskoordinator på macOS kan du förenkla hur användarna autentiserar med Microsoft Entra ID från ditt program, samt dra nytta av framtida funktioner som skyddar Microsoft Entra ID uppdateringstoken från exfiltrering och missbruk.
Autentiseringskoordinatorer är inte förinstallerade på macOS utan är program som utvecklats av Microsoft, till exempel Company Portal. Dessa program installeras vanligtvis när en macOS-dator registreras i ett företags enhetsflotta via en lösning för slutpunktshantering som Microsoft Intune. Mer information om hur du konfigurerar Apple-enheter med Microsoft Identity Platform finns i Microsoft Enterprise SSO-plugin-program för Apple-enheter.
Usage
För att använda brokern måste du installera de brokerrelaterade paketen utöver MSAL-kärnpaketet från PyPI:
pip install msal[broker]>=1.31,<2
Important
Om broker-relaterade paket inte är installerade och du kommer att försöka använda autentiseringskoordinatorn får du ett fel: ImportError: You need to install dependency by: pip install "msal[broker]>=1.31,<2".
I macOS hämtar vanligtvis din offentliga klient Python program token via systemwebbläsaren. Om du vill använda autentiseringskoordinatorer installerade på ett macOS-system i stället måste du skicka ytterligare ett argument i PublicClientApplication konstruktorn – enable_broker_on_mac:
from msal import PublicClientApplication
app = PublicClientApplication(
"CLIENT_ID",
authority="https://login.microsoftonline.com/common",
enable_broker_on_mac =True)
Important
Om du skriver ett plattformsoberoende program måste du också använda enable_broker_on_windows, enligt beskrivningen i artikeln Using MSAL Python with Web Account Manager (Använda MSAL-Python med Web Account Manager).
Förutom konstruktorändringen måste din applikation stödja mäklarspecifika omdirigerings-URI:er. För osignerade program är URI:n:
msauth.com.msauth.unsignedapp://auth
För signerade program ska omdirigerings-URI:n vara:
msauth.BUNDLE_ID://auth
Om omdirigerings-URI:erna inte är korrekt inställda i appkonfigurationen i Entra-portalen får du följande fel:
Error detected...
tag=508170375
context=AADSTS50011 Description: (pii), Domain: MSAIMSIDOAuthErrorDomain.Error was thrown in location: Broker
errorCode=-51411
status=Response_Status.Status_Unexpected
När du har konfigurerat kan du anropa acquire_token_interactive för att hämta en token.
result = app.acquire_token_interactive(["User.ReadBasic.All"],
parent_window_handle=app.CONSOLE_WINDOW_HANDLE)
Note
Parametern parent_window_handle krävs även om den inte används på macOS. För GUI-program bestäms platsen för inloggningsprompten ad hoc och kan för närvarande inte bindas till ett specifikt fönster. I en framtida uppdatering används den här parametern för att fastställa det faktiska överordnade fönstret.
Cachelagring av token
Autentiseringskoordinatorn hanterar cachelagring av uppdaterings- och åtkomsttoken. Du behöver inte konfigurera anpassad cachelagring.
MacOS-versioner och -arkitekturer som stöds
Brokern för macOS stöder följande konfigurationer:
| Component | Versioner som stöds |
|---|---|
| Arkitektur | ARM64 (Apple Silicon) och x64 (Intel) |
| macOS-version | macOS 10.15 (Catalina) och senare |
Tip
Vi rekommenderar att du uppdaterar till den senaste macOS-versionen för att säkerställa kompatibilitet med de senaste säkerhetsfunktionerna och koordinatorfunktionerna.