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.
İstemciler ile uygulama veya hizmet arasındaki istekleri aracılık etmek için ayrılmış bir bileşen kullanarak uygulamaları ve hizmetleri koruyun. Aracı istekleri doğrular ve temizler ve ek bir güvenlik katmanı sağlayabilir ve sistemin saldırı yüzeyini sınırlayabilir.
Bağlam ve sorun
Birçok bulut hizmeti, istemci uygulamalarının API'lerini İnternet veya başka bir güvenilmeyen ağ üzerinden çağırmasına olanak sağlayan uç noktaları kullanıma sunar. API'leri uygulayan kod, kimlik doğrulaması, yetkilendirme, parametre doğrulaması ve istek işlemenin bir kısmı veya tümü dahil ancak bunlarla sınırlı olmamak üzere çeşitli görevleri tetikler veya gerçekleştirir. API kodu büyük olasılıkla istemci adına depolamaya ve diğer hizmetlere erişebilir.
Kötü amaçlı bir kullanıcı sistemi ele geçirip uygulamanın barındırma ortamına erişim kazanırsa, uygulamanın güvenlik mekanizmaları ile verilere ve diğer hizmetlere erişimi açığa çıkar. Sonuç olarak, kötü amaçlı kullanıcı kimlik bilgilerine, depolama anahtarlarına, hassas bilgilere ve diğer hizmetlere sınırsız erişim elde edebilir.
Çözüm
Bu sorunun bir çözümü, genel uç noktaları uygulayan kodu istekleri işleyen ve depolamaya erişen koddan ayrıştırmaktır. İstemcilerle etkileşim kuran ve onaylanan istekleri bir iç uç nokta, kuyruk veya aracı aracılığıyla iş işlemini işleyen iş yükü bileşenlerine yönlendiren bir cephe katmanı kullanarak kodu birbirinden ayırın. Diyagram, bu desene üst düzey bir genel bakış sağlar.
Depolamayı korumak için Ağ Geçidi Denetleyicisi desenini kullanabilir veya uygulamanın tüm işlevlerini korumak için daha kapsamlı bir cephe olarak kullanabilirsiniz. Önemli faktörler şunlardır:
Denetimli doğrulama: Ağ geçidi denetleyicisi tüm istekleri doğrular ve doğrulama gereksinimlerini karşılamayen istekleri reddeder.
Sınırlı risk ve maruz kalma: Ağ geçidi denetleyicisi, güvenilen konağın depolama ve hizmetlere erişmek için kullandığı kimlik bilgilerine veya anahtarlara erişmediğinden riskler ve maruz kalma azaltılır. Ağ geçidi denetleyicisi tehlikeye girerse, saldırganlar bu kimlik bilgilerine veya anahtarlara erişemez.
Uygun güvenlik: Ağ geçidi denetleyicisi sınırlı bir ayrıcalık modunda çalışırken, uygulamanın geri kalanı depolama alanına ve hizmetlere erişmek için gereken tam güven modunda çalışır. Ağ geçidi denetleyicisi ele geçirilirse uygulama hizmetlerine veya verilerine doğrudan erişemez.
Bu düzen tipik bir ağ topografisindeki bir güvenlik duvarı işlevini görür. Geleneksel bir güvenlik duvarından farklı olarak, ağ geçidi denetleyicisinin istekleri ayrıntılı olarak incelemesine ve isteğin gerekli görevleri gerçekleştiren güvenilir ana bilgisayara geçirilip geçirilmeyeceği konusunda uygulama odaklı bir karar vermesine olanak tanır. Bu karar genellikle ağ geçidi denetleyicisinin istek içeriğini güvenilir konağa geçirmeden önce doğrulamasını ve temizlemesini gerektirir. Ağ geçidi denetleyicisi isteği yetkilendirebilir, beklenmeyen veya geçersiz yük içeriği arayabilir, hız sınırlaması gerçekleştirebilir ve diğer çeşitli denetimleri gerçekleştirebilir.
Sorunlar ve dikkat edilmesi gerekenler
Bu düzenin nasıl uygulaneceğine karar velarken aşağıdaki noktaları göz önünde bulundurun:
Güvenilir ana bilgisayarların yalnızca ağ geçidi denetleyicisi tarafından kullanılan iç veya korumalı uç noktaları sunduğundan emin olun. Güvenilen ana bilgisayarlar, harici uç noktaları veya arabirimleri açığa çıkarmamalıdır.
Ağ geçidi denetleyicisinin sınırlı ayrıcalık modunda çalışması gerekir. Uygulamada, gatekeeper’ı ve güvenilir arka ucu ayrı bilgi işlem sınırlarında barındırın ve arka uç uç noktalarını gizli tutun.
Ağ geçidi denetleyicisi, uygulama veya hizmetler veya erişim verileriyle ilgili işlem gerçekleştirmemelidir. İşlevi yalnızca istekleri doğrulamak ve temize çıkarmaktır. Güvenilen konakların ek istek doğrulaması gerçekleştirmesi gerekebilir, ancak ağ geçidi denetleyicisi çekirdek doğrulamayı gerçekleştirmelidir.
Mümkün olduğunda ağ geçidi denetleyicisi ile güvenilir konaklar veya görevler arasında HTTPS, Güvenli Yuva Katmanı (SSL) veya Aktarım Katmanı Güvenliği (TLS) gibi güvenli bir iletişim kanalı kullanın. Ancak, bazı barındırma ortamları iç uç noktalarında HTTPS’yi desteklemez.
Ağ Geçidi Denetleyicisi desenini uygulamak için ek katmanın eklenmesi, gereken ek işleme ve ağ iletişimi nedeniyle performansı etkileyebilir.
Kapı bekçisi tek hata noktası (SPoF) olabilir. Bir hatanın etkisini en aza indirmek için, kapasiteyi sağlamak ve kullanılabilirliği korumak için yedekli örnekleri dağıtmayı ve otomatik ölçeklendirme mekanizmasını kullanmayı göz önünde bulundurun.
Bu desen ne zaman kullanılır?
Bu düzeni aşağıdaki durumlarda kullanın:
Hassas bilgileri işlersiniz.
Kötü amaçlı trafiğe karşı güçlü koruma gerektiren hizmetleri kullanıma sunarsınız.
Arka uç hizmetlerinin doğrudan açığa çıkışını tolere edememenize neden olan görev açısından kritik işlemler gerçekleştirirsiniz.
İstek doğrulama ve temizleme işlemlerinin temel iş mantığı işlemlerinden ayrılması gerekir.
Bu düzen aşağıdaki durumlarda uygun olmayabilir:
Ayrılmış bir ağ geçidi denetleyicisi katmanı eklemeden arka uç hizmetindeki yerleşik platform denetimleri aracılığıyla güvenlik ve doğrulama gereksinimlerini karşılayabilirsiniz.
Eklenen ağ atlamaları ve doğrulama gecikme süresi, katı uçtan uca gecikme süresi gereksinimlerini ihlal ediyor.
İş yükü tasarımı
Azure Well-Architected Framework sütunları kapsamındaki hedefleri ve ilkeleri ele almak için iş yükünün tasarımında Ağ Geçidi Denetleyicisi deseninin nasıl kullanılacağını değerlendirin. Aşağıdaki tabloda, bu desenin her bir sütunun hedeflerini nasıl desteklediği hakkında rehberlik sağlanmaktadır.
| Temel | Bu desen sütun hedeflerini nasıl destekler? |
|---|---|
| Güvenlik tasarımı kararları, iş yükünüzün verilerinin ve sistemlerinin gizliliğini, bütünlüğünü ve kullanılabilirliğini sağlamaya yardımcı olur. | İstek akışındaki bir ağ geçidi denetleyicisi web uygulaması güvenlik duvarları, DDoS koruması, bot algılama, istek işleme, kimlik doğrulama başlatma ve yetkilendirme denetimleri gibi güvenlik işlevlerini merkezileştirmenize yardımcı olur. - SE:06 Ağ denetimleri - SE:10 İzleme ve tehdit algılama |
| Performans Verimliliği , ölçeklendirme, veri ve kod iyileştirmeleri aracılığıyla iş yükünüzün talepleri verimli bir şekilde karşılamasını sağlar. | Düğüm düzeyinde hız denetimleri uygulamak yerine, gatekeeper düzeyinde kısıtlama gerçekleştirmek için bu kalıbı kullanabilirsiniz. Tüm düğümler arasındaki hız durumu koordinasyonu doğal olarak yüksek performanslı değildir. - PE:03 Hizmetleri seçme |
Bu model bir sütun içinde dengeleri ortaya çıkartıyorsa, bunları diğer sütunların hedeflerine karşı değerlendirin.
Example
Ağ Geçidi Denetleyicisi düzeni genellikle her katmanın belirli bir sorumluluğu ve sınırlı bir güven kapsamına sahip olduğu katmanlı bir istek yolu uygular.
Bu mimariye ait bir Visio dosyasını indirin.
Bu tasarımda Azure Application Gateway ve Azure Web Uygulaması Güvenlik Duvarı dış koruma katmanıdır. İnternet'e yönelik trafiği inceler ve trafik API katmanına ulaşmadan önce güvenlik denetimleri uygular. Azure API Management iç ağ geçidi denetleyicisidir. API'ye özgü denetimleri uygular ve yalnızca onaylanan trafiği özel arka uçlara iletir.
Örneğin, Azure Web Uygulaması Güvenlik Duvarı SQL ekleme ve siteler arası betik desenlerini algılayabilir ve engelleyebilir, protokol ve istek boyutu kurallarını zorunlu kılabilir ve istekler API Management veya özel arka uçlara ulaşmadan önce bot ve IP tabanlı filtreleme uygulayabilir.
İç katmanda API Management kullandığınızda, ağ geçidi işlem hattındaki gelen isteklere ve giden yanıtlara ilkeler uygulanır. API Management'ın istekleri ve yanıtları nasıl işlediği hakkında daha fazla bilgi için bkz. API Management'ta ilkeler. JSON Web Belirteci (JWT) doğrulama, hız sınırlama, üst bilgi dönüştürme ve yanıt şekillendirme gibi ilke seçenekleri için bkz. API Management ilke başvurusu.
Bu yolda hizmetten hizmete kimlik doğrulaması için Azure kaynakları için yönetilen kimlikleri tutarlı olarak kullanın. Örneğin API Management, gizli anahtarları depolamadan arka uç çağrıları için Microsoft Entra belirteçleri almak üzere yönetilen kimlikle kimlik doğrulama ilkesini kullanabilir.
Arka uç gizli kalır. Örneğin, arka uç, Azure App Service uygulaması olabilir ve bu uygulama bir özel uç nokta kullandığından uygulamaya özel olarak erişilebilir.
Kapsayıcılı iş yükleri için alternatif olarak API Management ve App Service iç yolunu giriş tabanlı işlemle değiştirebilirsiniz:
giriş denetleyicisi seçimi, Kubernetes ilkeleri, ağ topolojisi ve küme işlemleri üzerinde daha fazla denetim sağlayan Azure Kubernetes Service (AKS).
Azure Container Apps; giriş özellikleri sağlayan ve altyapı yönetimini azaltan sunucusuz yönetilen bir kapsayıcı platformudur.
Bu alternatiflerde Ingress, host’a veya yoluna göre yönlendirme yapabilir, TLS sonlandırması yapabilir ve yalnızca dahili hizmetleri kullanıma sunabilir. İstek sınırları ve izin verme veya reddetme kuralları gibi belirli özellikler seçilen giriş uygulamasına bağlıdır. Her durumda geçit denetimi sınırlarını koruyun: doğrulama ve ilke uygulamasını giriş noktasında gerçekleştirin ve arka uç hizmetlerine yalnızca bu geçit denetimi yolu üzerinden erişilebilmesini sağlayın.
Bu yoldaki her katman, merkezileştirmeniz gereken loglar ve metrikler üretir. Azure Web Uygulaması Güvenlik Duvarı tanılama günlükleri, istek başına eşleşen ve engellenen kuralları kaydeder. API Management, istek süresini, yanıt kodlarını ve ilke sonuçlarını yakalayan ağ geçidi günlüklerini yayar. Arka uç hizmetleri uygulama düzeyinde telemetri yayar. Bu günlükleri ve ölçümleri Azure İzleyici'da toplayın ve birleşik sorgulama için Log Analytics çalışma alanına yönlendirin. Uç noktada bir korelasyon kimliği oluşturarak veya ileterek ve bunu API Management ile arka uç hizmetleri boyunca (örneğin, istek üst bilgileri ve dağıtılmış izleme bağlamı aracılığıyla) yayarak, uçtan uca istek korelasyonunu standartlaştırın; böylece tek bir işlemin tüm katmanlarda izlenebilir olmasını sağlayın. Ağ geçidi denetleyicisi bileşenleri arasında güvenlik önerilerini ortaya çıkarabilmek için Microsoft Defender for Cloud kullanın. Özel arka uçlara ulaşmadan önce tehditleri algılamak için anormal Azure Web Uygulaması Güvenlik Duvarı blok hızları veya API Management hata artışlarıyla ilgili uyarıları yapılandırın.
Sonraki Adımlar
Bu düzeni uyguladığınızda aşağıdaki yönergeler uygun olabilir:
- Application Gateway'de Azure Web Uygulaması Güvenlik Duvarı
- API Management'ta ilkeler
- App Service uygulamaları için özel uç noktaları kullanma
İlgili kaynaklar
Aşağıdaki bulut tasarım desenleri genellikle Gatekeeper düzeniyle birlikte kullanılır: