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.
MSAL.js, Windows'de Web Hesabı Yöneticisi'nden (WAM) belirteç alma işlemini destekler. Bu belirteçler, edinildikleri cihaza bağlıdır ve tarayıcının localStorage veya sessionStorage içinde önbelleğe alınmaz.
Desteklenen Ortam
Bu özellik şu anda yalnızca aşağıdaki ortamda desteklenmektedir:
- Özelliği destekleyen bir Windows derlemesi çalıştıran bir makine (bu konuda daha fazla bilgi)
- Chrome ve Edge tarayıcıları veya Teams
- Chrome veya Edge kullanılıyorsa Windows Hesapları uzantısı (sürüm 1.0.5 veya üzeri) yüklenir
- Uygulamanın barındırılması gereken yer:
https
Ayrıca, bu özellik şu anda yalnızca İş ve Okul Hesapları için desteklenmektedir
MSAL.js'de özelliği etkinleştirme
bu özelliği etkinleştirmek için MSAL.js yapılandırma nesnenizde bayrağını allowPlatformBroker true olarak ayarlayın:
const msalConfig = {
auth: {
clientId: "insert-clientId"
},
system: {
allowPlatformBroker: true
}
};
Ayrıca, başka bir MSAL.js API'sini çağırmadan önce yeni initialize API'yi çağırmanız ve beklemeniz gerekir.
const pca = new PublicClientApplication(msalConfig);
// Initialize will establish a connection with the browser extension, if present
await pca.initialize();
// Call handleRedirectPromise, after initialization is complete
await pca.handleRedirectPromise();
// After initialize and handleRedirectPromise have completed, you may call any of the other APIs as you would without this feature
pca.acquireTokenSilent();
Bu yeni özelliği desteklemek için başka hiçbir değişiklik gerekmez. Desteklenen bir ortamdan uygulamanıza erişen tüm kullanıcılar artık cihaz bağlı belirteçleri edinebilecek. Desteklenmeyen ortamlardaki kullanıcılar, geleneksel web tabanlı akışlar aracılığıyla belirteç almaya devam eder.
Burada bir çalışma örneği bulunabilir
Belirteçleri almak için WAM kullanırken farklılıklar
WAM aracılığıyla belirteç alırken biraz farklı davranabilecek birkaç şey vardır.
- Önbellekle ilgili tüm yapılandırma yalnızca MSAL'nin yerel önbelleği için geçerlidir. Yerel aracı, tarayıcı depolaması yerine kullanılan kendisine ait daha güvenli bir önbelleği yönetir ve önbellek davranışının yapılandırılmasını desteklemez. Bu, şu istek parametrelerinin değerinden bağımsız olarak önbelleğe alınmış bir belirteç alabileceğiniz anlamına gelir:
forceRefresh,cacheLookupPolicyveyastoreInCache. Ayrıca, yerel broker'dan alınan belirteçler, PublicClientApplication'da ne yapılandırmış olursanız olun, yerel depolama veya oturum depolamasında depolanmaz. - WAM'nin kullanıcıdan etkileşim istemesi gerekiyorsa bir sistem istemi açılır. Bu istem, alışık olabileceğiniz tarayıcı açılır pencerelerinden biraz farklı görünür.
- WAM isteminde hesabınızı değiştirmek desteklenmez ve MSAL.js bu durumda bir hata (Hata Kodu: user_switch) oluşturur. Bu hatayı yakalamak ve senaryolarınız için anlamlı bir şekilde işlemek uygulamanızın sorumluluğundadır (örneğin, bir hata sayfası gösterme, yeni hesapla yeniden deneme, özgün hesapla yeniden deneme vb.)