Aracılığıyla paylaş


App Service veya Azure İşlevleri uygulamanızı Microsoft Entra oturum açma özelliğini kullanacak şekilde yapılandırma

Başka bir kimlik doğrulama sağlayıcısına geçmek için seçin.

Bu makalede, uygulamanızın kullanıcılarda kimlik doğrulama sağlayıcısı olarak Microsoft kimlik platformu (Microsoft Entra) ile oturum açması için Azure Uygulaması Hizmeti veya Azure İşlevleri için kimlik doğrulamasını nasıl yapılandırabileceğiniz gösterilir.

Uygulamanız ve kullanıcıları için bir kiracı seçin

Uygulamanız kullanıcıların oturum açabilmesi için iş gücü kiracısında ya da dış kiracıda kaydedilmelidir. Uygulamanızı çalışan veya iş konuklarının kullanımına sağlıyorsanız, uygulamanızı bir iş gücü kiracısına kaydedin. Uygulamanız tüketicilere ve iş müşterilerine yönelikse, uygulamayı bir dış kiracıya kaydedin.

  1. Azure portalında oturum açın ve uygulamanıza gidin.

  2. Uygulamanızın sol menüsünde Ayarlar>Kimlik Doğrulaması'nı ve ardından Kimlik sağlayıcısı ekle'yi seçin.

  3. Kimlik sağlayıcısı ekle sayfasında, Microsoft ve Microsoft Entra kimliklerinde oturum açmak için Kimlik sağlayıcısı değeri olarak Microsoft'u seçin.

  4. Uygulamanız ve kullanıcıları için bir kiracı seçin altında aşağıdakilerden birini seçin:

    • Çalışanlar ve iş konukları için iş gücü yapılandırması (geçerli kiracı)
    • Tüketiciler ve iş müşterileri için dış yapılandırma

Uygulama kaydını seçin

App Service kimlik doğrulama özelliği sizin için otomatik olarak bir uygulama kaydı oluşturabilir. İsterseniz, sizin veya dizin yöneticisinin ayrı olarak oluşturduğu bir kaydı da kullanabilirsiniz.

Ayrı olarak bir uygulama kaydı oluşturmanız gerekmediği sürece otomatik olarak yeni bir uygulama kaydı oluşturun. uygulama kaydını daha sonra isterseniz Microsoft Entra yönetim merkezinde özelleştirebilirsiniz.

Aşağıdaki durumlar, mevcut bir uygulama kaydının kullanılmasına yönelik en yaygın durumlardır:

  • Hesabınızın Microsoft Entra kiracınızda uygulama kayıtları oluşturma izinleri yok.
  • Uygulamanızın bulunduğu kiracıdan farklı bir Microsoft Entra kiracısından uygulama kaydı kullanmak istiyorsanız. Kiracıyı seçtiğinizde Dış yapılandırma'yı seçtiyseniz her zaman bu durum söz konusudur.
  • Yeni kayıt oluşturma seçeneği kamu bulutlarında kullanılamaz.

1. Seçenek: Yeni uygulama kaydı oluşturma ve kullanma

  1. Yeni uygulama kaydı oluşturma'yı seçin.

  2. Ad alanına yeni uygulama kaydının adını girin.

  3. Desteklenen hesap türü değerini seçin:

    • Mevcut kiracı - Tek kiracı. Yalnızca bu kuruluş dizinindeki hesaplar. Dizininizdeki tüm kullanıcı ve konuk hesapları uygulamanızı veya API'nizi kullanabilir. Hedef kitleniz kuruluşunuzun içindeyse bu seçeneği kullanın.
    • Herhangi Microsoft Entra dizini - Çok Kullanıcılı. Herhangi bir kuruluş dizinindeki hesaplar. Microsoft'tan iş veya okul hesabı olan tüm kullanıcılar uygulamanızı veya API'nizi kullanabilir. Bu hesaplar, Office 365 kullanan okulları ve işletmeleri içerir. Hedef kitleniz iş dünyası veya eğitim sektöründen müşterilerse ve çok kiracılığı etkinleştirmek istiyorsanız, bu seçeneği kullanın.
    • Tüm Microsoft Entra dizinleri ve kişisel Microsoft hesapları. Herhangi bir kuruluş dizinindeki hesaplar ve kişisel Microsoft hesapları (örneğin, Skype veya Xbox). İş veya okul hesabı ya da kişisel Microsoft hesabı olan tüm kullanıcılar uygulamanızı veya API'nizi kullanabilir. Office 365 kullanan okullar ve işletmeler ile Xbox ve Skype gibi hizmetlerde oturum açmak için kullanılan kişisel hesapları içerir. En geniş Microsoft kimlik kümesini hedeflemek ve çok kiracılılığı etkinleştirmek için bu seçeneği kullanın.
    • Yalnızca kişisel Microsoft hesapları. Xbox ve Skype gibi hizmetlerde oturum açmak için kullanılan kişisel hesaplar. En geniş Microsoft kimlik kümesini hedeflemek için bu seçeneği kullanın.

daha sonra isterseniz kaydın adını veya desteklenen hesap türlerini değiştirebilirsiniz.

İstemci gizli anahtarı, slot'a yapışık bir uygulama ayarı olarak MICROSOFT_PROVIDER_AUTHENTICATION_SECRET oluşturulur. Azure Key Vault'ta gizlilik öğesini yönetmek istiyorsanız, bu ayarı daha sonra Key Vault başvurularını kullanacak şekilde güncelleştirebilirsiniz. Alternatif olarak, bunu gizli anahtar yerine kimlik kullanacak şekilde değiştirebilirsiniz. Kimlik kullanma desteği şu anda önizleme aşamasındadır.

Seçenek 2: Ayrı olarak oluşturulan mevcut bir kaydı kullanma

Mevcut bir kaydı kullanmak için aşağıdakilerden birini seçin:

  • Bu dizinde var olan bir uygulama kaydını seçin. Ardından açılan listeden bir uygulama kaydı seçin.

  • Mevcut bir uygulama kaydının ayrıntılarını sağlayın. Ardından şu bilgileri sağlayın:

    • Uygulama (istemci) kimliği.

    • İstemci gizli anahtarı (önerilir). Uygulamanın belirteç istediğinde kimliğini kanıtlamak için kullandığı gizli değer. Bu değer, uygulamanızın yapılandırmasına, yuva-yapışkan uygulama ayarı adı verilen MICROSOFT_PROVIDER_AUTHENTICATION_SECRET olarak kaydedilir. İstemci gizli anahtarı ayarlanmamışsa, hizmet üzerinden oturum açma işlemleri OAuth 2.0 örtük verme akışını kullanır ve bu önerilmez.

      Ayrıca uygulamayı istemci gizli dizisi yerine kimlik kullanacak şekilde yapılandırabilirsiniz. Kimlik kullanma desteği şu anda önizleme aşamasındadır.

    • Ihraç Eden URL. Bu URL biçimindedir <authentication-endpoint>/<tenant-id>/v2.0. değerini <authentication-endpoint> kimlik doğrulama uç noktası değeriyle değiştirin. Örneğin, Azure genelindeki bir iş gücü kiracısı https://sts.windows.net kimlik doğrulama uç noktası olarak kullanır.

İş gücü kiracınızda el ile bir uygulama kaydı oluşturmanız gerekiyorsa bkz. Microsoft kimlik platformunda bir uygulama kaydetme. Kayıt işlemini tamamladığınızda uygulama (istemci) kimliğini ve istemci gizli anahtarı değerlerini not edin.

Kayıt işlemi sırasında, Yeniden Yönlendirme URI'leri bölümünde Platform için Web'i seçin ve yeniden yönlendirme URI'sini girin. Örneğin, https://contoso.azurewebsites.net/.auth/login/aad/callback adresini girin.

Şimdi uygulama kaydını değiştirin:

  1. Sol bölmede, Bir API'yi Kullanıma Sun>Ekle>Kaydet seçeneklerini belirleyin. Bu değer, kaynak olarak kullanıldığında uygulamayı benzersiz olarak tanımlar ve bu da erişim izni veren belirteçlerin istenmesini sağlar. Değer, oluşturduğunuz kapsamlar için bir ön ektir.

    Tek kiracılı bir uygulama için, biçimindeki api://<application-client-id>varsayılan değeri kullanabilirsiniz. Kiracınız için doğrulanmış etki alanlarından birine göre https://contoso.com/api gibi daha okunabilir bir URI de belirtebilirsiniz. Çok kiracılı bir uygulama için özel bir URI sağlamanız gerekir. Uygulama kimliği URI'leri için kabul edilen biçimler hakkında daha fazla bilgi için bkz. Microsoft Entra Id'de uygulama özellikleri için en iyi güvenlik yöntemleri.

  2. Kapsam ekle'yi seçin ve ardından:

    1. Kapsam adı alanına user_impersonation girin.
    2. Kullanıcıların bu kapsama onay vermesine izin vermek istiyorsanız Kimler onay verebilir bölümünde Yöneticiler ve kullanıcılar'ı seçin.
    3. Onay kapsamı adını girin. Kullanıcıların onay sayfasında görmesini istediğiniz bir açıklama girin. Örneğin, Accessuygulama adı girin.
    4. Kapsam ekle'yi seçin.
  3. (Önerilen) Uygulama için bir istemci onayı oluşturun. İstemci sırrı oluşturmak için:

    1. Sol bölmede Sertifikalar ve gizli diziler>İstemci gizlileri>Yeni istemci gizlisi seçin.
    2. Bir açıklama ve süre sonu girin ve Ekle'yi seçin.
    3. Değer alanında istemci gizli anahtarı değerini kopyalayın. Bu sayfadan uzaklaştıktan sonra yeniden görünmez.

    Ayrıca uygulamayı istemci gizli dizisi yerine kimlik kullanacak şekilde yapılandırabilirsiniz. Kimlik kullanma desteği şu anda önizleme aşamasındadır.

  4. (İsteğe bağlı) Birden çok yanıt URL'sini eklemek için Kimlik Doğrulaması'na tıklayın.

Ek denetimleri yapılandırma

Ek denetimler , hangi isteklerin uygulamanıza erişmesine izin verileceğini belirler. Bu davranışı şimdi özelleştirebilir veya bu ayarları daha sonra Ana Kimlik Doğrulama sayfasından Kimlik Doğrulamaayarları'nın yanındaki Düzenle'yi seçerek ayarlayabilirsiniz.

İstemci uygulaması gereksinimi için şunların yapılıp yapılmayacağını seçin:

  • Yalnızca bu uygulamanın kendisinden gelen isteklere izin verin.
  • Belirli istemci uygulamalarından gelen isteklere izin verin.
  • Herhangi bir uygulamadan gelen isteklere izin verin (önerilmez).

Kimlik gereksinimi için şu seçeneklerden birini tercih edin:

  • Herhangi bir kimlikten gelen isteklere izin verin.
  • Belirli kimliklerden gelen isteklere izin verin.

Kiracı gereksinimi için şu seçeneklerden birini seçin:

  • Yalnızca veren kiracıdan gelen isteklere izin verin.
  • Belirli kiracılardan gelen isteklere izin verin.
  • Verene göre varsayılan kısıtlamaları kullanın.

Uygulamanızın kodda başka yetkilendirme kararları da vermesi gerekebilir. Daha fazla bilgi için bu makalenin devamında yer alan Yerleşik yetkilendirme ilkesini kullanma bölümüne bakın.

Kimlik doğrulaması ayarlarını yapılandırma

Kimlik doğrulama ayarları, uygulamanızın kimliği doğrulanmamış isteklere nasıl yanıt vereceğini belirler. Varsayılan seçimler, tüm istekleri bu yeni sağlayıcıyla oturum açmak üzere yeniden yönlendirir. Bu davranışı şimdi özelleştirebilir veya bu ayarları daha sonra Ana Kimlik Doğrulama sayfasından Kimlik Doğrulamaayarları'nın yanındaki Düzenle'yi seçerek ayarlayabilirsiniz. Daha fazla bilgi için bkz . Kimlik doğrulama akışı.

Erişimi kısıtla için şunların yapılıp yapılmayeceğine karar verin:

  • Kimlik doğrulaması gerektir.
  • Kimliği doğrulanmamış erişime izin ver.

Kimliği Doğrulanmamış istekler için hata seçeneklerini belirleyin:

  • HTTP 302 Found redirect: web siteleri için önerilir
  • HTTP 401 Unauthorized: API'ler için önerilir
  • HTTP 403 Forbidden
  • HTTP 404 Not found

Belirteç deposu (önerilir) seçin. Belirteç deposu, uygulamanız için belirteçleri toplar, depolar ve yeniler. Uygulamanızın belirteçlere ihtiyacı yoksa veya performansı iyileştirmeniz gerekiyorsa bu davranışı daha sonra devre dışı bırakabilirsiniz.

Kimlik sağlayıcısını ekleme

İş gücü yapılandırmasını seçtiyseniz İleri: İzinler'i seçebilir ve uygulamanın ihtiyaç duyduğu Microsoft Graph izinlerini ekleyebilirsiniz. Bu izinler uygulama kaydına eklenir, ancak bunları daha sonra da değiştirebilirsiniz. Dış yapılandırmayı seçtiyseniz, Microsoft Graph izinlerini daha sonra ekleyebilirsiniz.

  • Ekle'yi seçin.

Artık uygulamanızda kimlik doğrulaması için Microsoft kimlik platformu kullanmaya hazırsınız. Sağlayıcı , Kimlik Doğrulaması sayfasında listelenir. Buradan bu sağlayıcı yapılandırmasını düzenleyebilir veya silebilirsiniz.

Azure Depolama ve Microsoft Graph'a erişen bir web uygulaması için Microsoft Entra oturum açma işlemini yapılandırma örneği için bkz . Web uygulamanıza uygulama kimlik doğrulaması ekleme.

İstekleri yetkilendirin

Varsayılan olarak, App Service kimlik doğrulaması yalnızca kimlik doğrulamayı işler. Çağıranın söyledikleri kişi olup olmadığını belirler. Yetkilendirme, çağıranın bir kaynağa erişim iznine sahip olup olmadığını belirlemek, kimlik doğrulamasının ötesinde bir adımdır. Daha fazla bilgi için bkz . Yetkilendirmeyle ilgili temel bilgiler.

Uygulamanız kodda yetkilendirme kararları verebilir. App Service kimlik doğrulaması, yardımcı olabilecek bazı yerleşik denetimler sağlar, ancak bunlar uygulamanızın yetkilendirme gereksinimlerini karşılamak için tek başına yeterli olmayabilir. Aşağıdaki bölümlerde bu özellikler ele alınıyor.

İpucu

Çok kiracılı uygulamalar, değerlerin izin verildiğinden emin olmak için bu işlemin bir parçası olarak isteği vereni ve kiracı kimliğini doğrulamalıdır. App Service kimlik doğrulaması çok kiracılı bir senaryo için yapılandırıldığında, isteğin hangi kiracıdan geldiğini doğrulamaz. Bir uygulamanın, kuruluşun hizmete kaydolup kaydolmadığına bağlı olarak belirli kiracılarla sınırlı olması gerekebilir (örneğin). Bkz Birden çok veren değerini işlemek için kodunuzu güncelleyin.

Uygulama kodundan doğrulama gerçekleştirme

Uygulama kodunuzda yetkilendirme denetimleri gerçekleştirdiğinizde, App Service kimlik doğrulamasının kullanılabilir hale getirdiği talep bilgilerini kullanabilirsiniz. Daha fazla bilgi için Uygulama kodunda kullanıcı taleplerine erişme başlıklı makaleye bakın.

Eklenen x-ms-client-principal üst bilgi, çağıran hakkında iddia edilen talepleri içeren Base64 ile kodlanmış bir JSON nesnesi içerir. Varsayılan olarak, bu talepler bir talep eşlemesi üzerinden geçer, bu nedenle talep adları belirteçte gördüğünüz adlarla her zaman eşleşmeyebilir. Örneğin, tid talebi yerine http://schemas.microsoft.com/identity/claims/tenantid ile eşlenir.

Enjekte edilen x-ms-token-aad-access-token üst bilgisinden doğrudan temel erişim belirteci ile de çalışabilirsiniz.

Yerleşik yetkilendirme ilkesi kullanma

Oluşturulan uygulama kaydı, Microsoft Entra kiracınız için gelen isteklerin kimliğini doğrular. Varsayılan olarak, kiracı içindeki herkesin uygulamaya erişmesine de olanak tanır. Bu yaklaşım birçok uygulama için uygundur. Bazı uygulamaların yetkilendirme kararları alarak erişimi daha fazla kısıtlaması gerekir.

Uygulama kodunuz genellikle özel yetkilendirme mantığını işlemek için en iyi yerdir. Ancak, yaygın senaryolar için Microsoft kimlik platformu erişimi sınırlamak için kullanabileceğiniz yerleşik denetimler sağlar.

Bu bölümde , App Service kimlik doğrulaması V2 API'sini kullanarak yerleşik denetimlerin nasıl etkinleştirileceği gösterilmektedir. Şu anda bu yerleşik denetimleri yapılandırmanın tek yolu Azure Resource Manager şablonlarını veya REST API'yi kullanmaktır.

API nesnesi içinde, Microsoft Entra kimlik sağlayıcısı yapılandırmasının, aşağıdaki yapıda gösterilen, validation nesnesi içerebilen bir defaultAuthorizationPolicy bölümü vardır.

{
    "validation": {
        "defaultAuthorizationPolicy": {
            "allowedApplications": [],
            "allowedPrincipals": {
                "identities": []
            }
        }
    }
}
Mülk Açıklama
defaultAuthorizationPolicy Uygulamaya erişim için karşılanması gereken bir grup gereksinim. Erişim, yapılandırılmış özelliklerinin her biri üzerinde bir mantıksal AND değere göre verilir. allowedApplications ve allowedPrincipals her ikisi de yapılandırıldığında, gelen isteğin kabul edilebilmesi için her iki gereksinimi de karşılaması gerekir.
allowedApplications İstemci kaynağını temsil eden ve uygulamaya çağrıda bulunan istemci kimlikleri için bir izin listesi. Bu özellik boş olmayan bir dizi olarak yapılandırıldığında, yalnızca listede belirtilen bir uygulama tarafından elde edilen belirteçler kabul edilir.

Bu yönerge, erişim belirteci olması gereken gelen belirtecin appid veya azp talebini değerlendirir. Bkz. Yük talepleri.
allowedPrincipals Gelen isteğin temsil ettiği sorumlunun uygulamaya erişip erişemediğini belirleyen bir denetim grubu. Memnuniyeti allowedPrincipals, yapılandırılmış özellikleri üzerinde mantıksal bir OR temel alır.
identities (altında allowedPrincipals) Erişimi olan kullanıcıları veya uygulamaları temsil eden dize nesne kimlikleri izin listesi. Bu özellik boş olmayan bir dizi olarak yapılandırıldığında, isteği temsil eden kullanıcı veya uygulama listede belirtilirse allowedPrincipals gereksinimi karşılanabilir. Kimlik listesinde 500 karakter (toplam) sınırı vardır.

Bu politika, gelen jetonun oid iddiasını değerlendirir. Bkz. Yük talepleri.

Ayrıca, kullandığınız API sürümünden bağımsız olarak bir uygulama ayarı aracılığıyla bazı denetimleri yapılandırabilirsiniz. Uygulama ayarını 10 kiracı kimliğine kadar virgülle ayrılmış bir listeyle yapılandırabilirsiniz WEBSITE_AUTH_AAD_ALLOWED_TENANTS ; örneğin, aaaabbbb-0000-cccc-1111-dddd2222eeee. Bu ayar, talepte tid olarak belirtildiği gibi gelen belirtecin belirtilen kiracılardan biri olmasını gerektirebilir.

Uygulama ayarını WEBSITE_AUTH_AAD_REQUIRE_CLIENT_SERVICE_PRINCIPAL veya true olarak yapılandırarak, gelen belirtecin bir 1 talebi içermesini zorunlu kılabilirsiniz. allowedPrincipals.identities öğesini yapılandırdıysanız, bu ayar yoksayılır ve oid talebi, sağlanan bu kimlikler listesiyle karşılaştırıldığından doğru olarak kabul edilir.

Bu yerleşik denetimlerde başarısız olan istekler bir HTTP 403 Forbidden yanıtı alır.

Sır yerine yönetilen kimlik kullanma (önizleme)

Uygulama kaydınız için bir istemci gizli dizisi yapılandırmak yerine, bir uygulamayı yönetilen kimliğe (önizleme) güvenecek şekilde yapılandırabilirsiniz. Gizli anahtar yerine kimlik kullanmak, bir gizliyi yönetmeniz gerekmediği anlamına gelir. İşleyecek gizli sona erme olaylarınız yoktur ve o sırrı açıklama veya sızdırma riskiyle aynı düzeyde risk altında değilsiniz.

Kimlik, istemci gizli dizisi yerine istemci onayı olarak kullanılabilecek bir federe kimlik kimlik bilgisi oluşturmanıza olanak tanır. Bu yaklaşım yalnızca iş gücü yapılandırmalarında kullanılabilir. Yerleşik kimlik doğrulama özelliği şu anda önizleme olarak federasyon kimlik bilgilerini desteklemektedir.

App Service veya Azure İşlevleri kaynağınızı bu düzeni kullanacak şekilde yapılandırmak için bu bölümdeki adımları kullanabilirsiniz. Buradaki adımlarda, desteklenen yöntemlerden birini kullanarak zaten bir uygulama kaydı ayarladığınız ve önceden tanımlanmış bir gizli diziniz olduğu varsayılır.

  1. Bu yönergelere göre kullanıcı tarafından atanan bir yönetilen kimlik kaynağı oluşturun.

  2. Bu kimliği App Service veya Azure İşlevleri kaynağınıza atayın.

    Önemli

    Oluşturduğunuz kullanıcı tarafından atanan yönetilen kimlik yalnızca bu kayıt aracılığıyla App Service veya Azure İşlevleri uygulamasına atanmalıdır. Kimliği başka bir kaynağa atarsanız, bu kaynağa uygulama kaydınıza gereksiz erişim vermiş olursunuz.

  3. Yönetilen kimliğin Nesne Kimliği ve İstemci Kimliği değerlerini not edin. Sonraki adımda bir federasyon kimliği kimlik bilgisi oluşturmak için nesne kimliğine ihtiyacınız olacaktır. Sonraki bir adımda yönetilen kimliğin istemci kimliğini kullanacaksınız.

  4. Mevcut bir uygulamada federasyon kimliği kimlik bilgilerini yapılandırmak için Microsoft Entra Id yönergelerini izleyin. Bu yönergeler, atlayabileceğiniz uygulama kodunu güncelleştirmeye yönelik bölümleri de içerir.

  5. adlı yeni bir OVERRIDE_USE_MI_FIC_ASSERTION_CLIENTID ekleyin. Değerini, önceki bir adımda aldığınız yönetilen kimliğin İstemci Kimliği değerine ayarlayın. Uygulama kaydınızın istemci kimliğini kullanmayın. Bu uygulama ayarını yuva bağımlı olarak işaretlediğinizden emin olun.

  6. Uygulama kaynağınızın yerleşik kimlik doğrulama ayarlarında İstemci gizli dizisi ayarı adını olarak OVERRIDE_USE_MI_FIC_ASSERTION_CLIENTIDayarlayın.

    Azure portalını kullanarak bu değişikliği yapmak için:

    1. App Service veya Azure İşlevleri kaynağınıza dönün ve Kimlik Doğrulaması sekmesini seçin.
    2. Kimlik sağlayıcısı bölümünde, Microsoft girişi için Düzenle sütunundaki simgeyi seçin.
    3. Kimlik sağlayıcısını düzenle iletişim kutusunda, İstemci gizli ayar adı açılan listesini açın ve OVERRIDE_USE_MI_FIC_ASSERTION_CLIENTID öğesini seçin.
    4. Kaydetseçeneğini seçin.

    REST API kullanarak bu değişikliği yapmak için:

    • clientSecretSettingName özelliğini OVERRIDE_USE_MI_FIC_ASSERTION_CLIENTIDolarak ayarlayın. Bu özelliği altında properties>identityProviders>azureActiveDirectory>registrationbulabilirsiniz.
  7. Uygulamanın beklediğiniz gibi çalıştığını doğrulayın. Yeni bir oturum açma eylemini başarıyla gerçekleştirebilmeniz gerekir.

Yönetilen kimlik kullanma davranışından memnun olduğunuzda mevcut gizli anahtarı kaldırın.

  1. Uygulama kodunuzun uygulama ayarına bağımlılık almadığından emin olun. Varsa, uygulama kodunuzu erişim belirteci istemek üzere güncelleştirmek için yönergeleri izleyin.

  2. Daha önce gizlinizi tutan uygulama ayarını kaldırın. Bu uygulama ayarının adı, ayarlamadan önceki OVERRIDE_USE_MI_FIC_ASSERTION_CLIENTID değeridir.

  3. Uygulama kaydınızı içeren kiracıyı kullanarak Microsoft Entra yönetim merkezinde oturum açın. Uygulama kaydına yeniden gidin.

  4. Sertifikalar ve gizli diziler altında İstemci sırları seçeneğini seçin ve istemci sırrını kaldırın.

Uygulamanız artık gizli diziler olmadan Microsoft Entra Id kimlik doğrulamasını kullanacak şekilde yapılandırılmıştır.

İstemci uygulamalarını App Service'e erişecek şekilde yapılandırma

Önceki bölümlerde, kullanıcıların kimliğini doğrulamak için App Service veya Azure İşlevleri uygulamanızı kaydettiniz. Aşağıdaki bölümlerde, Microsoft Entra'da yerel istemcilerin veya daemon uygulamalarının nasıl kaydedilecekleri açıklanmaktadır. Bu istemciler veya uygulamalar, N katmanlı mimaride olduğu gibi kullanıcılar veya kendileri adına App Service tarafından kullanıma sunulan API'lere erişim isteyebilir. Yalnızca kullanıcıların kimliğini doğrulamak istiyorsanız, aşağıdaki bölümlerdeki adımlar gerekli değildir.

Yerel istemci uygulaması

Oturum açmış bir kullanıcı adına App Service uygulamanızın API'lerine erişim istemek için yerel istemcileri kaydedebilirsiniz:

  1. Azure portalı menüsünde Microsoft Entra Id'yi seçin.

  2. Sol bölmedeUygulama kayıtlarını> seçin. Ardından Yeni kayıt'ı seçin.

  3. Uygulama kaydetme bölmesindeki Ad alanına uygulama kaydınız için bir ad girin.

  4. Yeniden yönlendirme URI'si bölümünde Genel istemci/yerel (mobil ve masaüstü) öğesini seçin ve yeniden yönlendirme URL'sini girin. Örneğin, https://contoso.azurewebsites.net/.auth/login/aad/callback adresini girin.

  5. Kaydet'i seçin.

  6. Uygulama kaydı oluşturulduktan sonra Uygulama (istemci) kimliği değerini kopyalayın.

    Not

    Bir Microsoft Store uygulaması için bunun yerine URI olarak SID paketini kullanın.

  7. Sol bölmedeAPI izinlerini> seçin. Ardından İzin ekle

  8. App Service uygulamanız için daha önce oluşturduğunuz uygulama kaydını seçin. Uygulama kaydını görmüyorsanız uygulama kaydına user_impersonation kapsamını eklediğinizden emin olun.

  9. Temsilci izinleri altında user_impersonation'ı seçin ve ardından İzin ekle'yi seçin.

Şimdi bir kullanıcı adına App Service uygulamanıza erişim isteyebilen bir yerel istemci uygulaması yapılandırmış oldunuz.

Daemon istemci uygulaması (sunucu-sunucu çağrıları)

N katmanlı mimaride, istemci uygulamanız bir kullanıcı adına değil, istemci uygulamasının kendisi adına App Service veya Azure İşlevleri uygulamasını çağırmak için bir belirteç alabilir. Bu senaryo, oturum açmış bir kullanıcı olmadan görevler gerçekleştiren etkileşimli olmayan daemon uygulamaları için kullanışlıdır. OAuth 2.0 standart istemci kimlik bilgileri tanımasını kullanır. Daha fazla bilgi için bkz. Microsoft kimlik platformu ve OAuth 2.0 istemci kimlik bilgileri akışı.

  1. Azure portalı menüsünde Microsoft Entra Id'yi seçin.

  2. Sol bölmedeUygulama kayıtlarını> seçin. Ardından Yeni kayıt'ı seçin.

  3. Uygulama kaydetme bölmesindeki Ad alanına uygulama kaydınız için bir ad girin.

  4. Bir daemon uygulaması için yeniden yönlendirme URI'sine ihtiyacınız yoktur, bu nedenle Yeniden Yönlendirme URI'sini boş tutabilirsiniz.

  5. Kaydet'i seçin.

  6. Uygulama kaydı oluşturulduktan sonra Uygulama (istemci) kimliği değerini kopyalayın.

  7. Sol bölmede Yönet>Sertifikalar ve gizli anahtarlar'ı seçin. Ardından İstemci sırları>Yeni istemci sırrı'nı seçin.

  8. Bir açıklama ve süre sonu girin ve Ekle'yi seçin.

  9. Değer alanında istemci gizli anahtarı değerini kopyalayın. Bu sayfadan uzaklaştıktan sonra yeniden görünmez.

Artık istemci kimliğini ve istemci gizli dizisini kullanarak erişim belirteci isteyebilirsiniz. parametresini resource hedef uygulamanın Uygulama Kimliği URI değerine ayarlayın. Sonuçta elde edilen erişim belirteci, standart OAuth 2.0 Yetkilendirme üst bilgisi aracılığıyla hedef uygulamaya sunulabilir. App Service kimlik doğrulaması, belirteci doğrulayıp kullanarak çağıranın kimliğinin doğrulandığını belirtir. Bu durumda, arayan bir uygulamadır, kullanıcı değildir.

Bu yaklaşım, Microsoft Entra kiracınızdaki tüm istemci uygulamalarının erişim belirteci istemesine ve hedef uygulamada kimlik doğrulaması yapmasına olanak tanır. Yalnızca belirli istemci uygulamalarına izin vermek için yetkilendirmeyi zorunlu kılmak istiyorsanız, ek yapılandırma gerçekleştirmeniz gerekir.

  1. Korumak istediğiniz App Service veya Azure İşlevleri uygulamasını temsil eden uygulama kaydının bildiriminde bir uygulama rolü tanımlayın.

  2. Yetkilendirilmesi gereken istemciyi temsil eden uygulama kaydında API izinleri

  3. Daha önce oluşturduğunuz uygulama kaydını seçin. Uygulama kaydını görmüyorsanız bir uygulama rolü eklediğinizden emin olun.

  4. Uygulama izinleri'nin altında, daha önce oluşturduğunuz uygulama rolünü seçin. Ardından İzin ekle'yi seçin.

  5. İstemci uygulamasını izin istemek üzere yetkilendirmek için Yönetici onayı ver'i seçin.

    Önceki senaryoya benzer şekilde (herhangi bir rol eklemeden önce), artık aynı hedef kaynak için erişim belirteci isteyebilirsiniz . Erişim belirteci, istemci uygulaması için yetkilendirilmiş uygulama rollerini içeren bir roles talep içerir.

Hedef App Service veya Azure İşlevleri uygulama kodunda artık belirtecin beklenen rollere sahip olduğunu doğrulayabilirsiniz. App Service kimlik doğrulaması bu doğrulamayı gerçekleştirmez. Daha fazla bilgi için Uygulama kodunda kullanıcı taleplerine erişme başlıklı makaleye bakın.

App Service uygulamanıza kendi kimliğini kullanarak erişebilen bir daemon istemci uygulaması yapılandırmış oldunuz.

En iyi yöntemler

Kimlik doğrulamasını ayarlamak için kullandığınız yapılandırmadan bağımsız olarak, aşağıdaki en iyi yöntemler kiracınızı ve uygulamalarınızı daha güvenli tutar:

  • Her App Service uygulamasını Microsoft Entra'da kendi uygulama kaydıyla yapılandırın.
  • Her App Service uygulamasına kendi izinlerini ve onayını verin.
  • Ortamlar arasında izin paylaşımından kaçının. Ayrı dağıtım yuvaları için ayrı uygulama kayıtları kullanın. Yeni kodu test ederken, bu uygulama sorunların üretim uygulamasını etkilemesini önlemeye yardımcı olabilir.

Microsoft Graph'a geçiş

Bazı eski uygulamalar, kullanım dışı bırakılan ve tümüyle kullanımdan kaldırılacak şekilde zamanlanmış Azure AD Graph bağımlılığıyla ayarlanmış olabilir. Örneğin, uygulama kodunuz ara yazılım işlem hattındaki yetkilendirme filtresinin bir parçası olarak grup üyeliğini denetlemek için Azure AD Graph'ı çağırabilir. Uygulamalar Microsoft Graph'a taşınmalıdır. Daha fazla bilgi için bkz . Uygulamalarınızı Azure AD Graph'tan Microsoft Graph'a geçirme.

Bu geçiş sırasında App Service kimlik doğrulaması yapılandırmanızda bazı değişiklikler yapmanız gerekebilir. Uygulama kaydınıza Microsoft Graph izinlerini ekledikten sonra şunları yapabilirsiniz:

  • Veren URL değerini, son eki /v2.0 içerecek şekilde güncelleyin, eğer henüz içermiyorsa.

  • Oturum açma yapılandırmanızdan Azure AD Graph izinleri isteklerini kaldırın. Değiştirebileceğiniz özellikler, kullandığınız yönetim API'sinin sürümüne bağlıdır:

    • V1 API'yi (/authsettings) kullanıyorsanız, bu ayar additionalLoginParams dizisindedir.
    • V2 API'sini /authsettingsV2 kullanıyorsanız, bu ayar loginParameters dizisinde yer alır.

    Örneğin, https://graph.windows.net ile ilgili herhangi bir referansı kaldırmanız gerekir. Bu değişiklik, resource parametresini içerir ve /v2.0 uç noktası bunu desteklemez. Ayrıca Azure AD Graph'ten özel olarak istediğiniz tüm kapsamları da içerir.

    Ayrıca, uygulama kaydı için ayarladığınız yeni Microsoft Graph izinlerini istemek için yapılandırmayı güncelleştirmeniz gerekir. Çoğu durumda, bu kurulumu basitleştirmek için varsayılan kapsamı kullanabilirsiniz. Bunu yapmak için yeni bir oturum açma parametresi ekleyin: scope=openid profile email https://graph.microsoft.com/.default.

Bu değişikliklerle, App Service kimlik doğrulaması oturum açmaya çalıştığında artık Azure AD Graph için izin istemez. Bunun yerine, Microsoft Graph için bir belirteç alır. Uygulama kodunuzdaki bu belirtecin kullanımı, Uygulamalarınızı Azure AD Graph'ten Microsoft Graph'a geçirme bölümünde açıklandığı gibi güncelleştirilmesi gerekir.