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:
- adresine https://azure.microsoft.com/en-us/free/gidin ve ardından Ücretsiz başlat'ı seçin.
- Azure hesabı oluşturmak için yönergeleri izleyin.
- 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:
Azure portalUygulama kayıtları arayın ve seçin.
Uygulama kaydınızın adını seçin.
Kenar çubuğunda Bildirim'i seçin.
JSON kodunda signInAudience ayarını bulun.
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 Authority
daha 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
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:
Azure portalKurumsal uygulamalar'ı arayın ve seçin.
Kurumsal uygulamanızı seçin.
Kenar çubuğunda Özellikler'i seçin.
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:
Uygulamaya kullanıcı erişimini tek tek atamak için bkz. Kurumsal uygulamaya kullanıcı hesabı atama.
Atanan bir grubun veya dinamik grubun üyesi olan kullanıcıları atamak için bkz. Uygulamaya erişimi yönetme.
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:
Giriş kiracısında, PowerShell cmdlet'ini
LiveID
kullanarak özniteliğinGet-MsolUser
değerini alın:Get-MsolUser -SearchString tuser1 | Select-Object -ExpandProperty LiveID
Kaynak kiracısında içindeki özniteliğin
key
AlternativeSecurityIds
değerini base64 ile kodlanmış bir dizeye dönüştürün:[convert]::ToBase64String((Get-MsolUser -ObjectId 01234567-89ab-cdef-0123-456789abcdef ).AlternativeSecurityIds.key)
Ç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.
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.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin