Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Note
Dukungan broker autentikasi macOS diperkenalkan dengan msal versi 1.31.0.
Menggunakan broker autentikasi di macOS memungkinkan Anda menyederhanakan cara pengguna Anda melakukan autentikasi dengan Microsoft Entra ID dari aplikasi Anda, serta memanfaatkan fitur mendatang yang melindungi token penyegaran Microsoft Entra ID dari ekstraksi ilegal dan penyalahgunaan.
Broker autentikasi tidak diinstal sebelumnya di macOS tetapi merupakan aplikasi yang dikembangkan oleh Microsoft, seperti Company Portal. Aplikasi ini biasanya diinstal ketika komputer macOS terdaftar di armada perangkat perusahaan melalui solusi manajemen titik akhir seperti Microsoft Intune. Untuk mempelajari selengkapnya tentang penyiapan perangkat Apple dengan Microsoft Identity Platform, lihat plug-in Microsoft Enterprise SSO untuk perangkat Apple.
Penggunaan
Untuk menggunakan broker, Anda harus menginstal paket terkait broker selain MSAL inti dari PyPI:
pip install msal[broker]>=1.31,<2
Important
Jika paket terkait broker tidak diinstal dan Anda akan mencoba menggunakan broker autentikasi, Anda akan mendapatkan kesalahan: ImportError: You need to install dependency by: pip install "msal[broker]>=1.31,<2".
Biasanya, di macOS aplikasi Python klien publik Anda akan memperoleh token melalui browser sistem. Untuk menggunakan broker autentikasi yang terpasang di sistem macOS sebagai gantinya, Anda perlu meneruskan argumen tambahan ke konstruktor PublicClientApplication - enable_broker_on_mac:
from msal import PublicClientApplication
app = PublicClientApplication(
"CLIENT_ID",
authority="https://login.microsoftonline.com/common",
enable_broker_on_mac =True)
Important
Jika Anda menulis aplikasi lintas platform, Anda juga perlu menggunakan enable_broker_on_windows, seperti yang diuraikan dalam artikel Menggunakan Python MSAL dengan Pengelola Akun Web.
Selain perubahan konstruktor, aplikasi Anda perlu mendukung URI pengalihan khusus broker. Untuk aplikasi yang tidak ditandatangani , URI adalah:
msauth.com.msauth.unsignedapp://auth
Untuk aplikasi yang ditandatangani, URI pengalihan harus:
msauth.BUNDLE_ID://auth
Jika URI pengalihan tidak diatur dengan benar dalam konfigurasi aplikasi dalam portal Entra, Anda akan menerima kesalahan seperti ini:
Error detected...
tag=508170375
context=AADSTS50011 Description: (pii), Domain: MSAIMSIDOAuthErrorDomain.Error was thrown in location: Broker
errorCode=-51411
status=Response_Status.Status_Unexpected
Setelah dikonfigurasi, Anda dapat memanggil acquire_token_interactive untuk memperoleh token.
result = app.acquire_token_interactive(["User.ReadBasic.All"],
parent_window_handle=app.CONSOLE_WINDOW_HANDLE)
Note
Parameter parent_window_handle diperlukan meskipun pada macOS tidak digunakan. Untuk aplikasi GUI, lokasi permintaan masuk akan ditentukan ad-hoc dan saat ini tidak dapat terikat ke jendela tertentu. Dalam pembaruan mendatang, parameter ini akan digunakan untuk menentukan jendela induk yang sebenarnya .
Penyimpanan sementara token
Broker autentikasi menangani refresh dan penembolokan token akses. Anda tidak perlu mengatur cache kustom.
Versi dan arsitektur macOS yang didukung
Broker macOS mendukung konfigurasi berikut:
| Komponen | Versi yang didukung |
|---|---|
| Arsitektur | ARM64 (Apple Silicon) dan x64 (Intel) |
| Versi macOS | macOS 10.15 (Catalina) dan yang lebih baru |
Tip
Sebaiknya perbarui ke versi macOS terbaru untuk memastikan kompatibilitas dengan fitur keamanan terbaru dan kemampuan broker.