Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Azure Application Gateway , gelen HTTPS isteklerinde Microsoft Entra ID (eski adı Azure Active Directory) tarafından verilen JSON Web Belirteçlerini (JWT) doğrular. Bu özellik, arka uç uygulamalarınızda özel kod gerektirmeden web API'leri veya korumalı kaynaklar için ilk atlama kimlik doğrulaması zorlaması sağlar.
Bu özellik, gelen isteklerdeki belirteçlerin bütünlüğünü ve orijinalliğini doğrular. Ardından trafiği arka uç hizmetlerine iletmeden önce erişime izin verilip verilmeyeceğini belirler. Doğrulama başarılı olduğunda, ağ geçidi x-msft-entra-identity üst bilgisini isteğe ekler ve arka uç iletir. Aşağı akış uygulamaları daha sonra doğrulanmış kimlik bilgilerini güvenli bir şekilde kullanabilir.
Application Gateway, uçta belirteç doğrulaması gerçekleştirerek uygulama mimarisini basitleştirir ve genel güvenlik duruşunu güçlendirir. JWT doğrulaması durumsuz. Diğer bir ifadeyle, erişim verilmesi için her isteğin geçerli bir belirteç sunması gerekir.
Application Gateway herhangi bir oturum veya tanımlama bilgisi tabanlı durum korumaz. Bu yaklaşım, istekler arasında tutarlı doğrulama ve Sıfır Güven ilkeleriyle uyumlu olmasını sağlamaya yardımcı olur.
Önemli
Azure Application Gateway'de JWT doğrulaması şu anda önizleme aşamasındadır. Bu önizleme sürümü, bir hizmet düzeyi anlaşması olmaksızın sağlanmaktadır ve üretim iş yükleri için önerilmemektedir. Bazı özellikler desteklenmiyor olabileceği gibi özellikleri sınırlandırılmış da olabilir. Daha fazla bilgi için bkz. Microsoft Azure Önizlemeleri için Ek Kullanım Koşulları.
Önemli özellikler
- Belirteç doğrulama: JWT imzasını, vereni, kiracıyı, hedef kitleyi ve yaşam ömrünü doğrular. Tokenlar Microsoft Entra ID tarafından düzenlenmelidir.
-
Kimlik yayma:
x-msft-entra-identityüst bilgisitenantId:oidile arka uca enjekte edilir. -
Esnek eylemler: Geçersiz jetonlar için
Deny(401 durum kodu döndür) veyaAllow(kimlik üst bilgisi eklemeden iletmek) olarak yapılandırılır. - Çok kiracılı destek: Yaygın kuruluşların ve tüketicilerin kiracı yapılandırmalarını destekler.
- Yalnızca HTTPS: HTTPS dinleyicileri gerektirir. HTTP desteklenmez.
Önkoşullar
Application Gateway gereksinimleri:
- Standard_v2 veya WAF_v2 SKU'su. Temel SKU desteklenmez.
- TLS/SSL sertifikasının yapılandırılmasıyla birlikte bir HTTPS dinleyicisi.
- Azure Resource Manager API sürüm 2025-03-01 veya üzeri.
Ağ gereksinimleri:
- Application Gateway alt ağı
login.microsoftonline.comadresine 443 numaralı TCP bağlantı noktası üzerinden giden bağlantı.
- Application Gateway alt ağı
Microsoft Entra Id gereksinimleri:
- Microsoft Entra Id'de web API'nizin kaydı.
- Bir hizmete erişim talebinde bulunmak için bir Microsoft Entra ID çağrısı. Microsoft Entra Id bir erişim belirteci ile yanıt verir.
Application Gateway'de JWT doğrulaması yapılandırması.
Microsoft Entra ID'de bir uygulama kaydetme
Azure portalında Uygulama kayıtları'na gidin.
Yeni kayıtseçin.
Ad alanına MyWebAPI girin.
Desteklenen hesap türleri için Yalnızca bu kuruluş dizinindeki hesaplar (yalnızca Microsoft - Tek kiracı) seçeneğini belirleyin.
Uyarı
Desteklenen hesap türleri şunlardır:
- Tek kiracı (yalnızca bu dizin)
- Çok Kiracılı (herhangi bir Microsoft Entra Id dizini)
- Herhangi bir Microsoft Entra Id dizinindeki hesaplar ve kişisel Microsoft hesapları
Yeniden Yönlendirme URI'sinde (isteğe bağlı) kutuları boş bırakabilirsiniz. Bu ayar API senaryoları için gerekli değildir.
Kaydıseçin.
Uygulama (istemci) kimliği ve Dizin (kiracı) kimliği değerlerini not edin.
(İsteğe bağlı) Uygulama kimliği URI'si yapılandırma:
- API kullanıma sunma>Uygulama Kimliği URI'sini ayarlama bölümüne gidin.
- Varsayılan
api://<ClientID>URI'yi veya özel bir URI'yi kullanın (örneğin,https://api.contoso.com).
(İsteğe bağlı) API kapsamlarını tanımlama:
- Bir API Yayınla>Kapsam Ekle'ye gidin.
Bu özellik, gelecekteki yetkilendirme özelliklerine yöneliktir. Önizleme için gerekli değildir.
Application Gateway'de JWT doğrulamayı yapılandırma
Application Gateway örneğinizi açın, soldaki menüden Ayarlar'a gidin ve JWT doğrulama yapılandırmaları>JWT doğrulama yapılandırması ekle'yi seçin.
Aşağıdaki ayrıntıları sağlayın:
Setting Example Description İsim jwt-policy-1Doğrulama yapılandırması için tanıdık ad Yetkisiz İstek DenyEksik veya geçersiz JWT'leri olan istekleri reddetme seçeneği Kiracı Kimlik <your-tenant-id>Geçerli GUID veya bir common,organizationsveyaconsumersMüşteri Kimliği <your-client-id>Microsoft Entra'da kayıtlı uygulamanın GUID'i Kitleler <api://<client-id>(İsteğe bağlı) Ek geçerli hedef kitle talep değerleri (en fazla 5) Yeni bir yönlendirme kuralına ihtiyacınız varsa, yapılandırmayı aşağıdaki bölümde açıklandığı gibi bir yönlendirme kuralıyla ilişkilendirin.
Yönlendirme kuralı oluşturma (gerekirse)
Application Gateway>Kuralları>Yönlendirme kuralı ekle'ye gidin.
Aşağıdaki öğeleri girin veya seçin:
-
Dinleyici: Protokol
HTTPS, atanmış sertifika veya Azure Key Vault sırrını kullanın. - Arka uç hedefi: Bir arka uç havuzu seçin veya oluşturun.
- Arka uç ayarları: Uygun bir HTTP/HTTPS bağlantı noktası kullanın.
-
Kural adı: gibi
jwt-route-rulebir ad girin.
-
Dinleyici: Protokol
Bu kuralı JWT doğrulama yapılandırmanıza bağlayın.
JWT doğrulama yapılandırmanız artık güvenli bir HTTPS dinleyicisi ve yönlendirme kuralına eklenmiştir.
Güvenli uygulamaya her isteği içeren bir JWT erişim belirteci gönderme
Application Gateway'in korunmasına yardımcı olduğu bir uygulamaya güvenli bir şekilde erişmek için istemcinin önce Microsoft Entra Id belirteç uç noktasından bir JWT erişim belirteci alması gerekir. İstemci daha sonra bu belirteci Application Gateway'e gönderdiği her istekte yetkilendirme üst bilgisine (örneğin, Authorization: Bearer TOKEN) ekler.
Application Gateway, isteği arka uç uygulamasına iletmeden önce belirteci doğrular. Bu doğrulama yalnızca kimliği doğrulanmış ve yetkili trafiğin güvenli uygulamaya ulaşmasını sağlar.
Daha fazla bilgi için Microsoft kimlik platformunda erişim belirteçleri bölümüne bakın.
İsteklerin beklenen sonuçları
| Scenario | HTTP durumu | Kimlik üst bilgisi | Notes |
|---|---|---|---|
Geçerli belirteç, action=Allow |
200 | Hediye | Belirteç doğrulandı, kimlik iletildi |
Geçersiz belirteç, action=Deny |
401 | Yok | Ağ geçidi blokları isteği |
Eksik belirteç, action=Deny |
401 | Yok | Yetkilendirme başlığı yok |
Eksik oid talep, action=Deny |
403 | Yok | Kritik iddia eksik |
Backend doğrulaması
Kimlik doğrulamasını x-msft-entra-identity onaylamak için üst bilgiyi kontrol edin.
401 ve 403 yanıtlarında sorun giderme
İstekler 401 veya 403 durumunu döndürürse şunları doğrulayın:
-
Configuration
- Kiracı Kimliği veya veren kimliği (
iss), Microsoft Entra kiracınızla eşleşir. - İzleyici (
aud), yapılandırılan istemci kimliği veya hedef kitle listesiyle eşleşir.
- Kiracı Kimliği veya veren kimliği (
-
Jeton bütünlüğü
- Belirtecin süresi dolmamış (
exp) venbfgelecekte geçerli değildir.
- Belirtecin süresi dolmamış (
-
Biçimlendirme isteme
-
Authorization: Bearer <access_token>üst bilgi mevcut ve sağlam.
-
-
Ağ geçidi politika yerleştirme
- JWT doğrulaması doğru dinleyiciye ve yönlendirme kuralına bağlanır.
-
Hala başarısız mı?
- Doğru hedef kitle için yeni bir belirteç alın.
- Ayrıntılı bir hata nedeni için Application Gateway erişim günlüklerini denetleyin.
İlgili içerik
Azure'da JWT doğrulaması ve ilgili kimlik özellikleri hakkında daha fazla bilgi edinmek için: