Wat is Azure Application Gateway?What is Azure Application Gateway?

Azure Application Gateway is een load balancer voor webverkeer waarmee u het verkeer naar uw webapps kunt beheren.Azure Application Gateway is a web traffic load balancer that enables you to manage traffic to your web applications.

Traditionele load balancers werken op de transportlaag (OSI-laag 4 - TCP en UDP) en routeren verkeer op basis van IP-bronadres en een bronpoort naar een IP-doeladres en doelpoort.Traditional load balancers operate at the transport layer (OSI layer 4 - TCP and UDP) and route traffic based on source IP address and port, to a destination IP address and port. Maar met de Application Gateway kunt u nog specifieker zijn.But with the Application Gateway you can be even more specific. U kunt bijvoorbeeld verkeer op basis van de binnenkomende URL routeren.For example, you can route traffic based on the incoming URL. Dus als /images de binnenkomende URL is, kunt u verkeer routeren naar een specifieke set servers (ook wel een pool genoemd) die is geconfigureerd voor installatiekopieën.So if /images is in the incoming URL, you can route traffic to a specific set of servers (known as a pool) configured for images. Als /video zich in de URL bevindt, wordt dat verkeer gerouteerd naar een andere pool die geoptimaliseerd is voor video's.If /video is in the URL, that traffic is routed to another pool optimized for videos.

imageURLroute

Dit type routering staat bekend al taakverdeling op de toepassingslaag (OSI-laag 7).This type of routing is known as application layer (OSI layer 7) load balancing. Azure Application Gateway kan URL-gebaseerde routering en meer uitvoeren.Azure Application Gateway can do URL-based routing and more. Azure Application Gateway bevat de volgende functies:The following features are included with Azure Application Gateway:

URL-gebaseerde routeringURL-based routing

Met op URL-pad gebaseerde routering kunt u verkeer routeren naar back-endserverpools die zijn gebaseerd op de URL-paden van de aanvraag.URL Path Based Routing allows you to route traffic to back-end server pools based on URL Paths of the request. Een van de scenario's is het routeren van aanvragen voor verschillende inhoudstypen naar een andere pool.One of the scenarios is to route requests for different content types to different pool.

Aanvragen voor http://contoso.com/video/* worden bijvoorbeeld doorgestuurd naar VideoServerPool en aanvragen voor http://contoso.com/images/* worden doorgestuurd naar ImageServerPool.For example, requests for http://contoso.com/video/* are routed to VideoServerPool, and http://contoso.com/images/* are routed to ImageServerPool. Als geen van de padpatronen overeenkomen, wordt DefaultServerPool geselecteerd.DefaultServerPool is selected if none of the path patterns match.

OmleidingRedirection

Een veelvoorkomend scenario voor veel webtoepassingen is de ondersteuning van automatische HTTP-naar-HTTPS-omleiding zodat alle communicatie tussen een toepassing en gebruikers plaatsvindt via een versleuteld pad.A common scenario for many web applications is to support automatic HTTP to HTTPS redirection to ensure all communication between an application and its users occurs over an encrypted path.

In het verleden hebt u mogelijk gebruikgemaakt van technieken zoals het maken van een specifieke pool met als enige doel het omleiden van aanvragen die worden ontvangen op een HTTP-naar-HTTPS.In the past, you may have used techniques such as creating a dedicated pool whose sole purpose is to redirect requests it receives on HTTP to HTTPS. Application Gateway ondersteunt de mogelijkheid om verkeer om te leiden.Application Gateway supports the ability to redirect traffic. Dit vereenvoudigt de configuratie van toepassingen, optimaliseert het resourcegebruik en biedt ondersteuning voor nieuwe omleidingsscenario's, waaronder de globale en op pad gebaseerde omleidingen.This simplifies application configuration, optimizes the resource usage, and supports new redirection scenarios, including global and path-based redirection. Ondersteuning voor Application Gateway-omleiding is niet beperkt tot uitsluitend HTTP-naar-HTTPS-omleiding.Application Gateway redirection support is not limited to HTTP to HTTPS redirection alone. Dit is een algemeen omleidingsmechanisme, zodat u op basis van regels kunt omleiden van en naar elke poort die u gebruikt.This is a generic redirection mechanism, so you can redirect from and to any port you define using rules. Ook omleiding naar een externe site wordt ondersteund.It also supports redirection to an external site as well.

Ondersteuning voor Application Gateway-omleiding biedt de volgende mogelijkheden:Application Gateway redirection support offers the following capabilities:

  • Globale omleiding van de ene poort naar de andere poort op Application Gateway.Global redirection from one port to another port on the application gateway. Hierdoor is HTTP-naar-HTTPS-omleiding op een site mogelijk.This enables HTTP to HTTPS redirection on a site.
  • Padgebaseerde omleiding.Path-based redirection. Dit type omleiding maakt HTTP-naar-HTTPS-omleiding alleen mogelijk op een specifiek sitegebied, bijvoorbeeld een winkelwagengebied aangegeven door /cart/*.This type of redirection enables HTTP to HTTPS redirection only on a specific site area, for example a shopping cart area denoted by /cart/*.
  • Omleiden naar een externe site.Redirect to an external site.

Hosting van meerdere sitesMultiple-site hosting

Door meerdere sites te hosten, kunt u meer dan een website configureren op dezelfde instantie van Application Gateway.Multiple-site hosting enables you to configure more than one web site on the same Application Gateway instance. Met deze functie kunt u een efficiëntere topologie voor uw implementaties configureren door maximaal 20 websites toe te voegen aan één toepassingsgateway.This feature allows you to configure a more efficient topology for your deployments by adding up to 20 web sites to one application gateway. Elke website kan worden omgeleid naar een eigen pool.Each web site can be directed to its own pool. Application Gateway kan bijvoorbeeld verkeer regelen voor contoso.com en fabrikam.com vanaf twee servergroepen genaamd ContosoServerPool en FabrikamServerPool.For example, Application Gateway can serve traffic for contoso.com and fabrikam.com from two server pools called ContosoServerPool and FabrikamServerPool.

Aanvragen voor http://contoso.com worden gerouteerd naar ContosoServerPool en aanvragen voor http://fabrikam.com worden gerouteerd naar FabrikamServerPool.Requests for http://contoso.com are routed to ContosoServerPool, and http://fabrikam.com are routed to FabrikamServerPool.

Op dezelfde manier kunnen twee subdomeinen van hetzelfde bovenliggende domein worden gehost op dezelfde implementatie van Application Gateway.Similarly, two subdomains of the same parent domain can be hosted on the same Application Gateway deployment. Voorbeelden van subdomeinen die worden gehost op één implementatie van Application Gateway, zijn http://blog.contoso.com en http://app.contoso.com.Examples of using subdomains could include http://blog.contoso.com and http://app.contoso.com hosted on a single Application Gateway deployment.

SessieaffiniteitSession affinity

De functie Sessieaffiniteit op basis van cookies is handig als u een gebruikerssessie op dezelfde server wilt behouden.The cookie-based session affinity feature is useful when you want to keep a user session on the same server. Met behulp van door de gatewaybeheerde cookies kan Application Gateway het daarop volgende verkeer van een gebruikerssessie naar dezelfde server leiden voor verwerking.By using gateway-managed cookies, the application gateway can direct subsequent traffic from a user session to the same server for processing. Dit is belangrijk wanneer de sessiestatus lokaal wordt opgeslagen op de server voor een gebruikerssessie.This is important in cases where session state is saved locally on the server for a user session.

SSL-beëindiging (Secure Sockets Layer)Secure Sockets Layer (SSL) termination

Application Gateway ondersteunt SSL-beëindiging op de gateway, waarna het verkeer normaal gesproken onversleuteld naar de back-endservers wordt doorgeleid.Application Gateway supports SSL termination at the gateway, after which traffic typically flows unencrypted to the back-end servers. Met deze functie voorkomt u prijzige overhead voor het versleutelen en ontsleutelen voor uw webservers.This feature allows web servers to be unburdened from costly encryption and decryption overhead. Soms is onversleutelde communicatie met de server echter geen aanvaardbare optie.However, sometimes unencrypted communication to the servers is not an acceptable option. Dit kan komen door de beveiligings- of nalevingsvereisten, of misschien kan de toepassing alleen worden gebruikt via een beveiligde verbinding.This could be due to security requirements, compliance requirements, or the application may only accept a secure connection. Voor zulke toepassingen ondersteunt Application Gateway end-to-end SSL-versleuteling.For such applications, Application Gateway supports end-to-end SSL encryption.

Web Application FirewallWeb application firewall

Web Application Firewall (WAF) is een functie van Application Gateway die gecentraliseerde beveiliging van uw webtoepassingen tegen algemene aanvallen en beveiligingsproblemen biedt.Web application firewall (WAF) is a feature of Application Gateway that provides centralized protection of your web applications from common exploits and vulnerabilities. WAF is gebaseerd op regels uit de Core Rule Set 3.0 of 2.2.9 van OWASP (Open Web Application Security Project).WAF is based on rules from the OWASP (Open Web Application Security Project) core rule sets 3.0 or 2.2.9.

Webtoepassingen zijn in toenemende mate het doel van aanvallen die gebruikmaken van bekende beveiligingsproblemen.Web applications are increasingly targets of malicious attacks that exploit known vulnerabilities. Veelvoorkomende aanvallen zijn hierbij onder andere aanvallen met SQL-injecties en aanvallen via scripting op meerdere sites (XSS).Common among these exploits are SQL injection attacks and cross-site scripting (XSS) attacks. Het kan een hele uitdaging zijn om dergelijke aanvallen in toepassingscode te voorkomen en dit kan tevens veel onderhoud, patching en controle vereisen op meerdere lagen van de toepassingstopologie.Preventing such attacks in application code can be challenging and may require rigorous maintenance, patching and monitoring at many layers of the application topology. Een gecentraliseerde firewall voor webtoepassingen maakt het beveiligingsbeheer veel eenvoudiger en biedt toepassingsbeheerders meer veiligheid tegen bedreigingen of aanvallen.A centralized web application firewall helps make security management much simpler and gives better assurance to application administrators against threats or intrusions. Een WAF-oplossing kan ook sneller reageren op een beveiligingsrisico door een patch voor een bekend beveiligingsprobleem toe te passen op een centrale locatie in plaats van elke implementatie van afzonderlijke webtoepassingen te beveiligen.A WAF solution can also react to a security threat faster by patching a known vulnerability at a central location versus securing each deployment of individual web applications. Bestaande toepassingsgateways kunnen eenvoudig worden geconverteerd naar een toepassingsgateway met WAF (Web Application Firewall).Existing application gateways can be converted to a WAF-enabled application gateway easily.

Websocket- en HTTP-/2-verkeerWebsocket and HTTP/2 traffic

Application Gateway biedt systeemeigen ondersteuning voor de WebSocket- en HTTP-/2-protocollen.Application Gateway provides native support for the WebSocket and HTTP/2 protocols. Er is geen door de gebruiker configureerbare instelling om selectief WebSocket-ondersteuning in of uit te schakelen.There is no user-configurable setting to selectively enable or disable WebSocket support. HTTP-/2-ondersteuning kan worden ingeschakeld met Azure PowerShell.HTTP/2 support can be enabled using Azure PowerShell.

De WebSocket- en HTTP-/2-protocollen maken full-duplex-communicatie tussen een server en een client mogelijk via een langdurige TCP-verbinding.The WebSocket and HTTP/2 protocols enable full-duplex communication between a server and a client over a long-running TCP connection. Dit maakt een meer interactieve communicatie mogelijk tussen de webserver en de client, die bidirectioneel kan zijn zonder dat hiervoor polling nodig is, zoals vereist in implementaties op basis van HTTP.This allows for a more interactive communication between the web server and the client, which can be bidirectional without the need for polling as required in HTTP-based implementations. Deze protocollen hebben weinig overhead, in tegenstelling tot HTTP, en kunnen dezelfde TCP-verbinding gebruiken voor meerdere aanvragen/reacties. Dit resulteert in een efficiënter gebruik van resources.These protocols have low overhead, unlike HTTP, and can reuse the same TCP connection for multiple request/responses resulting in a more efficient utilization of resources. Deze protocollen zijn ontworpen om te werken via de traditionele HTTP-poorten: 80 en 443.These protocols are designed to work over traditional HTTP ports of 80 and 443.

Volgende stappenNext steps

Afhankelijk van uw vereisten en omgeving, kunt u een Application Gateway voor testdoeleinden maken met behulp van de Azure Portal, Azure PowerShell of Azur CLI:Depending on your requirements and environment, you can create a test Application Gateway using either the Azure portal, Azure PowerShell, or Azure CLI: