Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Microsoft Authentication Library (MSAL) Düğümü, işletim sistemi tarafından bilinen hesapları kullanarak çoklu oturum açma (SSO) ve güvenli belirteç alımı sağlamak için macOS kimlik doğrulama aracısını kullanabilir. Bu makalede macOS aracısı ve MSAL Node'da aracılı kimlik doğrulamasını etkinleştirme ve kullanma açıklanmaktadır.
Tüm platformlardaki aracısı desteğine genel bir bakış için bkz. MSAL Node'u Yerel Belirteç Aracısı ile Kullanma.
macOS aracısı nedir?
macOS'ta kimlik doğrulama aracısı, Şirket Portalı uygulamasıyla birlikte gelen Apple cihazları için Microsoft Enterprise SSO eklentisi tarafından sağlanır. Aracı, bağlı hesaplar için kimlik doğrulama el sıkışma süreçlerini ve belirteçlerin yaşam döngüsünü yönetir. Başlıca avantajlar şunlardır:
- Gelişmiş güvenlik. Güvenlik geliştirmeleri, uygulama kodu değişikliklerine gerek kalmadan aracı güncelleştirmeleri aracılığıyla sunulur. Yenileme belirteçleri cihaza bağlıdır ve sızdırmaya karşı korunur.
- Sistem tümleştirmesi. Kullanıcılar, Şirket Portalı mevcut oturum açma hesaplarını yeniden kullanabilir ve böylece kimlik bilgilerinin yeniden girilmesi azaltılabilir.
- Belirteç koruması. Aracı, yenileme belirteçlerinin cihaz bağlamı ile ilişkili olmasını sağlar.
Desteklenen platformlar ve mimariler
| Bileşen | Destekleniyor |
|---|---|
| Mimarlık | ARM64 (Apple Silicon) ve x64 (Intel) |
| macOS sürümü | macOS 10.15 (Catalina) ve üzeri |
Tip
En yeni güvenlik özellikleri ve aracı özellikleriyle uyumluluğu sağlamak için en son macOS sürümüne güncelleştirmenizi öneririz.
Prerequisites
- Node.js 18 veya üzeri
-
@azure/msal-node-extensionsöğesini bağımlılık olarak yükleyin - Cihazın Şirket Portalı aracılığıyla kaydedilmesi gerekir. Kayıt sonrasında, diğer Microsoft uygulamalarının SSO uzantısıyla oturum açabildiğini doğrulayın (örneğin, Şirket Portalı aracılığıyla Word oturum açabilirsiniz).
- Uygulama kaydınıza aracı yeniden yönlendirme URI'sini kaydedin. Desteklenen URI değerleri için bkz. Redirect URI.
Yeniden yönlendirme URI'si
macOS aracı akışları için, Azure portalındaki Mobil ve masaüstü uygulamaları platformu altında platforma özgü bir yeniden yönlendirme URI'sini kaydetmeniz gerekir.
İmzasız uygulamalar (betikler, CLI araçları) için:
Betikler ve CLI araçları gibi imzasız uygulamalar için aşağıdaki yeniden yönlendirme URI'sini kullanın:
msauth.com.msauth.unsignedapp://auth
İmzalı/paketlenmiş uygulamalar için:
İmzalı veya paketlenmiş uygulamalar için aşağıdaki yeniden yönlendirme URI biçimini kullanın:
msauth.<your-bundle-id>://auth
değerini uygulamanızın Apple paket tanımlayıcısı (örneğin, <your-bundle-id>) ile değiştirinmsauth.com.example.myapp://auth.
Important
Aracı yeniden yönlendirme URI'si yalnızca aracı akışları için kullanılmalıdır. Uygulamanız tarayıcı tabanlı kimlik doğrulama akışları da kullanıyorsa, bunlar için ayrı bir yeniden yönlendirme URI'sini kullanın. Aracı yönlendirme URI'sinin tarayıcı tabanlı bir akışa verilmesi bir hataya neden olur.
Özelliği etkinleştirme
macOS aracısını etkinleştirmek için Windows ile aynı yapılandırma gerekir. Aracı yapılandırmasına bir NativeBrokerPlugin örneği iletin:
import { PublicClientApplication, Configuration } from "@azure/msal-node";
import { NativeBrokerPlugin } from "@azure/msal-node-extensions";
const msalConfig: Configuration = {
auth: {
clientId: "your-client-id",
},
broker: {
nativeBrokerPlugin: new NativeBrokerPlugin(),
},
};
const pca = new PublicClientApplication(msalConfig);
Note
msal-node aracı kullanılamıyorsa tarayıcı tabanlı bir akışa geri dönmez. Beklenmeyen hataları önlemek için yalnızca aracıyı destekleyen ortamlarda aracılı kimlik doğrulamasını etkinleştirin.
Belirteç edinme
Etkileşimli belirteç alma
macOS aracısı üzerinden belirteç istemek için acquireTokenInteractive kullanın:
const tokenRequest = {
scopes: ["User.Read"],
};
const result = await pca.acquireTokenInteractive(tokenRequest);
console.log("Access token:", result.accessToken);
Etkileşimsiz belirteç edinme
İlk etkileşimli oturum açma işleminden sonra sonraki belirteç istekleri sessizce yapılabilir:
const accounts = await pca.getAllAccounts();
if (accounts.length > 0) {
const silentRequest = {
scopes: ["User.Read"],
account: accounts[0],
};
const result = await pca.acquireTokenSilent(silentRequest);
console.log("Access token (silent):", result.accessToken);
}
Belirteç önbelleğe alma
Kimlik doğrulama aracısı yenileme ve erişim belirteci önbelleğe alma işlemlerini işler. Aracı aracılığıyla alınan belirteçler, aracı tarafından yönetilir ve cihaza bağlıdır. Aracıyı kullanırken özel önbelleğe alma ayarlamanız gerekmez.
macOS aracısını kullanırken farklılıklar
- Aracı etkileşim istemesi gerektiğinde yerel bir macOS kimlik doğrulaması iletişim kutusu görüntülenir. Bu, tarayıcı tabanlı kimlik doğrulamasına kıyasla kullanıcı deneyimini (UX) değiştirir.
-
forceRefreshparametresiacquireTokenSilentdesteklenmiyor. Bu bayraktan bağımsız olarak aracıdan önbelleğe alınmış bir belirteç alabilirsiniz. - Erişim belirteci sahiplik kanıtı (PoP), aracı üzerinden desteklenir.
Sınırlamalar
- Azure AD B2C ve Active Directory Federasyon Hizmetleri (AD FS) (AD FS) yetkilileri macOS aracısı aracılığıyla desteklenmez.
- Üçüncü taraf kimlik sağlayıcıları (IDP) desteklenmez.
- Şirket Portalı yüklenmesi ve aracının çalışması için cihazın kaydedilmesi gerekir.
-
msal-nodearacı kullanılamıyorsa tarayıcıya geri dönmez. Aracıyı yalnızca onu destekleyen ortamlarda etkinleştirin.