Aracılığıyla paylaş


Apple cihazlarında Microsoft Enterprise SSO Uzantısı eklentisi sorunlarını giderme

Bu makalede , Kurumsal SSO eklentisini dağıtma ve kullanma ile ilgili sorunları çözmek için yöneticiler tarafından kullanılan sorun giderme yönergeleri sağlanır. Apple SSO uzantısı iOS/iPadOS ve macOS'a dağıtılabilir.

Kuruluşlar, son kullanıcılarına daha iyi bir deneyim sunmak için şirket cihazlarına SSO dağıtmayı tercih edebilir. Apple platformlarında bu işlem, Birincil Yenileme Belirteçleri aracılığıyla Çoklu Oturum Açma (SSO) uygulamayı içerir. SSO, son kullanıcıları aşırı kimlik doğrulama istemleri yükünden kurtarır.

Microsoft, Microsoft Entra ID ile tümleştirilmiş uygulamalar için aracılı kimlik doğrulaması sağlayan, Apple'ın SSO çerçevesinin üzerine kurulmuş bir eklenti uygulamıştır. Daha fazla bilgi için Apple cihazları için Microsoft Enterprise SSO eklentisi makalesine bakın.

Uzantı türleri

Apple, çerçevesinin parçası olan iki tür SSO Uzantısını destekler: Yeniden Yönlendirme ve Kimlik Bilgileri. Microsoft Enterprise SSO eklentisi Yeniden Yönlendirme türü olarak uygulanmıştır ve kimlik doğrulama için Microsoft Entra ID'ye aracılık yapmak amacıyla en uygunudur. Aşağıdaki tablo iki uzantı türünü karşılaştırır.

Uzantı türü Daha çok uygun olan Nasıl çalışır? Temel farklılıklar
Yönlendir OpenID Connect, OAUTH2 ve SAML (Microsoft Entra ID) gibi modern kimlik doğrulama yöntemleri İşletim Sistemi, uygulamadan MDM yapılandırma profili uzantısında tanımlanan Kimlik sağlayıcısı URL'lerine yönelik kimlik doğrulama isteğini durdurur. Yeniden yönlendirme eklentileri şunları alır: URL'ler, üst bilgiler ve gövde. Veri istemeden önce kimlik bilgilerini isteyin. MDM yapılandırma profilindeki URL'leri kullanır.
Kimlik bilgileri Kerberos (şirket içi Active Directory Domain Services) gibi sınama ve yanıt kimlik doğrulaması türleri İstek, uygulamadan kimlik doğrulama sunucusuna (AD etki alanı denetleyicisi) gönderilir. Kimlik bilgisi uzantıları MDM yapılandırma profilinde HOSTS ile yapılandırılır. Kimlik doğrulama sunucusu, profilde listelenen bir konakla eşleşen bir sınama döndürürse, işletim sistemi sınamayı uzantıya yönlendirir. Uzantı, sınamayı işleme veya reddetme seçeneğine sahiptir. İşlenirse, uzantı isteği tamamlamak için yetkilendirme üst bilgilerini döndürür ve kimlik doğrulama sunucusu çağırana bir yanıt döndürür. Daha sonra istek verileri kimlik doğrulaması için zorlandı. MDM yapılandırma profilinde HOST'leri kullanın.

Microsoft, aşağıdaki istemci işletim sistemleri için aracılı kimlik doğrulaması uygulamalarına sahiptir:

işletim sistemi Kimlik doğrulama aracısı
Windows Web Hesabı Yöneticisi (WAM)
iOS/iPadOS Microsoft Authenticator
Android Microsoft Authenticator veya Microsoft Intune Company Portal
macOS Microsoft Intune Company Portal (SSO Uzantısı aracılığıyla)

Tüm Microsoft aracı uygulamaları, Microsoft Entra ID ile güvenliği sağlanan uygulamalar ve web kaynakları için erişim belirteçleri almak amacıyla kullanılan JSON Web Belirteci (JWT) olan Ana Yenileme Belirteci (PRT) olarak bilinen bir anahtar yapıt kullanır. Bir MDM aracılığıyla dağıtıldığında, macOS veya iOS için Enterprise SSO uzantısı, Web Hesabı Yöneticisi (WAM) tarafından Windows cihazlarında kullanılan PRT'lere benzer bir PRT alır. Daha fazla bilgi için Birincil Yenileme Belirteci nedir? makalesine bakın.

Sorun giderme modeli

Aşağıdaki akış çizelgesinde SSO Uzantısı sorunlarını gidermeye yaklaşmak için mantıksal bir akış özetlenmiştir. Bu makalenin geri kalanında, bu akış çizelgesinde gösterilen adımlarla ilgili ayrıntılara yer verilmiştir. Sorun giderme iki ayrı odak alanına ayrılabilir: Dağıtım ve Uygulama Kimlik Doğrulama Akışı.

macOS'ta Platform SSO'dan çıkma adımları

Yanlışlıkla etkinleştirilen PSSO'yu geri çevirmek için yöneticiler, PSSO'nun etkinleştirildiği SSO uzantısı profilini cihazlardan kaldırmalı ve PSSO bayrakları devre dışı bırakılmış/kaldırılmış yeni bir SSO uzantısı profili dağıtmalıdır.

  1. PSSO etkin olduğunda SSO profili için hedeflemeyi kaldırın
  2. PSSO'nun etkinleştirildiği SSO profilini cihazdan kaldırmak için cihaz eşitlemeyi başlatma
  3. PSSO devre dışı bırakılmış yeni bir SSO profiliyle cihazı hedefleme
  4. Cihaza yeni profilin yüklenmesini sağlamak için cihaz eşitlemesini başlatma

Önemli

Not: Cihazda mevcut SSO profilini güncelleştirmek, PSSO kaydı tamamlandıktan sonra PSSO'yu devre dışı bırakmaya yardımcı olmaz. SSO profilinin cihazdan yalnızca tamamen kaldırılması psso durumunu cihazdan kaldırır.

Bağlam:

Kullanıcılar iki senaryoda macOS 13+ cihazlarda PSSO kayıt bildirimi görmeye başlar:

  1. Cihaz zaten PSSO'yu destekleyen bir Intune Company Portal sürümüne sahipse ve yönetici, PSSO etkinleştirilmiş yeni bir SSO uzantısı ilkesini dağıtıyorsa
  2. Kullanıcı, PSSO'nun etkinleştirildiği SSO uzantısı ilkesiyle zaten hedeflenmişse ve daha sonra cihazda PSSO'yu destekleyen bir Intune Company Portal sürümü yüklenirse.

Dikkat

Yöneticiler, test edilmedikleri ve dağıtılmaya hazır olmadığı sürece PSSO'nun etkinleştirildiği SSO uzantısı ilkesine sahip kullanıcıları hedeflememelidir. Bu, mevcut kullanıcıları ve uyumluluk koşullarını bozabilir.

Önemli

Not: PSSO kaydını tamamlayan kullanıcılar için eski WPJ kaydı anahtarlıktan kaldırılır. PSSO kaydı yanlışlıkla yapıldıysa, yönetici PSSO ile SSO profilini kaldırdıktan ve PSSO olmadan yeni profil yükledikten sonra cihaz uyumluluğunun çalışması için eski WPJ kaydı yeniden yapılmalıdır.

Dağıtım sorunlarını giderme

Müşterilerin karşılaştığı sorunların çoğu, SSO uzantısı profilinin yanlış Mobil Device Management (MDM) yapılandırmalarından veya Apple cihazının MDM'den yapılandırma profilini alamamasından kaynaklanmaktadır. Bu bölümde, MDM profilinin Mac'e dağıtıldığından ve doğru yapılandırmaya sahip olduğundan emin olmak için atabileceğiniz adımlar ele alınmıştır.

Dağıtım gereksinimleri

macOS işletim sistemi sürümünü denetleme

macOS cihazında işletim sistemi (OS) sürümünü denetlemek için aşağıdaki adımları kullanın. Apple SSO Uzantısı profilleri yalnızca macOS 10.15 (Catalina) veya üzerini çalıştıran cihazlara dağıtılır. macOS sürümünü Kullanıcı Arabirimi'nden veya Terminal'den de kontrol edebilirsiniz.

Kullanıcı arabirimi
  1. macOS cihazından sol üst köşedeki Apple simgesini seçin ve Bu Mac Hakkında'yı seçin.

  2. İşletim sistemi sürümü macOS'un yanında listelenir.

Terminal
  1. macOS cihazından Uygulamalar klasörüne çift tıklayın ve ardından Yardımcı Programlar klasörüne çift tıklayın.

  2. Terminal uygulamasına çift tıklayın.

  3. Terminal açıldığında, istemde sw_vers yazın, aşağıdakine benzer bir sonuç arayın:

    % sw_vers
    ProductName: macOS
    ProductVersion: 13.0.1
    BuildVersion: 22A400
    

iOS işletim sistemi sürümünü denetleme

iOS cihazında işletim sistemi (OS) sürümünü denetlemek için aşağıdaki adımları kullanın. Apple SSO Uzantısı profilleri yalnızca iOS 13 veya üzerini çalıştıran cihazlara dağıtılır. iOS sürümünü Ayarlar uygulamasından de kontrol edebilirsiniz. Ayarlar uygulamasını açın:

iOS Ayarları uygulama simgesini gösteren ekran görüntüsü.

Genel'e ve ardından Hakkında'ya gidin. Bu ekranda iOS sürüm numarası dahil olmak üzere cihazla ilgili bilgiler listelenir:

Ayarlar uygulamasında iOS sürümünü gösteren ekran görüntüsü.

MDM ile SSO uzantısı yapılandırma profilinin dağıtımı

Uzantı yapılandırma profilinin Apple cihazlarına dağıtıldığından emin olmak için MDM yöneticinizle (veya Device Management ekibinizle) birlikte çalışın. Uzantı profili, macOS veya iOS cihazlarını destekleyen herhangi bir MDM'den dağıtılabilir.

Önemli

Apple, SSO uzantısının dağıtılması için cihazların bir MDM'ye kaydedilmesini gerektirir.

Aşağıdaki tabloda, uzantıyı hangi işletim sistemine dağıttığınıza bağlı olarak belirli MDM yükleme yönergeleri sağlanır:

Önemli

Tüm MDM'ler SSO Uzantısının dağıtılması için desteklense de, birçok kuruluş MDM uyumluluk ilkelerini değerlendirme yoluyla cihaz tabanlı Koşullu Access ilkeleri uygular. Üçüncü taraf MDM kullanılıyorsa, cihaz tabanlı Koşullu Access ilkelerini kullanmak istiyorsanız MDM satıcısının Intune İş Ortağı Uyumluluğu desteklediğinden emin olun. SSO Uzantısı Intune veya Intune İş Ortağı Uyumluluğunu destekleyen bir MDM sağlayıcısı aracılığıyla dağıtıldığında, uzantı cihaz kimlik doğrulamasının tamamılabilmesi için cihaz sertifikasını Microsoft Entra ID geçirebilir.

macOS cihazında Ağ Yapılandırmasını Doğrulama

Apple'ın SSO uzantısı çerçevesi ve üzerinde oluşturulan Microsoft Enterprise SSO Uzantısı, belirli etki alanlarının TLS kesme/denetlemeden muaf tutulmasını gerektirir (ara sunucu kesme ve inceleme olarak da bilinir). Aşağıdaki etki alanları TLS denetimine tabi olmamalıdır :

  • app-site-association.cdn-apple.com
  • uygulama-site-ilişkilendirme.ağ.apple
TLS İncelemesi nedeniyle SSO yapılandırmasının bozuk olup olmadığını denetleyin

Etkilenen bir cihazda Terminal uygulamasından bir sysdiagnose çalıştırarak TLS denetiminin SSO yapılandırmanızı etkilediğini doğrulayabilirsiniz:

sudo sysdiagnose -f ~/Desktop/

Sysdiagnose, masaüstünüzde .tar.gz arşivi olarak kaydedilir. Arşivi ayıklayın ve system_logs.logarchive dosyasını açın. Bu, Konsol uygulamasında açılır. com.apple.appsso için arama yapıp filtreyi SUBSYSTEM olarak değiştirin:

Sysdiagnose'un gösterildiği ekran görüntüsü.

Özellikle login.microsoftonline.com gibi Microsoft etki alanlarıyla ilgili İlişkili Etki Alanı hatalarının olduğunu belirten olayları arayın. Bu olaylar TLS denetleme sorunlarını gösterebilir ve bu da SSO Uzantısının düzgün çalışmasını engeller. Desteklenmeyen bir TLS inceleme yapılandırmasından etkilenseler bile Apple etki alanları sysdiagnose kaydında görünmez.

TLS İnceleme Yapılandırmasını Doğrulama

Apple, Mac Değerlendirme Yardımcı Programı adı verilen bir dizi yaygın yapılandırma sorununu denetlemek için bir macOS aracı sağlar. Bu araç , BT için AppleSeed'den indirilebilir. Bilgi Teknolojileri için AppleSeed'e erişiminiz varsa, Kaynaklar alanından Mac Değerlendirme Aracını indirin. Uygulamayı yükledikten sonra bir değerlendirme çalıştırın. Değerlendirme tamamlandıktan sonra HTTPS Engelleme -->Ek İçerik --> bölümüne gidin ve aşağıdaki iki öğeyi denetleyin:

Mac Değerlendirme Yardımcı Programı'nı gösteren ekran görüntüsü.

Bu denetimlerin bir uyarısı veya hatası varsa cihazda TLS denetimi gerçekleşebilir. *.cdn-apple.com ve *.networking.apple'ı TLS denetiminden muaf tutabilmek için ağ ekibinizle birlikte çalışın.

Ayrıntılı swcd günlüklerini dışa aktar

Apple, ilişkili etki alanı doğrulamasının ilerleme durumunu izlemeye olanak tanıyan adlı swcutil bir komut satırı yardımcı programı sağlar. Aşağıdaki komutu kullanarak ilişkili etki alanı hatalarını izleyebilirsiniz:

sudo swcutil watch --verbose

Günlüklerde aşağıdaki girdiyi bulun ve onaylanıp işaretlenmediğini veya herhangi bir hata olup olmadığını denetleyin:


    ```
    Entry s = authsrv, a = UBF8T346G9.com.microsoft.CompanyPortalMac, d = login.microsoftonline.com
    ```

macOS TLS denetleme önbelleğini temizleme

İlişkili etki alanlarıyla ilgili sorunlarınız varsa ve cihaz içi TLS inceleme aracınızda izin verilmiş etki alanları varsa Apple'ın ilişkili etki alanı doğrulama önbelleğinin geçersiz kılınması biraz zaman alabilir. Ne yazık ki, tüm makinelerde ilişkili etki alanı yeniden doğrulamayı yeniden tetikleyen belirleyici bir adım yoktur, ancak denenebilecek birkaç şey vardır.

Cihazın önbelleğini sıfırlamak için aşağıdaki komutları çalıştırabilirsiniz:

pkill -9 swcd
sudo swcutil reset
pkill -9 AppSSOAgent

Önbelleği sıfırladıktan sonra SSO uzantısı yapılandırmasını yeniden test edin.

Bazen bu komut yetersizdir ve önbelleği tam olarak sıfırlamaz. Bu gibi durumlarda aşağıdakileri denemeniz gerekir:

  • Intune Company Portal uygulamasını Kaldırın veya Çöp Kutusu'na taşıyın, ardından cihazınızı yeniden başlatın. Yeniden başlatma tamamlandıktan sonra Company Portal uygulamasını yeniden yüklemeyi deneyebilirsiniz.
  • Cihazınızı yeniden kaydedin.

Yukarıdaki yöntemlerden hiçbiri sorununuzu çözmezse, ortamınızda ilişkili etki alanı doğrulamasını engelleyebilecek başka bir şey olabilir. Bu durumda, daha fazla sorun giderme için lütfen Apple desteğine ulaşın.

Sistem Bütünlüğü Koruması'nın (SIP) etkinleştirildiğinden emin olun

Kurumsal SSO çerçevesi, kod imzalama işleminin başarılı bir şekilde doğrulanması gerekir. Bir makine Sistem Bütünlüğü Koruması'nın (SIP) devre dışı bırakıldığını açıkça belirtmişse, kod imzalama düzgün çalışmayabilir. Böyle bir durumda makine aşağıdaki hata gibi sysdiagnose hatalarıyla karşılaşır:

Error Domain=com.apple.AppSSO.AuthorizationError Code=-1000 "invalid team identifier of the extension=com.microsoft.CompanyPortalMac.ssoextension" UserInfo={NSLocalizedDescription=invalid team identifier of the extension=com.microsoft.CompanyPortalMac.ssoextension}

Bu sorunu çözmek için aşağıdaki adımlardan birini gerçekleştirin:

  1. Etkilenen makinede Sistem Bütünlüğü Koruması'nı yeniden etkinleştirin.
  2. Sistem Bütünlüğü Koruması'nı yeniden etkinleştirmek mümkün değilse, sudo nvram boot-argsamfi_get_out_of_my_way değerinin 1olarak ayarlanmadığından emin olun. Varsa, sorunu çözmek için bu değeri kaldırın veya 0 olarak ayarlayın.

macOS cihazında SSO yapılandırma profilini doğrulama

MDM yöneticisinin önceki SSO Uzantısı ProfiliniN MDM Dağıtımı bölümündeki adımları izlediğini varsayarsak, sonraki adım profilin cihaza başarıyla dağıtılıp dağıtılmadığını doğrulamaktır.

SSO uzantısı MDM yapılandırma profilini bulma
  1. macOS cihazından Sistem Ayarları'nı seçin.

  2. Sistem Ayarları göründüğünde Profiller yazın ve return tuşuna basın.

  3. Bu eylem Profiller panelini açmalıdır.

    Yapılandırma profillerini gösteren ekran görüntüsü.

    Ekran görüntüsü açıklaması Açıklama
    1 Cihazın MDM Yönetimi altında olduğunu gösterir.
    2 Aralarından seçim yapabileceğiniz birden çok profil olabilir. Bu örnekte, Microsoft Enterprise SSO Uzantısı Profili Genişletilebilir Çoklu Oturum Açma Profili-32f37be3-302e-4549-a3e3-854d300e117a olarak adlandırılır.

    Not

    Kullanılan MDM türüne bağlı olarak, listelenen birkaç profil olabilir ve bunların adlandırma düzeni MDM yapılandırmasına bağlı olarak rastgeledir. Her birini seçin ve Ayarlar satırının bunun Bir Çoklu Oturum Açma Uzantısı olduğunu gösterdiğini denetleyin.

  4. Çoklu Oturum Açma UzantısınınAyarlar değeriyle eşleşen yapılandırma profiline çift tıklayın.

    SSO uzantısı yapılandırma profilini gösteren ekran görüntüsü.

    Ekran görüntüsü açıklaması Profil yapılandırma ayarı Açıklama
    1 Imzalı MDM sağlayıcısının imzalama yetkilisi.
    2 Yüklü Uzantının ne zaman yüklendiğini (veya güncelleştirildiğinden) gösteren tarih/Zaman damgası.
    3 Ayarlar: Çoklu Oturum Açma Uzantısı Bu yapılandırma profilinin bir Apple SSO Uzantısı türü olduğunu gösterir.
    4 Uzantı Microsoft Kurumsal Uzantı Eklentisi'ni çalıştıran uygulamanın paket kimliğiyle eşleşen tanımlayıcı. Profil bir macOS cihazında yüklüyse tanımlayıcı her zaman olarak ayarlanmalıdır com.microsoft.CompanyPortalMac.ssoextension ve Ekip Tanımlayıcısı (UBF8T346G9) olarak görünmelidir. Herhangi bir değer farklıysa, MDM uzantıyı doğru şekilde çağırmaz.
    5 Tür Microsoft Enterprise SSO Uzantısıher zamanyeniden yönlendirme uzantı türü olarak ayarlanmalıdır. Daha fazla bilgi için bkz. Yeniden Yönlendirme ve Kimlik Bilgisi Uzantısı Türleri.
    6 URL'ler Kimlik Sağlayıcısına ait oturum açma URL'leri (Microsoft Entra ID). Desteklenen URL'lerin listesine bakın.

    Tüm Apple SSO Yeniden Yönlendirme Uzantılarının yapılandırma profilinde aşağıdaki MDM Yükü bileşenleri olmalıdır:

    MDM yük bileşeni Açıklama
    Uzantı Tanımlayıcısı Uzantıyı çalıştıran macOS cihazında uygulamanın hem Paket Tanımlayıcısı'nı hem de Ekip Tanımlayıcısını içerir. Not: Microsoft Enterprise SSO Uzantısı her zaman olarak ayarlanmalıdır: com.microsoft.CompanyPortalMac.ssoextension (UBF8T346G9) uzantı istemci kodunun Intune Company Portal uygulamasının parçası olduğunu macOS işletim sistemine bildirmek için.
    Tür Yeniden Yönlendirme Uzantısı türünü belirtmek için Yeniden Yönlendirme olarak ayarlanmalıdır.
    URL'ler İşletim sisteminin kimlik doğrulama isteklerini uzantıya yönlendirdiği kimlik sağlayıcısının (Microsoft Entra ID) uç nokta URL'leri.
    İsteğe Bağlı Uzantıya Özgü Yapılandırma Yapılandırma parametreleri olarak davranabilen sözlük değerleri. Microsoft Enterprise SSO Uzantısı bağlamında, bu yapılandırma parametrelerine özellik bayrakları adı verilir. Bkz. özellik bayrağı tanımları.

    Not

    Apple'ın SSO Uzantısı profili için MDM tanımlarına, Microsoft'un uzantımızı bu şemaya göre uyguladığı Apple cihazları için Genişletilebilir Çoklu Oturum Açma MDM yük ayarları makalesinde başvurulabilir. Bkz. Apple cihazları için Microsoft Enterprise SSO eklentisi

  5. Microsoft Enterprise SSO Uzantısı için doğru profilin yüklendiğini doğrulamak için Uzantı alanı şu değerle eşleşmelidir: com.microsoft.CompanyPortalMac.ssoextension (UBF8T346G9).

  6. Yapılandırma profilindeki Yüklü alanını not alın; yapılandırmada değişiklik yapıldığında yararlı bir sorun giderme göstergesi olabilir.

Doğru yapılandırma profili doğrulandıysa , Uygulama Kimlik Doğrulama Akışı Sorunlarını Giderme bölümüne geçin.

MDM yapılandırma profili eksik

Önceki bölümü takip ettikten sonra SSO uzantısı yapılandırma profili Profiller listesinde görünmüyorsa, MDM yapılandırmasında Kullanıcı/Cihaz hedeflemesi etkin olabilir ve bu da kullanıcı veya cihazın yapılandırma profilini almasını etkili bir şekilde filtrelemektedir. MDM yöneticinize danışın ve sonraki bölümde bulunan Konsol günlüklerini toplayın.

MDM'ye özgü konsol günlüklerini toplama
  1. macOS cihazından Uygulamalar klasörüne çift tıklayın ve ardından Yardımcı Programlar klasörüne çift tıklayın.

  2. Konsol uygulamasına çift tıklayın.

  3. Konsol izleme günlüğünü etkinleştirmek için Başlangıç düğmesine tıklayın.

    Konsol uygulamasını ve tıklanan başlat düğmesini gösteren ekran görüntüsü.

  4. MDM yöneticisinin yapılandırma profilini bu macOS cihazına/kullanıcısına yeniden dağıtmayı denemesini ve eşitleme döngüsünü zorlamasını sağlayın.

  5. Arama çubuğunasubsystem:com.apple.ManagedClient yazın ve return tuşuna basın.

    Alt sistem filtresine sahip Konsol uygulamasını gösteren ekran görüntüsü.

  6. İmlecin yanıp söndüğü arama çubuğuna mesaj: Genişletilebilir yazın.

    Mesaj alanında ilave filtre uygulanan konsolu gösteren ekran görüntüsü.

  7. Şimdi Genişletilebilir SSO yapılandırma profili etkinliklerine göre filtrelenmiş MDM Konsolu günlüklerini görmeniz gerekir. Aşağıdaki ekran görüntüsünde, yapılandırma profilinin yüklendiğini gösteren Yüklü yapılandırma profili günlük girdisi gösterilmektedir.

Uygulama kimlik doğrulaması akışı sorunlarını giderme

Bu bölümdeki kılavuz, macOS cihazının doğru dağıtılan bir yapılandırma profiline sahip olduğunu varsayar. Adımlar için bkz. macOS Cihazında SSO Yapılandırma Profilini Doğrulama .

Apple cihazları için Microsoft Enterprise SSO Uzantısı dağıtıldıktan sonra her uygulama türü için iki tür uygulama kimlik doğrulaması akışını destekler. Sorun giderme sırasında kullanılan uygulama türünü anlamak önemlidir.

Uygulama türleri

Uygulama türü Etkileşimli kimlik doğrulaması Sessiz kimlik doğrulaması Açıklama Örnekler
Yerel MSAL Uygulaması X X MSAL (Microsoft Authentication Library), Microsoft kimlik platformu (Microsoft Entra ID) ile uygulama oluşturmak için uyarlanmış bir uygulama geliştirici çerçevesidir.
MSAL sürüm 1.1 veya üzeri üzerinde oluşturulan uygulamalar Microsoft Enterprise SSO Uzantısı ile tümleşebilir.
Uygulama SSO uzantısıysa (aracı) uzantıyı başka yapılandırma olmadan kullanıyorsa daha fazla bilgi için MSAL geliştirici örneği belgelerimize bakın.
Microsoft To Do
MSAL Olmayan Yerel/Tarayıcı SSO X Apple ağ teknolojilerini veya web görünümlerini kullanan uygulamalar, SSO Uzantısı'ndan paylaşılan kimlik bilgilerini almak için yapılandırılabilir
Özellik bayrakları, her uygulamanın paket kimliğinin paylaşılan kimlik bilgisini (PRT) almasına izin verecek şekilde yapılandırılmalıdır.
Microsoft Word
Safari
Microsoft Edge
Visual Studio

Önemli

Tüm Microsoft birinci taraf yerel uygulamaları MSAL çerçevesini kullanmaz. Bu makale yayımlanırken, macOS uygulamalarının çoğu Microsoft Office hala eski ADAL kitaplık çerçevesini kullanıyor ve bu nedenle Tarayıcı SSO akışına güveniyor.

macOS'ta bir uygulamanın paket kimliğini bulma

  1. macOS cihazından Uygulamalar klasörüne çift tıklayın ve ardından Yardımcı Programlar klasörüne çift tıklayın.

  2. Terminal uygulamasına çift tıklayın.

  3. Terminal açıldığında, istemde osascript -e 'id of app "<appname>"' yazın. Aşağıdaki bazı örneklere bakın:

    % osascript -e 'id of app "Safari"'
    com.apple.Safari
    
    % osascript -e 'id of app "OneDrive"'
    com.microsoft.OneDrive
    
    % osascript -e 'id of app "Microsoft Edge"'
    com.microsoft.edgemac
    
  4. Paket kimlikleri toplandıklarına göre, MSAL Dışı Yerel/Tarayıcı SSO uygulamalarının SSO Uzantısını kullanabilmesini sağlamak için özellik bayraklarını yapılandırmak için kılavuzumuzu izleyin. Not: Özellik bayrağı yapılandırması için tüm paket kimlikleri büyük/küçük harfe duyarlıdır.

Dikkat

Apple Networking teknolojilerini kullanmayan uygulamalar (WKWebview ve NSURLSession gibi) SSO Uzantısından paylaşılan kimlik bilgilerini (PRT) kullanamaz. Hem Google Chrome hem de Mozilla Firefox bu kategoriye girer. MDM yapılandırma profilinde yapılandırılmış olsalar bile, sonuç tarayıcıda normal bir kimlik doğrulama istemi olur.

Önyükleme

Varsayılan olarak, yalnızca MSAL uygulamaları SSO Uzantısını çağırır ve ardından Uzantı, Microsoft Entra ID'den paylaşılan kimlik bilgisi (PRT) alır. Ancak Safari tarayıcı uygulaması veya diğer MSAL dışı uygulamalar PRT'yi almak için yapılandırılabilir. Bkz. Kullanıcıların MSAL ve Safari tarayıcısı kullanmayan uygulamalardan oturum açmasına izin verme. SSO uzantısı bir PRT aldıktan sonra, kimlik bilgilerini kullanıcı oturum açma anahtarında depolar. Ardından PRT'nin kullanıcının anahtarlığında mevcut olduğundan emin olun:

PRT için anahtarlık erişimi denetleniyor

  1. macOS cihazından Uygulamalar klasörüne çift tıklayın ve ardından Yardımcı Programlar klasörüne çift tıklayın.

  2. Keychain Access uygulamasına çift tıklayın.

  3. Varsayılan AnahtarLıklar'ın altında Yerel Öğeler 'i (veya iCloud) seçin.

    • Tüm Öğeler'in seçili olduğundan emin olun.
    • Arama çubuğunun sağ tarafına primaryrefresh yazın (Filtrelemek için).

    Anahtar Zinciri erişim uygulamasında PRT'yi nasıl bulacağınızı gösteren ekran görüntüsü.

    Ekran görüntüsü açıklaması Anahtarlık yetki bilgisi bileşeni Açıklama
    1 Tüm Öğeler Keychain Access içindeki tüm kimlik bilgisi türlerini gösterir.
    2 Anahtarlık Arama Çubuğu Kimlik bilgilerine göre filtrelemeye izin verir. Microsoft Entra PRT türünü filtrelemek için primaryrefresh
    3 Tür Kimlik türünü belirtir. Microsoft Entra PRT kimlik bilgisi bir Uygulama Parolası kimlik bilgisi türüdür
    4 Hesap PRT'nin sahibi olan Microsoft Entra kullanıcı hesabını şu biçimde görüntüler: UserObjectId.TenantId-login.windows.net
    5 Nerede Kimlik bilgilerinin tam adını görüntüler. Microsoft Entra PRT kimlik bilgisi şu biçimle başlar: primaryrefreshtoken-29d9ed98-a469-4536-ade2-f981bc1d60529d9ed98-a469-4536-ade2-f981bc1d605 , PRT alma isteklerinin işlenmesinden sorumlu Microsoft Kimlik Doğrulama Aracısı hizmetinin Uygulama Kimliğidir
    6 Değiştirilmiş Kimlik bilgilerinin en son ne zaman güncelleştirilmiş olduğunu gösterir. Microsoft Entra PRT kimlik bilgisi, etkileşimli bir oturum açma olayı ile her önyüklendiğinde veya güncellendiğinde, tarih/zaman damgası da güncellenir.
    7 Anahtarlık Seçili kimlik bilgilerinin hangi Anahtarlıkta olduğunu gösterir. Microsoft Entra PRT kimlik bilgisi Yerel Öğeler'de veya iCloud Anahtar Zinciri'nde bulunur. macOS cihazında iCloud etkinleştirildiğinde , Yerel Öğeler Anahtar Zinciri iCloud anahtar zinciri olur
  4. PRT Anahtarlık Access'nde bulunamazsa, uygulama türüne göre aşağıdakileri yapın:

    • Yerel MSAL: Uygulama geliştiricisinin, uygulamanın MSAL sürüm 1.1 veya üzeri ile oluşturulmuşsa, uygulamanın aracıya duyarlı olmasını etkinleştirip etkinleştirmediğini denetleyin. Ayrıca dağıtım sorunlarını elemek için Dağıtım Sorunlarını Giderme adımlarını gözden geçirin.
    • MSAL olmayan (Safari): Özellik bayrağının browser_sso_interaction_enabled MDM yapılandırma profilinde 0 değil 1 olarak ayarlandığından emin olun

PrT'ye önyükleme yaptıktan sonra kimlik doğrulama akışı

PRT (paylaşılan kimlik bilgileri) doğrulandıktan sonra, daha ayrıntılı sorun giderme işlemleri yapmadan önce, her uygulama türü için üst düzey adımları ve Microsoft Enterprise SSO Uzantısı eklentisi (aracı uygulaması) ile nasıl etkileşim kurduğunu anlamak yararlı olacaktır. Aşağıdaki animasyonlar ve açıklamalar, macOS yöneticilerinin günlüğe kaydetme verilerine bakmadan önce senaryoyu anlamasına yardımcı olmalıdır.

Yerel MSAL uygulaması

Senaryo: Apple cihazında çalışan MSAL (Örnek: Microsoft To Do istemcisi) kullanmak için geliştirilen bir uygulamanın, bir Microsoft Entra korumalı hizmeti access için kullanıcıyı Microsoft Entra hesabıyla oturum açması gerekir (Örnek: Microsoft To Do Service).

PRT ile bir MSAL uygulamasının kimlik doğrulama akışını gösteren GIF animasyonu.

  1. MSAL tarafından geliştirilen uygulamalar SSO uzantısını doğrudan çağırır ve PRT'yi Microsoft Entra belirteç uç noktasına, uygulamanın Microsoft Entra korumalı bir kaynak için belirteç isteğiyle birlikte gönderir
  2. Microsoft Entra ID PRT kimlik bilgilerini doğrular ve uygulamaya özgü bir belirteci SSO uzantısı aracısına geri döndürür
  3. SSO uzantı aracısı daha sonra belirteci MSAL istemci uygulamasına geçirir ve ardından bunu Microsoft Entra korumalı kaynağına gönderir
  4. Kullanıcı artık uygulamada oturum açtı ve kimlik doğrulama işlemi tamamlandı
MSAL Olmayan/Tarayıcı SSO

Senaryo: Apple cihazındaki bir kullanıcı, Bir Microsoft Entra korumalı kaynakta oturum açmak için Safari web tarayıcısını (veya Apple Ağ Yığını'nı destekleyen MSAL dışı yerel uygulamalar) açar (Örnek: https://office.com).

SSO Uzantısını kullanan MSAL olmayan bir uygulamanın üst düzey kimlik doğrulama akışını gösteren animasyon.

  1. MSAL olmayan bir uygulama kullanarak (Örnek: Safari), kullanıcı Microsoft Entra tümleşik uygulamasında oturum açmayı dener (Örnek: office.com) ve Microsoft Entra ID'dan belirteç almak için yeniden yönlendirilir
  2. MDM yük yapılandırmasında MSAL Olmayan uygulama izin verilenler listesinde olduğu sürece Apple ağ yığını kimlik doğrulama isteğini engeller ve isteği SSO Uzantı brokerine yönlendirir.
  3. SSO uzantısı kesilen isteği aldıktan sonra PRT, Microsoft Entra belirteci uç noktasına gönderilir
  4. Microsoft Entra ID PRT'yi doğrular ve uygulamaya özgü bir belirteci SSO Uzantısına geri döndürür
  5. Uygulamaya özgü belirteç MSAL olmayan istemci uygulamasına verilir ve istemci uygulaması, Microsoft Entra tarafından korunan hizmete erişmek için belirteci gönderir.
  6. Kullanıcı artık oturum açma işlemini tamamladı ve kimlik doğrulama işlemi tamamlandı

SSO uzantı günlüklerini alma

SSO uzantısıyla ilgili çeşitli sorunları gidermek için en kullanışlı araçlardan biri Apple cihazından istemci günlükleridir.

Company Portal uygulamasından SSO uzantı günlüklerini kaydetme

  1. macOS cihazından Uygulamalar klasörüne çift tıklayın.

  2. Company Portal uygulamasına çift tıklayın.

  3. Company Portal yüklendiğinde üst menü çubuğuna gidin: Yardım->Tanılama raporunu kaydet. Uygulamada oturum açmanız gerekmez.

    Yardım üst menüsünde tanılama raporunu kaydetme adımlarını gösteren ekran görüntüsü.

  4. Company Portal Günlük arşivini istediğiniz yere kaydedin (örneğin: Masaüstü).

  5. CompanyPortal.zip arşivini açın ve SSOExtension.log dosyasını herhangi bir metin düzenleyicisiyle açın.

İpucu

Günlükleri görüntülemenin kullanışlı bir yolu Visual Studio Code kullanmak ve Log Viewer uzantısını yüklemektir.

Terminal ile macOS'ta SSO uzantısı günlüklerini izleme

Sorun giderme sırasında SSOExtension günlüklerini gerçek zamanlı olarak takip ederken bir sorunu yeniden oluşturmak yararlı olabilir:

  1. macOS cihazından Uygulamalar klasörüne çift tıklayın ve ardından Yardımcı Programlar klasörüne çift tıklayın.

  2. Terminal uygulamasına çift tıklayın.

  3. Terminal açıldığında şunu yazın:

    tail -F ~/Library/Containers/com.microsoft.CompanyPortalMac.ssoextension/Data/Library/Caches/Logs/Microsoft/SSOExtension/*
    

    Not

    Sondaki /* işareti, herhangi bir günlük olması durumunda birden çok günlük oluşturulacağını gösterir

    % tail -F ~/Library/Containers/com.microsoft.CompanyPortalMac.ssoextension/Data/Library/Caches/Logs/Microsoft/SSOExtension/*
    ==> /Users/<username>/Library/Containers/com.microsoft.CompanyPortalMac.ssoextension/Data/Library/Caches/Logs/Microsoft/SSOExtension/SSOExtension 2022-12-25--13-11-52-855.log <==
    2022-12-29 14:49:59:281 | I | TID=783491 MSAL 1.2.4 Mac 13.0.1 [2022-12-29 19:49:59] Handling SSO request, requested operation: 
    2022-12-29 14:49:59:281 | I | TID=783491 MSAL 1.2.4 Mac 13.0.1 [2022-12-29 19:49:59] Ignoring this SSO request...
    2022-12-29 14:49:59:282 | I | TID=783491 MSAL 1.2.4 Mac 13.0.1 [2022-12-29 19:49:59] Finished SSO request.
    2022-12-29 14:49:59:599 | I | Beginning authorization request
    2022-12-29 14:49:59:599 | I | TID=783491 MSAL 1.2.4 Mac 13.0.1 [2022-12-29 19:49:59] Checking for feature flag browser_sso_interaction_enabled, value in config 1, value type __NSCFNumber
    2022-12-29 14:49:59:599 | I | TID=783491 MSAL 1.2.4 Mac 13.0.1 [2022-12-29 19:49:59] Feature flag browser_sso_interaction_enabled is enabled
    2022-12-29 14:49:59:599 | I | TID=783491 MSAL 1.2.4 Mac 13.0.1 [2022-12-29 19:49:59] Checking for feature flag browser_sso_disable_mfa, value in config (null), value type (null)
    2022-12-29 14:49:59:599 | I | TID=783491 MSAL 1.2.4 Mac 13.0.1 [2022-12-29 19:49:59] Checking for feature flag disable_browser_sso_intercept_all, value in config (null), value type (null)
    2022-12-29 14:49:59:600 | I | Request does not need UI
    2022-12-29 14:49:59:600 | I | TID=783491 MSAL 1.2.4 Mac 13.0.1 [2022-12-29 19:49:59] Checking for feature flag admin_debug_mode_enabled, value in config (null), value type (null)
    
  4. Sorunu yeniden oluştururken, uç SSOExtension günlüklerinin çıkışını gözlemlemek için Terminal penceresini açık tutun.

iOS'ta SSO uzantısı günlüklerini dışarı aktarma

iOS SSO Uzantısı günlüklerini macOS'ta olduğu gibi gerçek zamanlı olarak görüntülemek mümkün değildir. iOS SSO uzantısı günlükleri Microsoft Authenticator uygulamasından dışarı aktarılabilir ve ardından başka bir cihazdan gözden geçirilebilir:

  1. Microsoft Authenticator uygulamasını açın:

    iOS üzerindeki Microsoft Authenticator uygulamasının simgesini gösteren ekran görüntüsü.

  2. Sol üstteki menü düğmesine basın:

    Microsoft Authenticator uygulamasında menü düğmesinin konumunu gösteren ekran görüntüsü.

  3. "Geri bildirim gönder" seçeneğini belirleyin:

    Microsoft Authenticator uygulamasında geri bildirim gönderme seçeneğinin konumunu gösteren ekran görüntüsü.

  4. "Sorun yaşıyor" seçeneğini belirleyin:

    Microsoft Authenticator uygulamasındaki

  5. Tanılama verilerini görüntüle seçeneğine basın:

    Microsoft Authenticator uygulamasında tanılama verilerini görüntüle düğmesini gösteren ekran görüntüsü.

    İpucu

    Microsoft Support ile çalışıyorsanız, bu aşamada günlükleri desteğe göndermek için Send düğmesine basabilirsiniz. Bu size, Microsoft Support kişinize sağlayabileceğiniz bir Olay Kimliği sağlar.

  6. Günlükleri iOS cihazınızın panosuna kopyalamak için "Tümünü kopyala" düğmesine basın. Daha sonra günlük dosyalarını gözden geçirmek üzere başka bir yere kaydedebilir veya bunları e-postayla veya başka dosya paylaşım yöntemleriyle gönderebilirsiniz:

    Microsoft Authenticator uygulamasında

SSO uzantısının günlüklerini anlama

SSO uzantısı günlüklerini analiz etmek, Microsoft Entra ID kimlik doğrulama istekleri gönderen uygulamalardan kimlik doğrulama akışı sorunlarını gidermenin mükemmel bir yoludur. SSO uzantısı Aracısı her çağrıldığında, bir dizi günlük etkinliği gerçekleşir ve bu etkinlikler Yetkilendirme İstekleri olarak bilinir. Günlükler, sorun giderme için aşağıdaki yararlı bilgileri içerir:

  • Feature Flag (Özellik Bayrağı) yapılandırması
  • Yetkilendirme İsteği Türleri
    • Yerel Microsoft Kimlik Doğrulama Kitaplığı (MSAL)
    • MSAL/Tarayıcı Dışı SSO
  • Kimlik bilgisi alma/storage işlemleri için macOS Anahtar Zinciri ile etkileşim
  • Microsoft Entra oturum açma olayları için korelasyon kimlikleri
    • PRT alımı
    • Cihaz Kaydı

Dikkat

SSO uzantısı günlükleri, özellikle Anahtarlık kimlik bilgisi işlemlerine bakarken son derece ayrıntılıdır. Bu nedenle, sorun giderme sırasında günlüklere bakmadan önce senaryoyu anlamak her zaman en iyisidir.

Günlük yapısı

SSO uzantısı günlükleri sütunlar halinde düzenlenir. Aşağıdaki ekran görüntüsünde günlüklerin sütun dökümü gösterilmektedir:

SSO uzantısı günlüklerinin sütun yapısını gösteren ekran görüntüsü.

Sütun Sütun adı Açıklama
1 Yerel Tarih/Saat Görüntülenen Yerel Tarih ve Saat
2 I-Bilgi
W Uyarısı
E-Hata
Bilgi, Uyarı veya Hataları Görüntüler
3 İş Parçacığı Tanımlayıcı (TID) SSO uzantısı Aracı Uygulamasının yürütmesinin iş parçacığı kimliğini görüntüler
4 MSAL Sürüm Numarası Microsoft Enterprise SSO Eklentisi Aracı Plugin, bir MSAL uygulaması olarak derlenmiştir. Bu sütun, aracı uygulamasının çalıştırılan MSAL sürümünü belirtir
5 macOS sürümü macOS işletim sisteminin sürümünü gösterme
6 UTC Tarih/Saat Görüntülenen UTC Tarihi ve Saati
7 Bağıntı Kimliği Microsoft Entra ID veya Keychain işlemleriyle ilgili günlüklerdeki satırlar, UTC Tarih/Saat sütununu Bağıntı Kimliği ile genişletir.
8 İleti Günlüklerin ayrıntılı mesajlarını gösterir. Sorun giderme bilgilerinin çoğu bu sütunu inceleyerek bulunabilir

Özellik bayrağı yapılandırması

Microsoft Enterprise SSO Uzantısı'nın MDM yapılandırması sırasında, SSO uzantısının davranışını değiştirmek için isteğe bağlı bir uzantıya özgü veriler yönergeler olarak gönderilebilir. Bu yapılandırmaya özgü yönergeler Özellik Bayrakları olarak bilinir. Özellik Bayrağı yapılandırması özellikle MSAL Dışı/Tarayıcı SSO yetkilendirme istekleri türleri için önemlidir, çünkü Paket Kimliği Uzantının çağrılıp çağrılmadığını saptayabilir. Özellik Bayrağı belgelerine bakın. Her yetkilendirme isteği bir Özellik Bayrağı yapılandırma raporuyla başlar. Aşağıdaki ekran görüntüsü, örnek bir özellik bayrağı yapılandırmasını adım adım açıklar.

Microsoft SSO Uzantısının örnek özellik bayrağı yapılandırmasını gösteren ekran görüntüsü.

Çağrı Kutusu Özellik bayrağı Açıklama
1 tarayıcı_sso_etkileşimi_aktif MSAL olmayan veya Safari tarayıcısı PRT'leri önyükleyebilir
2 tarayıcı_sso_mfa_devredışı_bırak (Artık kullanım dışı) PRT kimlik bilgilerinin önyüklemesi sırasında varsayılan olarak MFA gereklidir. Bu yapılandırmanın null olarak ayarlandığına dikkat edin; bu da varsayılan yapılandırmanın zorunlu kılındığı anlamına gelir
3 disable_explicit_app_prompt İstemi azaltmak için uygulamalardan gelen prompt=login kimlik doğrulaması isteklerinin yerini alır
4 UygulamaÖnekiİzinListesi com.microsoft. ile başlayan Paket Kimliği'ne sahip MSAL dışındaki tüm uygulamalar, SSO uzantı komisyoncusu tarafından ele alınabilir ve işlenebilir.

Önemli

Null olarak ayarlanan özellik bayrakları, varsayılan yapılandırmalarının yerinde olduğu anlamına gelir. Diğer ayrıntılar için Özellik Bayrağı belgelerini gözden geçirin

MSAL yerel uygulama oturum açma akışı

Aşağıdaki bölümde, Yerel MSAL Uygulaması kimlik doğrulaması akışı için SSO uzantısı günlüklerinin nasıl incelendiği açıklanmıştır. Bu örnekte, istemci uygulaması olarak MSAL macOS/iOS örnek uygulamasını kullanıyoruz ve uygulama oturum açma kullanıcısının bilgilerini görüntülemek için Microsoft Graph API çağrısı yapıyor.

MSAL yerel: Etkileşimli akış kılavuzu

Başarılı bir etkileşimli oturum açma için aşağıdaki eylemler gerçekleştirilmelidir:

  1. Kullanıcı MSAL macOS örnek uygulamasında oturum açar.
  2. Microsoft SSO Uzantı Aracısı çağrılır ve isteği işler.
  3. Microsoft SSO Uzantı Aracısı, oturum açmış kullanıcının PRT'sini almak için önyükleme işleminden geçer.
  4. PRT'yi Anahtarlık'ta depolayın.
  5. Microsoft Entra ID'de (WPJ) Cihaz Kaydı nesnesinin olup olmadığını denetleyin.
  6. Microsoft Graph'a erişim için User.Read kapsamına sahip bir erişim belirteci istemci uygulamasına döndürür.

Önemli

Aşağıdaki örnek günlük parçacıkları, günlüklerde görünmeyen // işaretli yorum başlıkları ile eklenmiş. Bunlar, belirli bir eylemin yapıldığını göstermeye yardımcı olmak için kullanılır. Kopyalama ve yapıştırma işlemlerine yardımcı olmak için log kesitlerini bu şekilde belgeledik. Ayrıca, günlük örnekleri yalnızca sorun giderme için anlamlı satırları gösterecek şekilde kırpılmıştır.

Kullanıcı, oturum açma işlemini çağırmak için Microsoft Graph API ara düğmesine tıklar.

Microsoft Graph API ara düğmesiyle başlatılan macOS için MSAL örnek uygulamasını gösteren ekran görüntüsü.

//////////////////////////
//get_accounts_operation//
//////////////////////////
Handling SSO request, requested operation: get_accounts_operation
(Default accessor) Get accounts.
(MSIDAccountCredentialCache) retrieving cached credentials using credential query
(Default accessor) Looking for token with aliases (null), tenant (null), clientId 00001111-aaaa-2222-bbbb-3333cccc4444, scopes (null)
(Default accessor) No accounts found in default accessor.
(Default accessor) No accounts found in other accessors.
Completed get accounts SSO request with a personal device mode.
Request complete
Request needs UI
ADB 3.1.40 -[ADBrokerAccountManager allBrokerAccounts:]
ADB 3.1.40 -[ADBrokerAccountManager allMSIDBrokerAccounts:]
(Default accessor) Get accounts.
No existing accounts found, showing webview

/////////
//login//
/////////
Handling SSO request, requested operation: login
Handling interactive SSO request...
Starting SSO broker request with payload: {
    authority = "https://login.microsoftonline.com/common";
    "client_app_name" = MSALMacOS;
    "client_app_version" = "1.0";
    "client_id" = "00001111-aaaa-2222-bbbb-3333cccc4444";
    "client_version" = "1.1.7";
    "correlation_id" = "aaaa0000-bb11-2222-33cc-444444dddddd";
    "extra_oidc_scopes" = "openid profile offline_access";
    "instance_aware" = 0;
    "msg_protocol_ver" = 4;
    prompt = "select_account";
    "provider_type" = "provider_aad_v2";
    "redirect_uri" = "msauth.com.microsoft.idnaace.MSALMacOS://auth";
    scope = "user.read";
}

////////////////////////////////////////////////////////////
//Request PRT from Microsoft Authentication Broker Service//
////////////////////////////////////////////////////////////
Using request handler <ADInteractiveDevicelessPRTBrokerRequestHandler: 0x117ea50b0>
(Default accessor) Looking for token with aliases (null), tenant (null), clientId 11112222-bbbb-3333-cccc-4444dddd5555, scopes (null)
Attempting to get Deviceless Primary Refresh Token interactively.
Caching AAD Environements
networkHost: login.microsoftonline.com, cacheHost: login.windows.net, aliases: login.microsoftonline.com, login.windows.net, login.microsoft.com, sts.windows.net
networkHost: login.partner.microsoftonline.cn, cacheHost: login.partner.microsoftonline.cn, aliases: login.partner.microsoftonline.cn, login.chinacloudapi.cn
networkHost: login.microsoftonline.de, cacheHost: login.microsoftonline.de, aliases: login.microsoftonline.de
networkHost: login.microsoftonline.us, cacheHost: login.microsoftonline.us, aliases: login.microsoftonline.us, login.usgovcloudapi.net
networkHost: login-us.microsoftonline.com, cacheHost: login-us.microsoftonline.com, aliases: login-us.microsoftonline.com
Resolved authority, validated: YES, error: 0
[MSAL] Resolving authority: Masked(not-null), upn: Masked(null)
[MSAL] Resolved authority, validated: YES, error: 0
[MSAL] Start webview authorization session with webview controller class MSIDAADOAuthEmbeddedWebviewController: 
[MSAL] Presenting web view controller. 

Günlük örneği üç bölüme ayrılabilir:

Parça Açıklama
get_accounts_operation Önbellekte var olan hesaplar olup olmadığını denetler
- ClientID: Microsoft Entra ID'de kayıtlı olan bu MSAL uygulaması için uygulama kimliği
ADB 3.1.40 , Microsoft Enterprise SSO Uzantı Aracısı eklentisinin sürümünü gösterir
login Aracı, Microsoft Entra ID isteğini işler:
- Etkileşimli SSO isteğini işleme...: Etkileşimli bir isteği belirtir
- correlation_id: Microsoft Entra sunucu tarafı oturum açma günlükleriyle çapraz referans vermek için kullanışlıdır
- scope: Microsoft Graph'tan talep edilen User.Read API izin kapsamı
- client_version: Uygulamanın çalıştırılan MSAL sürümü
- redirect_uri: MSAL uygulamaları şu formatı kullanırmsauth.com.<Bundle ID>://auth
PRT İsteği PRT'nin etkileşimli olarak elde edilmesi için önyükleme işlemi başlatıldı ve Webview SSO Oturumu'nu görüntüler.

Microsoft Kimlik Doğrulama Aracısı Hizmeti
- istemci kimliği: 29d9ed98-a469-4536-ade2-f981bc1d605e
- Tüm PRT istekleri Microsoft Kimlik Doğrulama Aracısı Hizmeti'ne yapılır

SSO WebView Denetleyicisi görüntülenir ve kullanıcıdan Microsoft Entra oturum açma bilgilerini (UPN/e-posta) girmesi istenir

Kullanıcı bilgilerinin girildiği Apple SSO istemini ve daha fazla bilgi açıklamasını gösteren ekran görüntüsü.

Not

Web görünümü denetleyicisinin sol alt köşesindeki i işaretine tıklanması, SSO uzantısı hakkında daha fazla bilgi ve onu çağıran uygulamayla ilgili ayrıntılar görüntüler.

İstem SSO ekranından SSO uzantısı hakkında daha fazla bilgi ayrıntılarını gösteren ekran görüntüsü. Kullanıcı Microsoft Entra kimlik bilgilerini başarıyla girdikten sonra aşağıdaki günlük girişleri SSO uzantısı günlüklerine yazılır

SSOExtensionLogs
///////////////
//Acquire PRT//
///////////////
[MSAL] -completeWebAuthWithURL: msauth://microsoft.aad.brokerplugin/?code=(not-null)&client_info=(not-null)&state=(not-null)&session_state=(not-null)
[MSAL] Dismissed web view controller.
[MSAL] Result from authorization session callbackURL host: microsoft.aad.brokerplugin , has error: NO
[MSAL] (Default accessor) Looking for token with aliases (
    "login.windows.net",
    "login.microsoftonline.com",
    "login.windows.net",
    "login.microsoft.com",
    "sts.windows.net"
), tenant (null), clientId 29d9ed98-a469-4536-ade2-f981bc1d605e, scopes (null)
Saving PRT response in cache since no other PRT was found
[MSAL] Saving keychain item, item info Masked(not-null)
[MSAL] Keychain find status: 0
Acquired PRT.

///////////////////////////////////////////////////////////////////////
//Discover if there is an Azure AD Device Registration (WPJ) present //
//and if so re-acquire a PRT and associate with Device ID            //
///////////////////////////////////////////////////////////////////////
WPJ Discovery: do discovery in environment 0
Attempt WPJ discovery using tenantId.
WPJ discovery succeeded.
Using cloud authority from WPJ discovery: https://login.microsoftonline.com/common
ADBrokerDiscoveryAction completed. Continuing Broker Flow.
PRT needs upgrade as device registration state has changed. Device is joined 1, prt is joined 0
Beginning ADBrokerAcquirePRTInteractivelyAction
Attempting to get Primary Refresh Token interactively.
Acquiring broker tokens for broker client id.
Resolving authority: Masked(not-null), upn: auth.placeholder-61945244__domainname.com
Resolved authority, validated: YES, error: 0
Enrollment id read from intune cache : (null).
Handle silent PRT response Masked(not-null), error Masked(null)
Acquired broker tokens.
Acquiring PRT.
Acquiring PRT using broker refresh token.
Requesting PRT from authority https://login.microsoftonline.com/<TenantID>/oauth2/v2.0/token
[MSAL] (Default accessor) Looking for token with aliases (
    "login.windows.net",
    "login.microsoftonline.com",
    "login.windows.net",
    "login.microsoft.com",
    "sts.windows.net"
), tenant (null), clientId (null), scopes (null)
[MSAL] Acquired PRT successfully!
Acquired PRT.
ADBrokerAcquirePRTInteractivelyAction completed. Continuing Broker Flow.
Beginning ADBrokerAcquireTokenWithPRTAction
Resolving authority: Masked(not-null), upn: auth.placeholder-61945244__domainname.com
Resolved authority, validated: YES, error: 0
Handle silent PRT response Masked(not-null), error Masked(null)

//////////////////////////////////////////////////////////////////////////
//Provide Access Token received from Azure AD back to Client Application// 
//and complete authorization request                                    //
//////////////////////////////////////////////////////////////////////////
[MSAL] (Default cache) Removing credentials with type AccessToken, environment login.windows.net, realm TenantID, clientID 00001111-aaaa-2222-bbbb-3333cccc4444, unique user ID dbb22b2f, target User.Read profile openid email
ADBrokerAcquireTokenWithPRTAction succeeded.
Composing broker response.
Sending broker response.
Returning to app (msauth.com.microsoft.idnaace.MSALMacOS://auth) - protocol version: 3
hash: AA11BB22CC33DD44EE55FF66AA77BB88CC99DD00
payload: Masked(not-null)
Completed interactive SSO request.
Completed interactive SSO request.
Request complete
Completing SSO request...
Finished SSO request.

Kimlik doğrulama/yetkilendirme akışının bu noktasında PRT başlatıldı ve macOS anahtar zinciri erişiminde görünür olmalıdır. Bkz. PRT için Anahtarlık Erişimini Denetleme MSAL macOS örneği uygulaması, kullanıcının bilgilerini görüntülemek için Microsoft SSO Uzantı Aracısı'ndan alınan access belirtecini kullanır.

Ardından, istemci tarafı SSO uzantısı günlüklerinden toplanan bağıntı kimliğine göre sunucu tarafı Microsoft Entra oturum açma günlüklerini inceleyin. Daha fazla bilgi için bkz. Microsoft Entra ID'da oturum açma günlükleri.

Microsoft Entra oturum açma günlüklerini bağıntı kimliği filtresine göre görüntüleme
  1. Uygulamanın kayıtlı olduğu kiracı için Microsoft Entra Oturum Açma İşlemlerini açın.
  2. Kullanıcı oturum açma işlemleri (etkileşimli) seçeneğini belirleyin.
  3. Filtre Ekle'yi seçin ve Bağıntı Kimliği radyo düğmesini seçin.
  4. SSO uzantısı günlüklerinden alınan Bağıntı Kimliğini kopyalayıp yapıştırın ve Uygula'yı seçin.

MSAL Etkileşimli Oturum Açma Akışı için kaynak Microsoft Kimlik Doğrulama Aracısı hizmeti için etkileşimli bir oturum açma görmeyi bekliyoruz. Bu olay, kullanıcının PRT'yi önyüklemek için parolasını girdiği yerdir.

"Cihaz ID'sinden Microsoft Entra ID'ye ve ardından Microsoft Authentication Broker Servisi'ne etkileşimli bir oturum açmayı gösteren ekran görüntüsü, Microsoft Entra ID'nin etkileşimli Kullanıcı Oturum Açma bilgilerini gösteriyor."

PRT'nin, istemci uygulamasının isteğine yönelik erişim belirtecini elde etmek için kullanılması nedeniyle etkileşimsiz oturum açma olayları da vardır. Microsoft Entra oturum açma günlüklerini Bağıntı Kimliği Filtresi göre görüntüle'yi izleyin, ancak 2. adımda Kullanıcı oturum açma işlemleri (etkileşimli olmayan) seçeneğini belirleyin.

SSO uzantısının bir erişim belirteci almak için PRT'yi nasıl kullandığını gösteren ekran görüntüsü.

Oturum açma günlüğü özniteliği Açıklama
Uygulama Microsoft Entra kiracısında istemci uygulamasının kimlik doğrulaması yaptığı uygulama kaydının görünen adı.
Uygulama Kimliği Microsoft Entra kiracısındaki uygulama kaydının ClientID'sine de atıfta bulunulur.
Kaynak İstemci uygulamasının erişim sağlamaya çalıştığı API kaynağı. Bu örnekte kaynak Microsoft Graph API şeklindedir.
Gelen Belirteç Türü Gelen bir belirteç türü olan Primary Refresh Token (PRT), kaynak için bir erişim belirteci elde etmek üzere kullanılan giriş belirtecini gösterir.
Kullanıcı Aracısı Bu örnekteki kullanıcı aracısı dizesi, Microsoft SSO Uzantısı'nın bu isteği işleyen uygulama olduğunu gösteriyor. SSO uzantısının kullanıldığını ve aracı kimlik doğrulaması isteğinin gerçekleştiğini gösteren yararlı bir gösterge.
Microsoft Entra uygulaması kimlik doğrulama kitaplığı Bir MSAL uygulaması kullanılırken kitaplığın ayrıntıları ve platform burada yazılır.
Oauth Kapsam Bilgileri Erişim belirteci için talep edilen Oauth2 kapsam bilgileri. (User.Read,profile,openid,email).
MSAL Doğal: Sessiz akış süreci kılavuzu

Erişim anahtarı belli bir süreden sonra artık geçerli olmayacaktır. Bu nedenle, kullanıcı Microsoft Graph API düğmesini yeniden tıklatırsa. SSO uzantısı, erişim belirtecini önceden alınmış PRT ile yenilemeye çalışır.

SSOExtensionLogs
/////////////////////////////////////////////////////////////////////////
//refresh operation: Assemble Request based on User information in PRT  /  
/////////////////////////////////////////////////////////////////////////
Beginning authorization request
Request does not need UI
Handling SSO request, requested operation: refresh
Handling silent SSO request...
Looking account up by home account ID dbb22b2f, displayable ID auth.placeholder-61945244__domainname.com
Account identifier used for request: Masked(not-null), auth.placeholder-61945244__domainname.com
Starting SSO broker request with payload: {
    authority = "https://login.microsoftonline.com/<TenantID>";
    "client_app_name" = MSALMacOS;
    "client_app_version" = "1.0";
    "client_id" = "00001111-aaaa-2222-bbbb-3333cccc4444";
    "client_version" = "1.1.7";
    "correlation_id" = "aaaa0000-bb11-2222-33cc-444444dddddd";
    "extra_oidc_scopes" = "openid profile offline_access";
    "home_account_id" = "<UserObjectId>.<TenantID>";
    "instance_aware" = 0;
    "msg_protocol_ver" = 4;
    "provider_type" = "provider_aad_v2";
    "redirect_uri" = "msauth.com.microsoft.idnaace.MSALMacOS://auth";
    scope = "user.read";
    username = "auth.placeholder-61945244__domainname.com";
}
//////////////////////////////////////////
//Acquire Access Token with PRT silently//
//////////////////////////////////////////
Using request handler <ADSSOSilentBrokerRequestHandler: 0x127226a10>
Executing new request
Beginning ADBrokerAcquireTokenSilentAction
Beginning silent flow.
[MSAL] Resolving authority: Masked(not-null), upn: auth.placeholder-61945244__domainname.com
[MSAL] (Default cache) Removing credentials with type AccessToken, environment login.windows.net, realm <TenantID>, clientID 00001111-aaaa-2222-bbbb-3333cccc4444, unique user ID dbb22b2f, target User.Read profile openid email
[MSAL] (MSIDAccountCredentialCache) retrieving cached credentials using credential query
[MSAL] Silent controller with PRT finished with error Masked(null)
ADBrokerAcquireTokenWithPRTAction succeeded.
Composing broker response.
Sending broker response.
Returning to app (msauth.com.microsoft.idnaace.MSALMacOS://auth) - protocol version: 3
hash: AA11BB22CC33DD44EE55FF66AA77BB88CC99DD00
payload: Masked(not-null)
Completed silent SSO request.
Request complete
Completing SSO request...
Finished SSO request.

Kayıt örneği iki segmente ayrılabilir:

Parça Açıklama
refresh Broker, Microsoft Entra ID isteğini işler.
- Sessiz SSO isteği işleniyor...: Sessiz bir isteği belirtir
- correlation_id: Microsoft Entra sunucu tarafı oturum açma günlükleriyle çapraz referans vermek için kullanışlıdır
- scope: User.Read API izin kapsamı isteniyor Microsoft Graph
- client_version: Uygulamanın çalıştırılan MSAL sürümü
- redirect_uri: MSAL uygulamaları şu formatı kullanırmsauth.com.<Bundle ID>://auth

Yenilemenin istek yüküyle ilgili önemli farkları vardır:
- authority: Microsoft Entra kiracı URL uç noktasını, genel uç noktanın aksine içerir
- home_account_id: Kullanıcı hesabını UserObjectId< biçiminde> gösterin.<Kiracı Kimliği>
- kullanıcı adı: karma UPN biçimi auth.placeholder-XXXXXXXX__domainname.com
PRT Yenileme ve Erişim Tokeni Alma Bu işlem, erişim belirtecini çağıran istemci uygulamasına geri döndürmeden önce PRT'yi yeniden doğrular ve gerekirse yeniler.

İstemci tarafı SSO Uzantısı günlüklerinden elde edilen bağıntı kimliğini yeniden alabiliriz ve sunucu tarafı Microsoft Entra oturum açma günlükleriyle karşılaştırabiliriz.

Microsoft Entra'nın, Enterprise SSO Broker eklentisini kullanarak yaptığı sessiz oturum açma isteğini gösteren ekran görüntüsü

Microsoft Entra Oturum Açma, önceki interactive login section içindeki login işleminden Microsoft Graph kaynağıyla aynı bilgileri gösterir.

MSAL olmayan/Tarayıcı tabanlı SSO uygulamasında oturum açma akışı

Aşağıdaki bölümde, MSAL-dışı/Tarayıcı Tabanlı Olmayan Uygulama kimlik doğrulama akışı için SSO uzantısı günlüklerinin nasıl inceleneceği açıklanmaktadır. Bu örnekte, istemci uygulaması olarak Apple Safari tarayıcısını kullanıyoruz ve uygulama Office.com (OfficeHome) web uygulamasına çağrı yapıyor.

MSAL dışı SSO/Tarayıcı akışı kılavuzu

Başarılı bir oturum açma için aşağıdaki eylemler gerçekleştirilmelidir:

  1. Önyükleme işleminden geçmiş olan kullanıcının mevcut bir PRT'sine sahip olduğunu varsayalım.
  2. Bir cihazda , Microsoft SSO Uzantı Aracısı dağıtıldığında, uygulamanın SSO Uzantısı tarafından işlendiğinden emin olmak için yapılandırılan özellik bayrakları denetleniyor.
  3. Safari tarayıcısı Apple Ağ Yığını'na bağlı olduğundan, SSO uzantısı Microsoft Entra kimlik doğrulama isteğini kesmeye çalışır.
  4. PRT, istenen kaynak için bir belirteç almak için kullanılır.
  5. Cihaz Microsoft Entra'ya kayıtlıysa, istekle birlikte Cihaz Kimliği'ni gönderir.
  6. SSO uzantısı, kaynakta oturum açmak için Tarayıcı isteğinin üst bilgisini doldurur.

Aşağıdaki istemci tarafı SSO Uzantısı günlükleri, SSO uzantısı aracısı tarafından isteğin şeffaf bir şekilde yönetildiğini gösterir.

SSOExtensionLogs
Created Browser SSO request for bundle identifier com.apple.Safari, cookie SSO include-list (
), use cookie sso for this app 0, initiating origin https://www.office.com
Init MSIDKeychainTokenCache with keychainGroup: Masked(not-null)
[Browser SSO] Starting Browser SSO request for authority https://login.microsoftonline.com/common
[MSAL] (Default accessor) Found 1 tokens
[Browser SSO] Checking PRTs for deviceId 73796663
[MSAL] [Browser SSO] Executing without UI for authority https://login.microsoftonline.com/common, number of PRTs 1, device registered 1
[MSAL] [Browser SSO] Processing request with PRTs and correlation ID in headers (null), query aaaa0000-bb11-2222-33cc-444444dddddd
[MSAL] Resolving authority: Masked(not-null), upn: Masked(null)
[MSAL] No cached preferred_network for authority
[MSAL] Caching AAD Environements
[MSAL] networkHost: login.microsoftonline.com, cacheHost: login.windows.net, aliases: login.microsoftonline.com, login.windows.net, login.microsoft.com, sts.windows.net
[MSAL] networkHost: login.partner.microsoftonline.cn, cacheHost: login.partner.microsoftonline.cn, aliases: login.partner.microsoftonline.cn, login.chinacloudapi.cn
[MSAL] networkHost: login.microsoftonline.de, cacheHost: login.microsoftonline.de, aliases: login.microsoftonline.de
[MSAL] networkHost: login.microsoftonline.us, cacheHost: login.microsoftonline.us, aliases: login.microsoftonline.us, login.usgovcloudapi.net
[MSAL] networkHost: login-us.microsoftonline.com, cacheHost: login-us.microsoftonline.com, aliases: login-us.microsoftonline.com
[MSAL] Resolved authority, validated: YES, error: 0
[MSAL] Found registration registered in login.microsoftonline.com, isSameAsRequestEnvironment: Yes
[MSAL] Passing device header in browser SSO for device id 43cfaf69-0f94-4d2e-a815-c103226c4c04
[MSAL] Adding SSO-cookie header with PRT Masked(not-null)
SSO extension cleared cookies before handling request 1
[Browser SSO] SSO response is successful 0
[MSAL] Keychain find status: 0
[MSAL] (Default accessor) Found 1 tokens
Request does not need UI
[MSAL] [Browser SSO] Checking PRTs for deviceId 73796663
Request complete
SSO uzantı günlüğü bileşeni Açıklama
Tarayıcı SSO isteği oluşturuldu Tüm MSAL/Tarayıcı dışı SSO istekleri şu satırla başlar:
- paket tanımlayıcısı: Paket kimliği: com.apple.Safari
- Başlatıcı kaynak: Microsoft Entra ID oturum açma URL'lerinden birine erişilmeden önce tarayıcının eriştiği web URL'si
Tarayıcı SSO isteğini yetkili için başlatma PRT sayısını ve Cihazın Kayıtlı olup olmadığını çözer:
https://login.microsoftonline.com/common, PRT sayısı 1, kayıtlı cihaz 1
Bağıntı Kimliği [Tarayıcı SSO] Üst bilgilerdeki PRT'ler ve CorrelationID (null) ile istek işleniyor, sorgu CorrelationID. Bu kimlik, Microsoft Entra sunucu tarafı oturum açma günlükleriyle çapraz başvuruda bulunmak için önemlidir
Cihaz Kaydı İsteğe bağlı olarak cihaz Microsoft Entra kayıtlıysa, SSO uzantısı Tarayıcı SSO isteklerinde cihaz üst bilgisini geçirebilir:
- Kayıtlı kayıt bulundu
- login.microsoftonline.com, isSameAsRequestEnvironment: Evet

Cihaz kimliği için tarayıcı SSO'sunda cihaz üst bilgisini geçirme43cfaf69-0f94-4d2e-a815-c103226c4c04

Ardından, Tarayıcı SSO uzantısı günlüklerinden alınan bağıntı kimliğini kullanarak Microsoft Entra oturum açma günlüklerine çapraz başvuruda bulunun.

Microsoft Entra oturum açma günlüklerindeki Tarayıcı SSO Uzantısı için çapraz başvuruyu gösteren ekran görüntüsü.

Oturum açma günlüğü özniteliği Açıklama
Uygulama Microsoft Entra kiracısında istemci uygulamasının kimlik doğrulaması yaptığı uygulama kaydının görünen adı. Bu örnekte görünen ad OfficeHome'dir.
Uygulama Kimliği Microsoft Entra kiracısındaki uygulama kaydının ClientID'sine de atıfta bulunulur.
Kaynak İstemci uygulamasının erişim sağlamaya çalıştığı API kaynağı. Bu örnekte, kaynak OfficeHome web uygulamasıdır.
Gelen Belirteç Türü Primary Refresh Token (PRT) giriş belirteç türü, kaynak için bir erişim belirteci almak amacıyla kullanılan giriş belirtecini gösterir.
Kimlik doğrulama yöntemi algılandı Kimlik Doğrulama Ayrıntıları sekmesinde, Microsoft Entra SSO eklentisinin değeri, Tarayıcı SSO isteğini kolaylaştırmak için SSO uzantısının kullanıldığının yararlı bir göstergesidir
Microsoft Entra SSO uzantısı sürümü Ek Ayrıntılar sekmesinde, bu değer Microsoft Enterprise SSO uzantısı Aracısı uygulamasının sürümünü gösterir.
Cihaz Kimliği Cihaz kayıtlıysa, SSO uzantısı cihaz kimlik doğrulama isteklerini işlemek için Cihaz Kimliğini geçirebilir.
İşletim Sistemi İşletim sisteminin türünü gösterir.
Uyumlu SSO uzantısı, cihaz üst bilgisini geçirerek Uyumluluk ilkelerini kolaylaştırabilir. Gereksinimler şunlardır:
- Microsoft Entra Cihaz Kaydı
- MDM Yönetimi
- Intune veya Intune İş Ortağı Uyumluluğu
Yönetilen Cihazın yönetim altında olduğunu gösterir.
Birleştirme Türü macOS ve iOS, kayıtlıysa yalnızca şu türde olabilir: Microsoft Entra kayıtlı.

İpucu

Jamf Connect kullanıyorsanız Jamf Connect'i Microsoft Entra ID ile tümleştirmeyle ilgili en son Jamf yönergelerini izlemeniz önerilir. Önerilen tümleştirme düzeni, Jamf Connect'in Koşullu Access ilkelerinizle ve Microsoft Entra ID Protection ile düzgün çalışmasını sağlar.

Sonraki adımlar