Uygulama yapılandırma seçenekleri

Kimlik doğrulaması yapmak ve belirteçleri almak için kodunuzda yeni bir genel veya gizli istemci uygulaması başlatırsınız. İstemci uygulamasını Microsoft Kimlik Doğrulama Kitaplığı'nda (MSAL) başlatırken çeşitli yapılandırma seçenekleri ayarlayabilirsiniz. Bu seçenekler iki gruba ayrılır:

Yetkili

Yetkili, MSAL'nin belirteç isteyebileceği bir dizini gösteren bir URL'dir.

Ortak makamlar şunlardır:

Ortak yetkili URL'leri ne zaman kullanılmalı
https://login.microsoftonline.com/<tenant>/ Yalnızca belirli bir kuruluşun kullanıcılarını oturum açın. <tenant> URL'deki, Microsoft Entra kiracısının kiracı kimliği (GUID) veya kiracı etki alanıdır.
https://login.microsoftonline.com/common/ İş ve okul hesaplarıyla veya kişisel Microsoft hesaplarıyla kullanıcılarda oturum açın.
https://login.microsoftonline.com/organizations/ İş ve okul hesaplarıyla kullanıcılarda oturum açın.
https://login.microsoftonline.com/consumers/ Yalnızca kişisel Microsoft hesapları (MSA) olan kullanıcılarla oturum açın.

Kodunuzda belirttiğiniz yetkilinin Azure portalındaki Uygulama kayıtları uygulama için belirttiğiniz Desteklenen hesap türleriyle tutarlı olması gerekir.

Yetkili şu olabilir:

  • Microsoft Entra bulut yetkilisi.
  • Azure AD B2C yetkilisi. Bkz. B2C özellikleri.
  • bir Active Directory Federasyon Hizmetleri (AD FS) (AD FS) yetkilisi. Bkz. AD FS desteği.

Microsoft Entra bulut yetkililerinin iki bölümü vardır:

  • Kimlik sağlayıcısı örneği
  • Uygulamanın oturum açma hedef kitlesi

Örnek ve hedef kitle birleştirilebilir ve yetkili URL'si olarak sağlanabilir. Bu diyagramda, yetkili URL'sinin nasıl oluşturulmuş olduğu gösterilir:

How the authority URL is composed

Bulut örneği

Örnek, uygulamanızın Kullanıcıları Azure genel bulutundan mı yoksa ulusal bulutlardan mı imzalacağını belirtmek için kullanılır. Kodunuzda MSAL kullanarak, bir numaralandırma kullanarak veya URL'yi üye olarak Instance ulusal bulut örneğine geçirerek Azure bulut örneğini ayarlayabilirsiniz.

MSAL.NET hem hem de InstanceAzureCloudInstance belirtilirse açık bir özel durum oluşturur.

Bir örnek belirtmezseniz, uygulamanız Azure genel bulut örneğini (URL https://login.onmicrosoftonline.comörneği) hedefler.

Uygulama hedef kitlesi

Oturum açma hedef kitlesi, uygulamanızın iş gereksinimlerine bağlıdır:

  • İş kolu (LOB) geliştiricisiyseniz, büyük olasılıkla yalnızca kuruluşunuzda kullanılacak tek kiracılı bir uygulama oluşturacaksınız. Bu durumda, kuruluşu kiracı kimliğine (Microsoft Entra örneğinizin kimliği) veya Microsoft Entra örneğiyle ilişkilendirilmiş bir etki alanı adına göre belirtin.
  • ISV'yseniz, kullanıcıların iş ve okul hesaplarıyla herhangi bir kuruluşta veya bazı kuruluşlarda (çok kiracılı uygulama) oturum açmasını isteyebilirsiniz. Ancak kullanıcıların kişisel Microsoft hesaplarıyla oturum açmasını da isteyebilirsiniz.

Kodunuzda/yapılandırmanızda hedef kitleyi belirtme

Kodunuzda MSAL kullanarak aşağıdaki değerlerden birini kullanarak hedef kitleyi belirtirsiniz:

  • Microsoft Entra authority audience sabit listesi
  • Kiracı kimliği:
    • Tek kiracılı uygulamalar için BIR GUID (Microsoft Entra örneğinizin kimliği)
    • Microsoft Entra örneğinizle ilişkilendirilmiş bir etki alanı adı (tek kiracılı uygulamalar için de)
  • Microsoft Entra authority audience sabit listesi yerine kiracı kimliği olarak bu yer tutuculardan biri:
    • organizations çok kiracılı bir uygulama için
    • consumers kullanıcıları yalnızca kişisel hesaplarıyla oturum açmak için
    • common kullanıcıları iş ve okul hesaplarıyla veya kişisel Microsoft hesaplarıyla oturum açmak için

Hem Microsoft Entra yetkilisi hedef kitlesini hem de kiracı kimliğini belirtirseniz MSAL anlamlı bir özel durum oluşturur.

Bir hedef kitle belirtmeniz önerilir. Bu hedef kitleye çok sayıda kiracı eklenir ve bunlara dağıtılan uygulamaların konuk kullanıcıları olur. Uygulamanızın dış kullanıcıları olacaksa ve organization uç noktaları common en iyi şekilde önlenir. Hedef kitle belirtmezseniz, uygulamanız hedef kitle olarak Microsoft Entra Id ve kişisel Microsoft hesaplarını hedefler ve belirtilmiş gibi common davranır.

Etkin hedef kitle

Uygulamanız için geçerli hedef kitle, uygulamanızda ayarladığınız hedef kitlenin ve uygulama kaydında belirtilen hedef kitlenin en düşük (kesişim noktası varsa) olacaktır. Aslında Uygulama kayıtları deneyimi, uygulama için hedef kitleyi (desteklenen hesap türleri) belirtmenize olanak tanır. Daha fazla bilgi için bkz. Hızlı başlangıç: Microsoft kimlik platformu ile bir uygulamayı kaydetme.

Şu anda, bir uygulamanın yalnızca kişisel Microsoft hesapları olan kullanıcılarla oturum açmasını sağlamak için şu ayarların her ikisini de yapılandırmaktır:

  • Uygulama kaydı hedef kitlesini olarak Work and school accounts and personal accountsayarlayın.
  • Kodunuzda/yapılandırmanızda hedef kitleyi AadAuthorityAudience.PersonalMicrosoftAccount (veya TenantID ="tüketiciler") olarak ayarlayın.

Client ID

İstemci kimliği, uygulama kaydedildiğinde Microsoft Entra Id tarafından uygulamanıza atanan benzersiz Uygulama (istemci) kimliğidir . Uygulama (İstemci) Kimliğini, Uygulamanın Genel Bakış sayfasında Identity>Applications>Enterprise uygulamalarında bulabilirsiniz.

Yeniden yönlendirme URI'si

Yeniden yönlendirme URI'si, kimlik sağlayıcısının güvenlik belirteçlerini geri göndereceği URI'dir.

Genel istemci uygulamaları için yeniden yönlendirme URI'si

MSAL kullanan bir genel istemci uygulaması geliştiricisiyseniz:

  • Masaüstü veya Evrensel Windows Platformu (UWP) uygulamalarında (MSAL.NET 4.1+) kullanmak .WithDefaultRedirectUri() istersiniz. yöntemi, .WithDefaultRedirectUri() genel istemci uygulamasının yeniden yönlendirme URI özelliğini genel istemci uygulamaları için varsayılan önerilen yeniden yönlendirme URI'sine ayarlar.

    Platform Yeniden yönlendirme URI'si
    Masaüstü uygulaması (.NET Framework) https://login.microsoftonline.com/common/oauth2/nativeclient
    UWP değeridir WebAuthenticationBroker.GetCurrentApplicationCallbackUri(). Bu, değeri kaydetmeniz gereken WebAuthenticationBroker.GetCurrentApplicationCallbackUri() sonucuna ayarlayarak tarayıcıyla çoklu oturum açmayı (SSO) etkinleştirir
    .NET https://localhost kullanıcının etkileşimli kimlik doğrulaması için sistem tarayıcısını kullanmasını sağlar çünkü .NET şu anda eklenmiş web görünümü için bir kullanıcı arabirimine sahip değildir.
  • Aracı yeniden yönlendirme URI'sini desteklemeyen bir Xamarin Android ve iOS uygulaması oluşturuyorsanız yeniden yönlendirme URI'sini eklemeniz gerekmez. Xamarin Android ve iOS için otomatik olarak olarak ayarlanır msal{ClientId}://auth .

  • Uygulama kayıtları yeniden yönlendirme URI'sini yapılandırın:

    Redirect URI in App registrations

özelliğini kullanarak yeniden yönlendirme URI'sini RedirectUri geçersiz kılabilirsiniz (örneğin, aracı kullanıyorsanız). Bu senaryo için yeniden yönlendirme URI'lerine bazı örnekler aşağıda verilmiştir:

  • RedirectUriOnAndroid = "msauth-5a434691-ccb2-4fd1-b97b-b64bcfbc03fc://com.microsoft.identity.client.sample";
  • RedirectUriOnIos = $"msauth. {Bundle.ID}://auth";

Diğer iOS ayrıntıları için bkz . Microsoft Authenticator kullanan iOS uygulamalarını ADAL.NET'den MSAL.NET'a geçirme ve iOS'ta aracıdan yararlanma. Diğer Android ayrıntıları için bkz . Android'de aracılı kimlik doğrulaması.

Gizli istemci uygulamaları için yeniden yönlendirme URI'si

Web uygulamaları için yeniden yönlendirme URI'si (veya yanıt URL'si), Microsoft Entra Id'nin belirteci uygulamaya geri göndermek için kullanacağı URI'dir. Gizli uygulama bunlardan biriyse URI, web uygulamasının/web API'sinin URL'si olabilir. Yeniden yönlendirme URI'sinin uygulama kaydına kaydedilmesi gerekir. Kayıt, özellikle başlangıçta yerel olarak test ettiğiniz bir uygulamayı dağıttığınızda önemlidir. Ardından, dağıtılan uygulamanın yanıt URL'sini uygulama kayıt portalına eklemeniz gerekir.

Daemon uygulamaları için yeniden yönlendirme URI'sini belirtmeniz gerekmez.

İstemci gizli anahtarı

Bu seçenek gizli istemci uygulaması için istemci gizli dizisini belirtir. İstemci gizli dizisi (uygulama parolası) uygulama kayıt portalı tarafından sağlanır veya PowerShell Microsoft Entra Id, PowerShell AzureRM veya Azure CLI ile uygulama kaydı sırasında Microsoft Entra ID'ye sağlanır.

Günlük Kaydı

MSAL, hata ayıklama ve kimlik doğrulaması hatası sorunlarını giderme senaryolarında yardımcı olmak için yerleşik günlük desteği sağlar. Her kitaplıkta günlüğe kaydetme işlemi aşağıdaki makalelerde ele alınmıştır:

Sonraki adımlar

MSAL.NET kullanarak istemci uygulamalarının örneğini oluşturma ve MSAL.js kullanarak istemci uygulamalarının örneğini oluşturma hakkında bilgi edinin.