Aracılığıyla paylaş


Application Gateway tümleştirmesi

Bu makalede, trafiğin güvenliğini sağlamak için özel uç noktaları kullanarak App Service ile Application Gateway'i yapılandırma adımları anlatılır. Makalede ayrıca hizmet uç noktalarını kullanma ve iç ve dış App Service Ortamı tümleştirme ile ilgili önemli noktalar ele alınmaktadır. Son olarak, makalede bir Kaynak Denetim Yöneticisi (SCM) sitesinde erişim kısıtlamalarının nasıl ayarlanacağı açıklanır.

App Service ile tümleştirme

Application Gateway ile App Service uygulamanız arasındaki trafiğin güvenliğini sağlamak için özel uç noktaları kullanabilirsiniz. Application Gateway'in App Service uygulamalarının özel IP adresini çözümlemek için DNS kullanabildiğinden emin olmanız gerekir. Alternatif olarak, arka uç havuzundaki özel IP adresini kullanabilir ve HTTP ayarlarında ana bilgisayar adını geçersiz kılabilirsiniz.

App Service'teki uygulama örneklerine özel uç nokta üzerinden uygulama ağ geçidine akan trafiği gösteren diyagram.

Application Gateway, DNS arama sonuçlarını önbelleğe alır. Tam etki alanı adları (FQDN) kullanıyorsanız ve özel IP adresini almak için DNS aramasına güveniyorsanız, ARKA uç havuzunu yapılandırdıktan sonra DNS güncelleştirmesi veya Azure özel DNS bölgesi bağlantısı oluştuysa uygulama ağ geçidini yeniden başlatmanız gerekebilir.

Uygulama ağ geçidini yeniden başlatmak için Azure CLI'yı kullanarak durdurun ve başlatın:

az network application-gateway stop --resource-group myRG --name myAppGw
az network application-gateway start --resource-group myRG --name myAppGw

App Service uygulamasını özel uç noktayla yapılandırma hakkında daha fazla bilgi edinin.

Hizmet uç noktalarını kullanma konusunda dikkat edilmesi gerekenler

Özel uç noktalara alternatif olarak, Application Gateway'den gelen trafiğin güvenliğini sağlamak için hizmet uç noktalarını kullanabilirsiniz. Hizmet uç noktalarını kullanarak, Azure sanal ağı içindeki yalnızca belirli bir alt ağdan gelen trafiğe izin verebilir ve diğer her şeyi engelleyebilirsiniz. Aşağıdaki senaryoda, bir App Service örneğinin yalnızca belirli bir uygulama ağ geçidinden trafik alabilmesini sağlamak için bu işlevi kullanırsınız.

İnternet'in Azure sanal ağında bir uygulama ağ geçidine aktığını ve ardından bir güvenlik duvarı simgesi üzerinden App Service'teki uygulama örneklerine aktığını gösteren diyagram.

App Service uygulama örneğini ve uygulama ağ geçidini oluşturmanın yanı sıra bu yapılandırmanın iki bölümü vardır. İlk bölüm, uygulama ağ geçidinin dağıtıldığı sanal ağın alt ağında hizmet uç noktalarını etkinleştirmektir. Hizmet uç noktaları, alt ağı App Service'e doğru bırakan tüm ağ trafiğinin belirli alt ağ kimliğiyle etiketlendiğinden emin olur.

İkinci bölüm, yalnızca bu alt ağ kimliğiyle etiketlenen trafiğe izin verildiğinden emin olmak için belirli bir web uygulamasına erişim kısıtlaması ayarlamaktır. Tercihinize bağlı olarak farklı araçlar kullanarak erişim kısıtlamasını yapılandırabilirsiniz.

Azure portalında App Service ve Application Gateway kurulumunu oluşturmak ve yapılandırmak için dört adımı izlersiniz. Mevcut kaynaklarınız varsa ilk adımları atlayabilirsiniz.

  1. App Service belgelerindeki hızlı başlangıçlardan birini kullanarak bir App Service örneği oluşturun. Örneklerden biri .NET Core hızlı başlangıcıdır.
  2. Portal hızlı başlangıcını kullanarak bir uygulama ağ geçidi oluşturun, ancak arka uç hedefleri ekleme bölümünü atlayın.
  3. App Service'i Application Gateway'de arka uç olarak yapılandırın, ancak erişimi kısıtlama bölümünü atlayın.
  4. Hizmet uç noktalarını kullanarak erişim kısıtlaması oluşturun.

Artık App Service'e Application Gateway üzerinden erişebilirsiniz. App Service'e doğrudan erişmeye çalışırsanız, web uygulamasının erişiminizi engellediğini belirten bir 403 HTTP hatası almanız gerekir.

Hata 403 - Yasak metnini gösteren ekran görüntüsü.

İç App Service Ortamı için dikkat edilmesi gerekenler

bir iç App Service Ortamı İnternet'e açık değildir. Örnek ve uygulama ağ geçidi arasındaki trafik zaten sanal ağa yalıtılmış durumda. Azure portalını kullanarak bir iç App Service Ortamı yapılandırmak ve bunu bir uygulama ağ geçidiyle tümleştirmek için nasıl yapılır kılavuzuna bakın.

Yalnızca Application Gateway alt ağından gelen trafiğin App Service Ortamı ulaştığından emin olmak istiyorsanız, App Service Ortamı tüm web uygulamalarını etkileyen bir ağ güvenlik grubu (NSG) yapılandırabilirsiniz. NSG için alt ağ IP aralığını ve isteğe bağlı olarak bağlantı noktalarını (80/443) belirtebilirsiniz.

Tek bir web uygulamasına gelen trafiği yalıtmak için, hizmet uç noktaları bir App Service Ortamı ile çalışmadığından IP tabanlı erişim kısıtlamaları kullanmanız gerekir. IP adresi, uygulama ağ geçidinin özel IP adresi olmalıdır.

Dış App Service Ortamı için dikkat edilmesi gerekenler

Dış App Service Ortamı, çok kiracılı App Service uygulamaları gibi genel kullanıma yönelik bir yük dengeleyiciye sahiptir. Hizmet uç noktaları bir App Service Ortamı için çalışmaz. App Service Ortamı ile, uygulama ağ geçidinin genel IP adresini kullanarak IP tabanlı erişim kısıtlamalarını kullanabilirsiniz. Azure portalını kullanarak dış App Service Ortamı oluşturmak için bu hızlı başlangıcı izleyebilirsiniz.

Dış App Service Ortamı barındırılan uygulamalara özel uç noktalar da ekleyebilirsiniz.

Kudu/SCM sitesi için dikkat edilmesi gerekenler

Kudu olarak da bilinen SCM sitesi, her web uygulaması için mevcut olan bir yönetici sitesidir. SCM sitesi için ters proxy kullanmak mümkün değildir. Büyük olasılıkla bunu tek tek IP adreslerine veya belirli bir alt ağa kilitlemek istersiniz.

Ana siteyle aynı erişim kısıtlamalarını kullanmak istiyorsanız, aşağıdaki komutu kullanarak ayarları devralabilirsiniz:

az webapp config access-restriction set --resource-group myRG --name myWebApp --use-same-restrictions-for-scm-site

SCM sitesi için tek tek erişim kısıtlamaları eklemek istiyorsanız bayrağını --scm-site kullanabilirsiniz:

az webapp config access-restriction add --resource-group myRG --name myWebApp --scm-site --rule-name KudoAccess --priority 200 --ip-address 208.130.0.0/16

Varsayılan etki alanını kullanmayla ilgili dikkat edilmesi gerekenler

Application Gateway'i konak adını geçersiz kılıp App Service'in varsayılan etki alanını (genellikle) kullanacak şekilde azurewebsites.netyapılandırmak, tümleştirmeyi yapılandırmanın en kolay yoludur. App Service'te özel bir etki alanı ve sertifika yapılandırma gerektirmez.

Bu makalede , özgün ana bilgisayar adını geçersiz kılmaya yönelik genel noktalar ele alınmaktadır. App Service'te bu yapılandırmaya dikkat etmeniz gereken iki senaryo vardır.

Kimlik Doğrulaması

App Service'te (Kolay Kimlik Doğrulaması olarak da bilinir) kimlik doğrulama özelliğini kullandığınızda, uygulamanız genellikle oturum açma sayfasına yönlendirilir. App Service isteğin özgün ana bilgisayar adını bilmediğinden, yeniden yönlendirme varsayılan etki alanı adında yapılır ve genellikle bir hatayla sonuçlanır.

Varsayılan yeniden yönlendirmeyi geçici olarak çözmek için, kimlik doğrulamasını iletilen bir üst bilgiyi inceleyip yeniden yönlendirme etki alanını özgün etki alanına uyarlamak üzere yapılandırabilirsiniz. Application Gateway adlı X-Original-Hostbir üst bilgi kullanır. Kimlik doğrulamasını yapılandırmak için dosya tabanlı yapılandırmayı kullanarak App Service'i özgün ana bilgisayar adına uyum sağlayacak şekilde yapılandırabilirsiniz. Bu yapılandırmayı yapılandırma dosyanıza ekleyin:

{
    ...
    "httpSettings": {
        "forwardProxy": {
            "convention": "Custom",
            "customHostHeaderName": "X-Original-Host"
        }
    }
    ...
}

Oturum benzeşimi

Birden çok örnekli dağıtımlarda oturum benzimi, istemci isteklerinin oturumun ömrü boyunca aynı örneğe yönlendirilmesini sağlar. Oturum benzitesi, tanımlama bilgisi etki alanını ters proxy'den gelen üst bilgiye uyarlamak için yapılandırılabilir. Oturum benzeşimi proxy'sini true olarak yapılandırarak oturum benzeşimi X-Original-Host tanımlama bilgisi etki alanını arar veya X-Forwarded-Host bu üst bilgide bulunan etki alanına uyarlar. Oturum benzdirme ara sunucusunu etkinleştirirken önerilen bir uygulama olarak, trafiğin ters proxy'nizden geldiğinden emin olmak için sitedeki erişim kısıtlamalarınızı yapılandırmanız gerekir.

Aşağıdaki komutu kullanarak da yapılandırabilirsiniz clientAffinityProxyEnabled :

az resource update --resource-group myRG --name myWebApp --resource-type "Microsoft.Web/sites" --set properties.clientAffinityProxyEnabled=true

Sonraki adımlar

App Service Ortamı hakkında daha fazla bilgi için App Service Ortamı belgelerine bakın.

Web uygulamanızın güvenliğini daha da sağlamak için Azure Web Uygulaması Güvenlik Duvarı belgelerinde Application Gateway'de Azure Web Uygulaması Güvenlik Duvarı hakkında bilgi bulabilirsiniz.

Azure Front Door veya Application Gateway kullanarak App Service'te özel etki alanına sahip güvenli ve dayanıklı bir site dağıtmak için bu öğreticiye bakın.