Hata AADSTS50020 - Kimlik sağlayıcısından gelen kullanıcı hesabı kiracıda yok

Bu makale, bir kimlik sağlayıcısından (IdP) konuk kullanıcı Microsoft Entra ID bir kaynak kiracısında oturum açamıyorsa döndürülen hata kodunu AADSTS50020 gidermenize yardımcı olur.

Belirtiler

Konuk kullanıcı kaynak kiracısında bir uygulamaya veya kaynağa erişmeye çalıştığında oturum açma başarısız olur ve aşağıdaki hata iletisi görüntülenir:

AADSTS50020: {IdentityProviderURL} kimlik sağlayıcısından '' kullanıcı hesabıuser@domain.com {ResourceTenantName} kiracısında yok.

Bir yönetici ev kiracısında oturum açma günlüklerini gözden geçirince, "90072" hata kodu girişi bir oturum açma hatası olduğunu gösterir. Hata iletisinde şu ifadeler yer aldı:

{idp} kimlik sağlayıcısından {email} kullanıcı hesabı {tenant} kiracısında yok ve bu kiracıdaki {appId}({appName}) uygulamasına erişemiyor. Önce hesabın kiracıya dış kullanıcı olarak eklenmesi gerekir. Oturumu kapatın ve farklı bir Microsoft Entra kullanıcı hesabıyla yeniden oturum açın.

Neden 1: Kullanıcılar kişisel Microsoft Hesaplarını kullanarak Microsoft Entra yönetim merkezi oturum açar

Kişisel Microsoft Hesaplarınızı (Outlook, Hotmail veya OneDrive) kullanarak Microsoft Entra yönetim merkezi oturum açmaya çalıştığınızda, varsayılan olarak Microsoft Hizmetleri kiracısına bağlanırsınız. Varsayılan kiracıda, herhangi bir eylem gerçekleştirmek için bağlı dizin yoktur. Bu davranış beklenmektedir.

Önceki deneyimde bir dizin (örneğin: UserNamehotmail735.onmicrosoft.com) oluşturulur ve kişisel hesaba bağlanır ve dizinde kullanıcı hesabı oluşturma gibi eylemler gerçekleştirebilirsiniz. Davranış şimdi değiştirildi.

Çözüm: Yeni bir kiracıyla Azure hesabı oluşturma

Bir dizine sahip olmayı hedefliyorsanız, bir Azure hesabı ve yeni bir kiracı oluşturmanız gerekir:

  1. adresine https://azure.microsoft.com/en-us/free/gidin ve ardından Ücretsiz başlat'ı seçin.
  2. Azure hesabı oluşturmak için yönergeleri izleyin.
  3. Azure hesabıyla birlikte bir kiracı oluşturulur ve otomatik olarak Genel Yönetici olarak atanırsınız. Bu, bu kiracıdaki tüm seçeneklere tam erişim sağlar.

Neden 2: Desteklenmeyen hesap türü (çok kiracılı ve kişisel hesaplar) kullanıldı

Uygulama kaydınız tek kiracılı bir hesap türüne ayarlandıysa, diğer dizinlerden veya kimlik sağlayıcılarından kullanıcılar bu uygulamada oturum açamaz.

Çözüm: Uygulama kayıt bildiriminde oturum açma hedef kitlesi ayarını değiştirme

Uygulama kaydınızın tek kiracılı bir hesap türü olmadığından emin olmak için aşağıdaki adımları uygulayın:

  1. Azure portalUygulama kayıtları arayın ve seçin.

  2. Uygulama kaydınızın adını seçin.

  3. Kenar çubuğunda Bildirim'i seçin.

  4. JSON kodunda signInAudience ayarını bulun.

  5. Ayarın aşağıdaki değerlerden birini içerip içermediğini denetleyin:

    • AzureADandPersonalMicrosoftAccount
    • AzureADMultipleOrgs
    • PersonalMicrosoftAccount

    signInAudience ayarı bu değerlerden birini içermiyorsa, doğru hesap türünü seçerek uygulama kaydını yeniden oluşturun. Şu anda bildirimde signInAudience öğesini değiştiremezsiniz.

Uygulamaları kaydetme hakkında daha fazla bilgi için bkz. Hızlı Başlangıç: Uygulamayı Microsoft kimlik platformu kaydetme.

Neden 3: Yanlış uç nokta (kişisel ve kuruluş hesapları) kullanıldı

Uygulama kaydınızın desteklenen hesap türü aşağıdaki değerlerden birine ayarlandıysa, kimlik doğrulama çağrınız seçiminizle eşleşen bir URL'yi hedeflemelidir:

  • Herhangi bir kuruluş dizinindeki hesaplar (Herhangi bir Microsoft Entra dizini - Çok Kiracılı)

  • Herhangi bir kuruluş dizinindeki hesaplar (Herhangi bir Microsoft Entra dizini - Çok kiracılı) ve kişisel Microsoft hesapları (örneğin Skype, Xbox)

  • Yalnızca kişisel Microsoft hesapları

kullanıyorsanız https://login.microsoftonline.com/<YourTenantNameOrID>, diğer kuruluşlardaki kullanıcılar uygulamaya erişemez. Bu kullanıcıları istekte belirtilen kiracıya konuk olarak eklemeniz gerekir. Bu durumda kimlik doğrulamasının yalnızca kiracınızda çalıştırılması beklenir. Bu senaryo, kullanıcıların başka bir kiracı veya kimlik sağlayıcısıyla federasyon kullanarak oturum açmasını bekliyorsanız oturum açma hatasına neden olur.

Çözüm: Doğru oturum açma URL'sini kullanın

Aşağıdaki tabloda listelendiği gibi, belirli bir uygulama türü için ilgili oturum açma URL'sini kullanın:

Uygulama türü Oturum açma URL'si
Çok kiracılı uygulamalar https://login.microsoftonline.com/organizations
Çok kiracılı ve kişisel hesaplar https://login.microsoftonline.com/common
Yalnızca kişisel hesaplar https://login.microsoftonline.com/consumers

Uygulama kodunuzda bu URL değerini ayara Authority uygulayın. hakkında Authoritydaha fazla bilgi için bkz. Microsoft kimlik platformu uygulama yapılandırma seçenekleri.

Neden 4: Yanlış kiracıda oturum açtı

Kullanıcılar uygulamanıza erişmeye çalıştığında, uygulamaya doğrudan bir bağlantı gönderilir veya aracılığıyla https://myapps.microsoft.comerişim elde etmeye çalışırlar. Her iki durumda da kullanıcılar uygulamada oturum açmak için yeniden yönlendirilir. Bazı durumlarda, kullanıcının zaten kullanılması amaçlanandan farklı bir kişisel hesap kullanan etkin bir oturumu olabilir. Ya da kişisel bir konuk hesabı (veya tam tersi) kullanmayı amaçlamış olsalar da kuruluş hesabını kullanan bir oturumu vardır.

Sorunun bu senaryo olduğundan emin olmak için hata iletisindeki User account ve Identity provider değerlerini arayın. Bu değerler beklenen birleşimle eşleşmiyor mu? Örneğin, bir kullanıcı kuruluş hesabını ev kiracısı yerine kiracınızda kullanarak mı oturum açmıştı? Yoksa bir kullanıcı, zaten davet edilmiş olandan farklı bir kişisel hesap kullanarak kimlik sağlayıcısında oturum live.com açmış mı?

Çözüm: Oturumu kapatın, sonra farklı bir tarayıcıdan veya özel bir tarayıcı oturumundan yeniden oturum açın

Kullanıcıya yeni bir özel tarayıcı oturumu açmasını veya kullanıcının farklı bir tarayıcıdan erişmeyi denemesini bildirin. Bu durumda, kullanıcıların etkin oturumlarını kapatması ve sonra yeniden oturum açmayı denemesi gerekir.

Neden 5: Konuk kullanıcı davet edilmedi

Oturum açmaya çalışan konuk kullanıcı kiracıya davet edilmedi.

Çözüm: Konuk kullanıcıyı davet etme

Hızlı Başlangıç: Konuk kullanıcıyı davet etmek için Azure portal dizininize konuk kullanıcılar ekleme adımlarını izlediğinizden emin olun.

Neden 6: Uygulama için kullanıcı ataması gerekiyor

Uygulamanız kullanıcı ataması gerektiren bir kurumsal uygulamaysa, kullanıcı uygulamaya erişim atanmış izin verilen kullanıcılar listesinde değilse hata AADSTS50020 oluşur. Kurumsal uygulamanızın kullanıcı ataması gerekip gerekmediğini denetlemek için:

  1. Azure portalKurumsal uygulamalar'ı arayın ve seçin.

  2. Kurumsal uygulamanızı seçin.

  3. Kenar çubuğunda Özellikler'i seçin.

  4. Atama gerekli seçeneğinin Evet olarak ayarlanıp ayarlanmadığını denetleyin.

Çözüm: Kullanıcılara erişimi tek tek veya grubun bir parçası olarak atama

Kullanıcılara erişim atamak için aşağıdaki seçeneklerden birini kullanın:

Neden 7: Kişisel hesaplar için kaynak sahibi parola kimlik bilgileri akışı kullanılmaya çalışlandı

Kullanıcı, kişisel hesaplar için kaynak sahibi parola kimlik bilgileri (ROPC) akışını kullanmayı denerse hata AADSTS50020 oluşur. Microsoft kimlik platformu ROPC'yi kişisel hesaplarda değil yalnızca Microsoft Entra kiracılarda destekler.

Çözüm: Kiracıya veya kuruluşa özgü bir uç nokta kullanın

Kiracıya özgü uç noktayı (https://login.microsoftonline.com/<TenantIDOrName>) veya kuruluşun uç noktasını kullanın. Microsoft Entra kiracıya davet edilen kişisel hesaplar ROPC kullanamaz. Daha fazla bilgi için bkz. Microsoft kimlik platformu ve OAuth 2.0 Kaynak Sahibi Parola Kimlik Bilgileri.

Neden 8: Daha önce silinen bir kullanıcı adı ev kiracısı yöneticisi tarafından yeniden oluşturuldu

Bir kaynak kiracısında silinen konuk kullanıcının adı, ev kiracısının yöneticisi tarafından yeniden oluşturulduysa hata AADSTS50020 oluşabilir. Kaynak kiracıdaki konuk kullanıcı hesabının ev kiracısında bulunan bir kullanıcı hesabıyla ilişkilendirildiğini doğrulamak için aşağıdaki seçeneklerden birini kullanın:

Doğrulama seçeneği 1: Kaynak kiracının konuk kullanıcısının ev kiracısının kullanıcı hesabından daha eski olup olmadığını denetleyin

İlk doğrulama seçeneği, kaynak kiracının konuk kullanıcısının yaşını ev kiracısının kullanıcı hesabıyla karşılaştırmayı içerir. Microsoft Graph veya MSOnline PowerShell kullanarak bu doğrulamayı yapabilirsiniz.

Microsoft Graph

MS Graph API kullanıcı oluşturma tarihini gözden geçirmek için aşağıdaki gibi bir istekte bulunabilirsiniz:

GET https://graph.microsoft.com/v1.0/users/{id | userPrincipalName}/createdDateTime

Ardından, kaynak kiracıdaki konuk kullanıcının oluşturma tarihini, giriş kiracısında kullanıcı hesabının oluşturulma tarihiyle karşılaştırın. Bu senaryo, konuk kullanıcının ev kiracısının kullanıcı hesabı oluşturulmadan önce oluşturulup oluşturulmadığını onaylar.

MSOnline PowerShell

Not

MSOnline PowerShell modülü kullanım dışı bırakılacak şekilde ayarlanmıştır. PowerShell Core ile de uyumlu olmadığından, aşağıdaki komutları çalıştırabilmeniz için uyumlu bir PowerShell sürümü kullandığınızdan emin olun.

Kullanıcı oluşturma tarihini gözden geçirmek için Get-MsolUser PowerShell cmdlet'ini aşağıdaki gibi çalıştırın:

Get-MsolUser -SearchString user@contoso.com | Format-List whenCreated

Ardından, kaynak kiracıdaki konuk kullanıcının oluşturma tarihini, giriş kiracısında kullanıcı hesabının oluşturulma tarihiyle karşılaştırın. Bu senaryo, konuk kullanıcının ev kiracısının kullanıcı hesabı oluşturulmadan önce oluşturulup oluşturulmadığını onaylar.

Not

Azure AD ve MSOnline PowerShell modülleri 30 Mart 2024 itibarıyla kullanım dışı bırakılmıştır. Daha fazla bilgi edinmek için kullanımdan kaldırma güncelleştirmesini okuyun. Bu tarihten sonra bu modüllere yönelik destek, Microsoft Graph PowerShell SDK'sına geçiş yardımı ve güvenlik düzeltmeleriyle sınırlıdır. Kullanım dışı bırakılan modüller Mart 30 2025'e kadar çalışmaya devam edecektir.

Microsoft Entra ID (eski adıyla Azure AD) ile etkileşime geçmek için Microsoft Graph PowerShell'e geçiş öneririz. Sık sorulan geçiş soruları için Bkz. Geçiş SSS. Not: MSOnline'ın 1.0.x sürümleri 30 Haziran 2024'den sonra kesintiye neden olabilir.

Doğrulama seçeneği 2: Kaynak kiracının konuk alternatif güvenlik kimliğinin ev kiracısının kullanıcı net kimliğinden farklı olup olmadığını denetleyin

Not

MSOnline PowerShell modülü kullanım dışı bırakılacak şekilde ayarlanmıştır. PowerShell Core ile de uyumlu olmadığından, aşağıdaki komutları çalıştırabilmeniz için uyumlu bir PowerShell sürümü kullandığınızdan emin olun.

Konuk kullanıcı daveti kabul ettiğinde, kullanıcının özniteliği (kullanıcının LiveID benzersiz oturum açma kimliği) özniteliğinde key depolanırAlternativeSecurityIds. Kullanıcı hesabı silindiğinden ve ev kiracısında oluşturulduğundan, NetID hesabın değeri ev kiracısında kullanıcı için değişmiş olur. NetID Ana kiracıdaki kullanıcı hesabının değerini kaynak kiracıdaki konuk hesabı içinde AlternativeSecurityIds depolanan anahtar değeriyle karşılaştırın:

  1. Giriş kiracısında, PowerShell cmdlet'ini LiveID kullanarak özniteliğin Get-MsolUser değerini alın:

    Get-MsolUser -SearchString tuser1 | Select-Object -ExpandProperty LiveID
    
  2. Kaynak kiracısında içindeki özniteliğin keyAlternativeSecurityIds değerini base64 ile kodlanmış bir dizeye dönüştürün:

    [convert]::ToBase64String((Get-MsolUser -ObjectId 01234567-89ab-cdef-0123-456789abcdef
           ).AlternativeSecurityIds.key)
    
  3. Çevrimiçi dönüştürücü (base64.guru gibi) kullanarak base64 kodlu dizeyi onaltılık bir değere dönüştürün.

  4. Farklı olduklarını doğrulamak için 1. ve 3. adımdaki değerleri karşılaştırın. Hesap NetID silinip yeniden oluşturulduğunda, ev kiracısında kullanıcı hesabının değeri değişti.

Çözüm: Konuk kullanıcı hesabının kullanım durumunu sıfırlama

Kaynak kiracıdaki konuk kullanıcı hesabının kullanım durumunu sıfırlayın. Ardından, konuk hesabını silip yeniden oluşturmak zorunda kalmadan konuk kullanıcı nesnesini koruyabilirsiniz. Azure portal, Azure PowerShell veya Microsoft Graph API kullanarak kullanım durumunu sıfırlayabilirsiniz. Yönergeler için bkz. Konuk kullanıcı için kullanım durumunu sıfırlama.

Yardım için bize ulaşın

Sorularınız veya yardıma ihtiyacınız varsa bir destek isteği oluşturun veya Azure topluluk desteği isteyin. Ürün geri bildirimini Azure geri bildirim topluluğuna da gönderebilirsiniz.