<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>web app Archives - Apostolidis Cloud Corner</title>
	<atom:link href="https://www.cloudcorner.gr/tag/web-app/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.cloudcorner.gr/tag/web-app/</link>
	<description>Remarks from a Cloud Architect encounters</description>
	<lastBuildDate>Thu, 29 Oct 2020 09:37:39 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.1</generator>

<image>
	<url>https://www.cloudcorner.gr/wp-content/uploads/2021/04/cropped-cloudcorner2-32x32.png</url>
	<title>web app Archives - Apostolidis Cloud Corner</title>
	<link>https://www.cloudcorner.gr/tag/web-app/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Azure Application Gateway &#124; WAF Policy per Listener</title>
		<link>https://www.cloudcorner.gr/microsoft/azure/azure-application-gateway-waf-policy/</link>
					<comments>https://www.cloudcorner.gr/microsoft/azure/azure-application-gateway-waf-policy/#comments</comments>
		
		<dc:creator><![CDATA[Pantelis Apostolidis]]></dc:creator>
		<pubDate>Fri, 25 Sep 2020 05:22:48 +0000</pubDate>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[application gateway]]></category>
		<category><![CDATA[azure]]></category>
		<category><![CDATA[azurerm]]></category>
		<category><![CDATA[waf]]></category>
		<category><![CDATA[web app]]></category>
		<category><![CDATA[web application]]></category>
		<category><![CDATA[web application firewall]]></category>
		<guid isPermaLink="false">https://www.e-apostolidis.gr/?p=3630</guid>

					<description><![CDATA[<p>Pantelis ApostolidisPantelis Apostolidis is a Sr. Specialist, Azure at Microsoft and a former Microsoft Azure MVP. For the last 20</p>
<p>The post <a href="https://www.cloudcorner.gr/microsoft/azure/azure-application-gateway-waf-policy/">Azure Application Gateway | WAF Policy per Listener</a> appeared first on <a href="https://www.cloudcorner.gr">Apostolidis Cloud Corner</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<h1>Azure Application Gateway | WAF Policy per Listener</h1>
<p>With Azure Application Gateway v2 coming, a lot of new features have been added. Much faster deployment and change times, auto-scaling and the ability to assign different Web Application Firewall (WAF) policies per Application Gateway&#8217;s listener. This feature provides more control over each listener and also can limit the number of different Application Gateways you need to deploy. </p>
<p>With a custom WAF policy we can <strong>control the firewall per listener (URL)</strong> with:</p>
<ul>
<li>Firewall mode, Prevention &#8211; Detection</li>
<li>Request body properties</li>
<li>WAF rule set category &amp; version</li>
<li>Custom Rules with If / Then conditions
<ul>
<li>Match IP address, Number, String, Geo location</li>
<li>Allow / Deny Traffic</li>
</ul>
</li>
</ul>
<h2>This post scenario</h2>
<p>We have on Azure Application Gateway with two Listeners (listens to two different URLs at its Public IP). The two listeners are forwarding the traffic to two different Web Apps, as shown at the below image.</p>
<p>My request is to allow all traffic to the first URL but allow traffic only from a specific IP to the second URL.</p>
<p>For the demo, I assume that you already have an Azure Application Gateway v2 in place and you have published two back ends (web apps, VMs, custom IP) and your web sites / apps are healthy and you can browse them behind the Application Gateway. </p>
<p><img fetchpriority="high" decoding="async" width="1883" height="194" class="alignnone wp-image-3644 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2020/09/Pasted-10.png" srcset="https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-10.png 1883w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-10-300x31.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-10-1024x105.png 1024w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-10-768x79.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-10-1536x158.png 1536w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-10-1320x136.png 1320w" sizes="(max-width: 1883px) 100vw, 1883px" /></p>
<p>Since I am using the default azurewebsites.net domain, I added two hosts at my workstation&#8217;s host file, in order to route the traffic to the Application Gateway&#8217;s IP and not directly to the Web Apps. </p>
<p><img decoding="async" width="734" height="132" class="alignnone wp-image-3643 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2020/09/Pasted-9.png" srcset="https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-9.png 734w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-9-300x54.png 300w" sizes="(max-width: 734px) 100vw, 734px" /></p>
<p>I can browse both Web Apps, through the Application Gateway, from my browser. I am using http and not https for the demo since I am using the default domain and I cannot add a custom certificate.</p>



<p><img decoding="async" width="1023" height="266" class="alignnone wp-image-3640 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2020/09/Pasted-7.png" srcset="https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-7.png 1023w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-7-300x78.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-7-768x200.png 768w" sizes="(max-width: 1023px) 100vw, 1023px" /></p>
<p><img loading="lazy" decoding="async" width="1030" height="210" class="alignnone wp-image-3642 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2020/09/Pasted-8.png" srcset="https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-8.png 1030w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-8-300x61.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-8-1024x209.png 1024w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-8-768x157.png 768w" sizes="auto, (max-width: 1030px) 100vw, 1030px" /></p>
<p>We need to create two Web Application Firewall policies (WAF). One for each listener. To create  a WAF policy, search the Azure Portal for waf and click the &#8220;Web Application Firewall policies (WAF)&#8221;.</p>
<p><img loading="lazy" decoding="async" width="778" height="243" class="alignnone wp-image-3633 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2020/09/Pasted.png" srcset="https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted.png 778w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-300x94.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-768x240.png 768w" sizes="auto, (max-width: 778px) 100vw, 778px" /></p>
<p>At the &#8220;Web Application Firewall policies (WAF)&#8221; page click +Add</p>
<p><img loading="lazy" decoding="async" width="866" height="329" class="alignnone wp-image-3634 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2020/09/Pasted-1.png" srcset="https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-1.png 866w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-1-300x114.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-1-768x292.png 768w" sizes="auto, (max-width: 866px) 100vw, 866px" /></p>
<p>At the Project details select &#8220;Regional WAF (Application Gateway)&#8221;. </p>
<p><img loading="lazy" decoding="async" width="1084" height="261" class="alignnone wp-image-3635 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2020/09/Pasted-2.png" srcset="https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-2.png 1084w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-2-300x72.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-2-1024x247.png 1024w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-2-768x185.png 768w" sizes="auto, (max-width: 1084px) 100vw, 1084px" /></p>
<p>Select the Subscription that your Application Gateway resides, select Resource Group, add a name for the Policy and the same region as your Application Gateway. The policy must set to Enabled to apply. I named the policy URLNumber02 to start creating the policy for the second URL that I want the custom rule.</p>
<p><img loading="lazy" decoding="async" width="1387" height="686" class="alignnone wp-image-3638 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2020/09/Pasted-5.png" srcset="https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-5.png 1387w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-5-300x148.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-5-1024x506.png 1024w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-5-768x380.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-5-1320x653.png 1320w" sizes="auto, (max-width: 1387px) 100vw, 1387px" /></p>
<p>At the Policy Settings change the setting to Prevention from Detection and go to the Custom rules and Add custom rule</p>
<p><img loading="lazy" decoding="async" width="733" height="533" class="alignnone wp-image-3637 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2020/09/Pasted-4.png" srcset="https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-4.png 733w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-4-300x218.png 300w" sizes="auto, (max-width: 733px) 100vw, 733px" /></p>
<p>I named the rule &#8220;AllowOnlyOneIP&#8221;, since I want to allow only one IP to access the second URL (listener) of the gateway. Give a priority, I added 1 as it is the only one. At the conditions select:</p>
<ul>
<li>March Type: IP address</li>
<li>Operation: Does not contain</li>
<li>IP address or range: add the only IP that you want to allow access to the URL</li>
</ul>
<p>At the &#8220;Then&#8221; condition, select &#8220;Deny Traffic&#8221;</p>
<p><img loading="lazy" decoding="async" width="1011" height="1269" class="alignnone wp-image-3639 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2020/09/Pasted-6.png" srcset="https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-6.png 1011w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-6-239x300.png 239w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-6-816x1024.png 816w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-6-768x964.png 768w" sizes="auto, (max-width: 1011px) 100vw, 1011px" /></p>
<p>This rule will allow traffic only of the IP is the IP address that we added to the condition. For all other IPs access will be denied.</p>
<p>Now that we created the policy, we need to assign it to the listener. At the next step of the WAF policy wizard we need to select the Application Gateway and the Listener.</p>
<p><img loading="lazy" decoding="async" width="914" height="896" class="alignnone wp-image-3645 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2020/09/Pasted-11.png" srcset="https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-11.png 914w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-11-300x294.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-11-768x753.png 768w" sizes="auto, (max-width: 914px) 100vw, 914px" /></p>
<p>First click the &#8220;Associate an application gateway&#8221; and select the Application Gateway. Remember that this policy will need to overwrite the default Application Gateway&#8217;s WAF policy. So before proceeding migrate your current WAF settings and customizations to the new WAF policy.</p>
<p><img loading="lazy" decoding="async" width="727" height="334" class="alignnone wp-image-3648 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2020/09/Pasted-14.png" srcset="https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-14.png 727w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-14-300x138.png 300w" sizes="auto, (max-width: 727px) 100vw, 727px" /></p>
<p>After you select the Application Gateway, associate the listener. I associate the &#8220;mylistener02&#8221; that is my second URL, with this policy.</p>
<p><img loading="lazy" decoding="async" width="763" height="473" class="alignnone wp-image-3647 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2020/09/Pasted-13.png" srcset="https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-13.png 763w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-13-300x186.png 300w" sizes="auto, (max-width: 763px) 100vw, 763px" /></p>
<p>After saving the policy, go to the Application gateway and check the &#8220;Web Application Firewall&#8221; settings. There you will see that all settings disappeared and you can only see that the gateway is associated with a WAF policy. We see that it is Associated to the URLNumber2 polily.</p>
<p><img loading="lazy" decoding="async" width="957" height="396" class="alignnone wp-image-3649 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2020/09/Pasted-15.png" srcset="https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-15.png 957w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-15-300x124.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-15-768x318.png 768w" sizes="auto, (max-width: 957px) 100vw, 957px" /></p>
<p>You need to create one more WAF rule for URL 01 for the correct functionality. Once you create a WAF policy and associate it to the other listener of the Application gateway, you will see that at the &#8220;Web application firewall&#8221; is associated to the new policy. Actually the Application gateway is associated to both WAF policies, one at each listener. You just cannot see this at the Azure Portal. </p>
<p><img loading="lazy" decoding="async" width="1060" height="428" class="alignnone wp-image-3650 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2020/09/Pasted-16.png" srcset="https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-16.png 1060w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-16-300x121.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-16-1024x413.png 1024w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-16-768x310.png 768w" sizes="auto, (max-width: 1060px) 100vw, 1060px" /></p>
<p>We can see the WAF rules that are associated to the Application Gateway&#8217;s Listeners using the PowerShell. Running the &#8220;Get-AzApplicationGateway -Name AppGw01 -ResourceGroupName AppGw01&#8221; command you can see that the &#8220;URLNumber01&#8221; WAF policy is associated to the &#8220;mylistener&#8221; and the &#8220;URLNumber2&#8221; is associated to the &#8220;mylistener02&#8221;.</p>
<p><img loading="lazy" decoding="async" width="1741" height="1254" class="alignnone wp-image-3656 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2020/09/Pasted-19.png" srcset="https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-19.png 1741w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-19-300x216.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-19-1024x738.png 1024w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-19-768x553.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-19-1536x1106.png 1536w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-19-1320x951.png 1320w" sizes="auto, (max-width: 1741px) 100vw, 1741px" /></p>
<p>To test the policies, I tried to access both URLs from a computer that don&#8217;t have the Public IP that I added tot he policy and I can access the URL 1 app but I cannot access the URL 2 app. From the computer that has the Public IP we added at the rule, I can browse both sites. </p>
<p><img loading="lazy" decoding="async" width="812" height="204" class="alignnone wp-image-3651 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2020/09/Pasted-17.png" srcset="https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-17.png 812w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-17-300x75.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-17-768x193.png 768w" sizes="auto, (max-width: 812px) 100vw, 812px" /></p>
<p><img loading="lazy" decoding="async" width="784" height="342" class="alignnone wp-image-3652 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2020/09/Pasted-18.png" srcset="https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-18.png 784w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-18-300x131.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-18-768x335.png 768w" sizes="auto, (max-width: 784px) 100vw, 784px" /></p>
<p>The WAF rules can be edited at the Web Application Firewall policies (WAF) blade and all settings will apply to the corresponding listener.</p>
<p><img loading="lazy" decoding="async" width="1022" height="560" class="alignnone wp-image-3657 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2020/09/Pasted-20.png" srcset="https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-20.png 1022w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-20-300x164.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-20-768x421.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2020/09/Pasted-20-600x330.png 600w" sizes="auto, (max-width: 1022px) 100vw, 1022px" /></p>
<p>&nbsp;</p>
<div class="saboxplugin-wrap" itemtype="http://schema.org/Person" itemscope itemprop="author"><div class="saboxplugin-tab"><div class="saboxplugin-gravatar"><img loading="lazy" decoding="async" src="https://www.e-apostolidis.gr/wp-content/uploads/2019/05/mvpsummit2019.jpg" width="100"  height="100" alt="Pantelis Apostolidis" itemprop="image"></div><div class="saboxplugin-authorname"><a href="https://www.cloudcorner.gr/author/admin/" class="vcard author" rel="author"><span class="fn">Pantelis Apostolidis</span></a></div><div class="saboxplugin-desc"><div itemprop="description"><p>Pantelis Apostolidis is a Sr. Specialist, Azure at Microsoft and a former Microsoft Azure MVP. For the last 20 years, Pantelis has been involved to major cloud projects in Greece and abroad, helping companies to adopt and deploy cloud technologies, driving business value. He is entitled to a lot of Microsoft Expert Certifications, demonstrating his proven experience in delivering high quality solutions. He is an author, blogger and he is acting as a spokesperson for conferences, workshops and webinars. He is also an active member of several communities as a moderator in azureheads.gr and autoexec.gr. Follow him on Twitter @papostolidis.</p>
</div></div><div class="saboxplugin-web "><a href="https://www.cloudcorner.gr" target="_self" >www.cloudcorner.gr</a></div><div class="clearfix"></div><div class="saboxplugin-socials "><a title="Facebook" target="_blank" href="https://www.facebook.com/pantelis.apostolidis" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-facebook" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 264 512"><path fill="currentColor" d="M76.7 512V283H0v-91h76.7v-71.7C76.7 42.4 124.3 0 193.8 0c33.3 0 61.9 2.5 70.2 3.6V85h-48.2c-37.8 0-45.1 18-45.1 44.3V192H256l-11.7 91h-73.6v229"></path></svg></span></a><a title="Linkedin" target="_blank" href="https://www.linkedin.com/in/papostolidis/" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-linkedin" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M100.3 480H7.4V180.9h92.9V480zM53.8 140.1C24.1 140.1 0 115.5 0 85.8 0 56.1 24.1 32 53.8 32c29.7 0 53.8 24.1 53.8 53.8 0 29.7-24.1 54.3-53.8 54.3zM448 480h-92.7V334.4c0-34.7-.7-79.2-48.3-79.2-48.3 0-55.7 37.7-55.7 76.7V480h-92.8V180.9h89.1v40.8h1.3c12.4-23.5 42.7-48.3 87.9-48.3 94 0 111.3 61.9 111.3 142.3V480z"></path></svg></span></a><a title="Instagram" target="_blank" href="https://www.instagram.com/proximagr" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-instagram" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z"></path></svg></span></a><a title="Rss" target="_blank" href="https://wwwcloudcorner.gr/feed/rdf/" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-rss" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M128.081 415.959c0 35.369-28.672 64.041-64.041 64.041S0 451.328 0 415.959s28.672-64.041 64.041-64.041 64.04 28.673 64.04 64.041zm175.66 47.25c-8.354-154.6-132.185-278.587-286.95-286.95C7.656 175.765 0 183.105 0 192.253v48.069c0 8.415 6.49 15.472 14.887 16.018 111.832 7.284 201.473 96.702 208.772 208.772.547 8.397 7.604 14.887 16.018 14.887h48.069c9.149.001 16.489-7.655 15.995-16.79zm144.249.288C439.596 229.677 251.465 40.445 16.503 32.01 7.473 31.686 0 38.981 0 48.016v48.068c0 8.625 6.835 15.645 15.453 15.999 191.179 7.839 344.627 161.316 352.465 352.465.353 8.618 7.373 15.453 15.999 15.453h48.068c9.034-.001 16.329-7.474 16.005-16.504z"></path></svg></span></a><a title="Twitter" target="_blank" href="https://twitter.com/papostolidis" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-twitter" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><path d="M26.37,26l-8.795-12.822l0.015,0.012L25.52,4h-2.65l-6.46,7.48L11.28,4H4.33l8.211,11.971L12.54,15.97L3.88,26h2.65 l7.182-8.322L19.42,26H26.37z M10.23,6l12.34,18h-2.1L8.12,6H10.23z" /></svg></span></a><a title="Github" target="_blank" href="https://github.com/proximagr" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-github" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><path fill="currentColor" d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"></path></svg></span></a><a title="User email" target="_self" href="mailto:&#112;roxima&#103;r&#064;&#104;o&#116;m&#097;il.&#099;&#111;m" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-user_email" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M502.3 190.8c3.9-3.1 9.7-.2 9.7 4.7V400c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V195.6c0-5 5.7-7.8 9.7-4.7 22.4 17.4 52.1 39.5 154.1 113.6 21.1 15.4 56.7 47.8 92.2 47.6 35.7.3 72-32.8 92.3-47.6 102-74.1 131.6-96.3 154-113.7zM256 320c23.2.4 56.6-29.2 73.4-41.4 132.7-96.3 142.8-104.7 173.4-128.7 5.8-4.5 9.2-11.5 9.2-18.9v-19c0-26.5-21.5-48-48-48H48C21.5 64 0 85.5 0 112v19c0 7.4 3.4 14.3 9.2 18.9 30.6 23.9 40.7 32.4 173.4 128.7 16.8 12.2 50.2 41.8 73.4 41.4z"></path></svg></span></a></div></div></div><p><a class="a2a_button_email" href="https://www.addtoany.com/add_to/email?linkurl=https%3A%2F%2Fwww.cloudcorner.gr%2Fmicrosoft%2Fazure%2Fazure-application-gateway-waf-policy%2F&amp;linkname=Azure%20Application%20Gateway%20%7C%20WAF%20Policy%20per%20Listener" title="Email" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_print" href="https://www.addtoany.com/add_to/print?linkurl=https%3A%2F%2Fwww.cloudcorner.gr%2Fmicrosoft%2Fazure%2Fazure-application-gateway-waf-policy%2F&amp;linkname=Azure%20Application%20Gateway%20%7C%20WAF%20Policy%20per%20Listener" title="Print" rel="nofollow noopener" target="_blank"></a><a class="a2a_dd addtoany_share_save addtoany_share" href="https://www.addtoany.com/share#url=https%3A%2F%2Fwww.cloudcorner.gr%2Fmicrosoft%2Fazure%2Fazure-application-gateway-waf-policy%2F&#038;title=Azure%20Application%20Gateway%20%7C%20WAF%20Policy%20per%20Listener" data-a2a-url="https://www.cloudcorner.gr/microsoft/azure/azure-application-gateway-waf-policy/" data-a2a-title="Azure Application Gateway | WAF Policy per Listener"><img src="https://static.addtoany.com/buttons/share_save_171_16.png" alt="Share"></a></p><p>The post <a href="https://www.cloudcorner.gr/microsoft/azure/azure-application-gateway-waf-policy/">Azure Application Gateway | WAF Policy per Listener</a> appeared first on <a href="https://www.cloudcorner.gr">Apostolidis Cloud Corner</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.cloudcorner.gr/microsoft/azure/azure-application-gateway-waf-policy/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Securely scale your Web Apps with Azure Front Door</title>
		<link>https://www.cloudcorner.gr/microsoft/azure/securely-scale-your-web-apps-with-azure-front-door/</link>
					<comments>https://www.cloudcorner.gr/microsoft/azure/securely-scale-your-web-apps-with-azure-front-door/#comments</comments>
		
		<dc:creator><![CDATA[Pantelis Apostolidis]]></dc:creator>
		<pubDate>Fri, 22 Nov 2019 11:30:53 +0000</pubDate>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[app service]]></category>
		<category><![CDATA[application publishing]]></category>
		<category><![CDATA[azure]]></category>
		<category><![CDATA[azure front door]]></category>
		<category><![CDATA[azurerm]]></category>
		<category><![CDATA[front door]]></category>
		<category><![CDATA[high availability]]></category>
		<category><![CDATA[protect]]></category>
		<category><![CDATA[resiliency]]></category>
		<category><![CDATA[scale]]></category>
		<category><![CDATA[web app]]></category>
		<category><![CDATA[website]]></category>
		<guid isPermaLink="false">https://www.e-apostolidis.gr/?p=2758</guid>

					<description><![CDATA[<p>Securely scale your Web Apps with Azure Front Door There is a big buzz out there about Azure Front Door. </p>
<p>The post <a href="https://www.cloudcorner.gr/microsoft/azure/securely-scale-your-web-apps-with-azure-front-door/">Securely scale your Web Apps with Azure Front Door</a> appeared first on <a href="https://www.cloudcorner.gr">Apostolidis Cloud Corner</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h1>Securely scale your Web Apps with Azure Front Door</h1>
<p>There is a big buzz out there about Azure Front Door.  Is it a Load Balancer? A CDN? A Traffic Manager? A Web Application Firewall ? A Reverse Proxy? An Application Gateway?</p>
<h2>So, what is Azure Front Door?</h2>
<p>Azure Front Door actually is all the above and more. It is a global service, that routes web traffic based on performance and availability. A Layer 7 multi-region load balancer with Web Application Firewall (WAF) capabilities, DDoS protection &amp; CDN.</p>
<p>Azure Front Door is the entry point, the edge, of all Microsoft&#8217;s WAN. All Microsoft services, like Office 365 &amp; Bing, are using Azure Front Door.</p>
<p>The services that Azure Front door provides are:</p>
<ul>
<li>Accelerate application performance</li>
<li>Increase application availability with smart health probes</li>
<li>URL-based routing</li>
<li>Multi-site hosting</li>
<li>URL redirection</li>
<li>Session affinity</li>
<li>SSL termination</li>
<li>Custom Domain &amp; certificate management</li>
<li>Security via custom WAF rules</li>
<li>DDoS protection</li>
<li>URL rewrite</li>
<li>IPv6 and HTTP/2 support</li>
</ul>
<p>At <a href="https://docs.microsoft.com/en-us/azure/frontdoor/front-door-overview">Azure Front Door documentation</a> there is a paragraph that can help to understand the difference between Azure Front Door and other publishing / load balancing Azure solutions and where to use each.</p>
<blockquote><p>Azure provides a suite of fully managed load-balancing solutions for your scenarios. If you are looking for a DNS based global routing and do not have requirements for Transport Layer Security (TLS) protocol termination (&#8220;SSL offload&#8221;) or per-HTTP/HTTPS request, application-layer processing, review Traffic Manager. If you are looking for load balancing between your servers in a region, for application layer, review Application Gateway and for network layer load balancing, review Load Balancer. Your end-to-end scenarios might benefit from combining these solutions as needed.</p></blockquote>
<p>For pricing information, see<a href="https://azure.microsoft.com/en-us/pricing/details/frontdoor/"> Front Door Pricing.</a></p>
<h2 id="rwooPod">How to scale your web apps with Front Door</h2>
<p>Create two simple Azure Web apps. Check this guide for a simple guide on how to create Azure App Service: <a href="https://www.e-apostolidis.gr/microsoft/azure/azure-start-point-your-first-web-app/">https://www.e-apostolidis.gr/microsoft/azure/azure-start-point-your-first-web-app/</a></p>
<p id="wvVLJKI">One at West Europe:</p>
<p id="yTCwhEH"><img loading="lazy" decoding="async" width="1256" height="242" class="alignnone size-full wp-image-2918 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/11/img_5dd79fad4b322.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd79fad4b322.png 1256w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd79fad4b322-300x58.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd79fad4b322-1024x197.png 1024w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd79fad4b322-768x148.png 768w" sizes="auto, (max-width: 1256px) 100vw, 1256px" /></p>
<p>and one at North Europe:</p>
<p id="AhiVGGY"><img loading="lazy" decoding="async" width="1243" height="249" class="alignnone size-full wp-image-2919 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/11/img_5dd79fc74bcc4.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd79fc74bcc4.png 1243w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd79fc74bcc4-300x60.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd79fc74bcc4-1024x205.png 1024w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd79fc74bcc4-768x154.png 768w" sizes="auto, (max-width: 1243px) 100vw, 1243px" /></p>
<p>Using FTP, I deployed an one-page html site at both regions. I change the text of both site to say &#8220;This Web Site is located at North Europe Azure Datacenter&#8221;</p>
<p><img loading="lazy" decoding="async" width="1055" height="575" class="alignnone size-full wp-image-2921 " style="font-size: 1.0625rem;" src="https://www.e-apostolidis.gr/wp-content/uploads/2019/11/img_5dd7a2737d275.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7a2737d275.png 1055w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7a2737d275-300x164.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7a2737d275-1024x558.png 1024w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7a2737d275-768x419.png 768w" sizes="auto, (max-width: 1055px) 100vw, 1055px" /></p>
<p>and &#8220;West Europe&#8221; to the other.</p>
<p id="JzaLeib"><img loading="lazy" decoding="async" width="1064" height="654" class="alignnone size-full wp-image-2923 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/11/img_5dd7ba6661201.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7ba6661201.png 1064w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7ba6661201-300x184.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7ba6661201-1024x629.png 1024w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7ba6661201-768x472.png 768w" sizes="auto, (max-width: 1064px) 100vw, 1064px" /></p>
<p>Then create a Front Door. Search for Front Door at Azure marketplace and Create one.</p>
<p id="dCVrHKN"><img loading="lazy" decoding="async" width="443" height="247" class="alignnone size-full wp-image-2920 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/11/img_5dd79fffca8a4.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd79fffca8a4.png 443w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd79fffca8a4-300x167.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd79fffca8a4-360x200.png 360w" sizes="auto, (max-width: 443px) 100vw, 443px" /></p>
<p>This is a high level diagram of the Front Door with two Web Apps design that we will create</p>
<p><img loading="lazy" decoding="async" width="656" height="539" class="alignnone size-full wp-image-2915 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/11/img_5dd79e8c9b7aa.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd79e8c9b7aa.png 656w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd79e8c9b7aa-300x246.png 300w" sizes="auto, (max-width: 656px) 100vw, 656px" /></p>
<p>The &#8220;create a Front Door&#8221; wizard will start and we can configure it step by step. First we will create a Frontend host by clicking the + at the Step 1</p>
<p id="ekCvetw"><img loading="lazy" decoding="async" width="1658" height="891" class="alignnone size-full wp-image-2924 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/11/img_5dd7babc592e6.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7babc592e6.png 1658w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7babc592e6-300x161.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7babc592e6-1024x550.png 1024w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7babc592e6-768x413.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7babc592e6-1536x825.png 1536w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7babc592e6-780x420.png 780w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7babc592e6-1320x709.png 1320w" sizes="auto, (max-width: 1658px) 100vw, 1658px" /></p>
<p>At the frontend host we will create the URL that our apps will be available. I added the papostolidis.azurefd.net. of course later you can add your custom domain and add a CNAME to route the traffic to the Front Door.</p>
<p id="FwBlhRJ"><img loading="lazy" decoding="async" width="455" height="589" class="alignnone size-full wp-image-2925 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/11/img_5dd7bb2f78f9b.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7bb2f78f9b.png 455w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7bb2f78f9b-232x300.png 232w" sizes="auto, (max-width: 455px) 100vw, 455px" /></p>
<p>Then, at the Backend pools (Step 2), press the + to add the web apps. add a name for the backend pool, like &#8220;myapps&#8221; and press + ADD a backend to add the apps.</p>
<p id="bDQltQt"><img loading="lazy" decoding="async" width="452" height="332" class="alignnone size-full wp-image-2926 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/11/img_5dd7bbda1c10b.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7bbda1c10b.png 452w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7bbda1c10b-300x220.png 300w" sizes="auto, (max-width: 452px) 100vw, 452px" /></p>
<p>Select host type, you can add app service, cloud service, storage and custom host (URL). I selected the app service.</p>
<p id="NemtEmn"><img loading="lazy" decoding="async" width="451" height="249" class="alignnone size-full wp-image-2927 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/11/img_5dd7bc085289b.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7bc085289b.png 451w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7bc085289b-300x166.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7bc085289b-360x200.png 360w" sizes="auto, (max-width: 451px) 100vw, 451px" /></p>
<p>Select the subscription and the app service and add the correct ports for http and https traffic.</p>
<p>The priority defines if the traffic will be routed to the host with the lower priority number (e.g. 1) and if that host fails will route to the next host with bigger priority number (e.g. 2). If you add the same priority to more than one host then it will follow the weight number.</p>
<p>The weight number defines the percentage of requests that will be routed to each host.</p>
<p id="yRmxJuE"><img loading="lazy" decoding="async" width="426" height="609" class="alignnone size-full wp-image-2928 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/11/img_5dd7bc3865179.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7bc3865179.png 426w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7bc3865179-210x300.png 210w" sizes="auto, (max-width: 426px) 100vw, 426px" /></p>
<p>The same way add the second web app</p>
<p id="nlVAiTV"><img loading="lazy" decoding="async" width="469" height="279" class="alignnone size-full wp-image-2930 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/11/img_5dd7bd8cde5ca.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7bd8cde5ca.png 469w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7bd8cde5ca-300x178.png 300w" sizes="auto, (max-width: 469px) 100vw, 469px" /></p>
<p>Finally select a path, protocol and interval for the probe that will do health checks to the app to define if it is active or not.</p>
<p id="AWtLRhS"><img loading="lazy" decoding="async" width="448" height="348" class="alignnone size-full wp-image-2929 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/11/img_5dd7bd4fa75fb.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7bd4fa75fb.png 448w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7bd4fa75fb-300x233.png 300w" sizes="auto, (max-width: 448px) 100vw, 448px" /></p>
<p>The third step is to add the routing rules. At the routing rules you can specify:</p>
<ul>
<li>The accepted protocol, http or https.</li>
<li>the frontend host for this rule</li>
<li>the patterns that the route will accept, like www.e-apostolidis.gr/mysite/* or just /* ro root.</li>
<li>Route type forward or redirect.</li>
<li>The backend pool that this rule will direct the traffic</li>
<li>The protocol that the traffic will be forwarded. Here we define the SSL Offload if we select HTTPs for frontend accepted protocol and HTTP for backend.</li>
<li>URL Rewrite rules</li>
<li>Caching, for static content caching like CDN.</li>
</ul>
<p id="QJmNHSq"><img loading="lazy" decoding="async" width="637" height="799" class="alignnone size-full wp-image-2932 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/11/img_5dd7bdd890234.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7bdd890234.png 637w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7bdd890234-239x300.png 239w" sizes="auto, (max-width: 637px) 100vw, 637px" /></p>
<p>Once all steps are completed we can move on and create the Front Door</p>
<p id="MlYzzDh"><img loading="lazy" decoding="async" width="1642" height="238" class="alignnone size-full wp-image-2934 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/11/img_5dd7befef279d.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7befef279d.png 1642w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7befef279d-300x43.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7befef279d-1024x148.png 1024w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7befef279d-768x111.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7befef279d-1536x223.png 1536w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7befef279d-1320x191.png 1320w" sizes="auto, (max-width: 1642px) 100vw, 1642px" /></p>
<p>When the Front Door is ready, we can see the URL at the Overview.</p>
<p id="gcPIYFH"><img loading="lazy" decoding="async" width="1347" height="407" class="alignnone size-full wp-image-2936 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/11/img_5dd7bff85a758.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7bff85a758.png 1347w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7bff85a758-300x91.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7bff85a758-1024x309.png 1024w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7bff85a758-768x232.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7bff85a758-1320x399.png 1320w" sizes="auto, (max-width: 1347px) 100vw, 1347px" /></p>
<p>And browse our web app using the Front Door URL:</p>
<p id="zcIymmW"><img loading="lazy" decoding="async" width="1051" height="678" class="alignnone size-full wp-image-2937 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/11/img_5dd7c0882cc52.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7c0882cc52.png 1051w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7c0882cc52-300x194.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7c0882cc52-1024x661.png 1024w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7c0882cc52-768x495.png 768w" sizes="auto, (max-width: 1051px) 100vw, 1051px" /></p>
<h2 id="rwooPod">How to protect your web apps with Front Door</h2>
<p>Right now we scaled our web apps. If we use each app&#8217;s URL we can still access the app. The first security step is to lock the web apps to be accessed only through the Front Door URL.</p>
<p>Checking the Azure Front Door FAQ page, <a href="https://docs.microsoft.com/en-us/azure/frontdoor/front-door-faq">https://docs.microsoft.com/en-us/azure/frontdoor/front-door-faq</a> it lists the Front Door&#8217;s address rance.</p>
<p>Front Door&#8217;s IPv4 backend IP space: 147.243.0.0/16</p>
<p>Go to the App Service, at the Networking section, select &#8220;Configure Access Restrictions&#8221;</p>
<p id="YEQxRIk"><img loading="lazy" decoding="async" width="809" height="325" class="alignnone size-full wp-image-2939 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/11/img_5dd7c3a96a722.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7c3a96a722.png 809w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7c3a96a722-300x121.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7c3a96a722-768x309.png 768w" sizes="auto, (max-width: 809px) 100vw, 809px" /></p>
<p>Add an allow access restriction with the IP range of the Front Door.</p>
<p id="YwxvCNm"><img loading="lazy" decoding="async" width="329" height="490" class="alignnone size-full wp-image-2940 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/11/img_5dd7c3e09a6e6.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7c3e09a6e6.png 329w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7c3e09a6e6-201x300.png 201w" sizes="auto, (max-width: 329px) 100vw, 329px" /></p>
<p>Automatically a Deny rule will be created for everything else.</p>
<p id="ythZINA"><img loading="lazy" decoding="async" width="746" height="194" class="alignnone size-full wp-image-2941 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/11/img_5dd7c415b3175.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7c415b3175.png 746w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7c415b3175-300x78.png 300w" sizes="auto, (max-width: 746px) 100vw, 746px" /></p>
<p>Add the rule to both web apps and then try to access the apps with their direct links.</p>
<p id="WsprFhx"><img loading="lazy" decoding="async" width="828" height="430" class="alignnone size-full wp-image-2942 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/11/img_5dd7c480eeac7.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7c480eeac7.png 828w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7c480eeac7-300x156.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7c480eeac7-768x399.png 768w" sizes="auto, (max-width: 828px) 100vw, 828px" /></p>
<p>Now on, we can access the apps only by using the Front Door URL:</p>
<p id="KofhmdK"><img loading="lazy" decoding="async" width="1050" height="688" class="alignnone size-full wp-image-2943 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/11/img_5dd7c4b47e4ba.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7c4b47e4ba.png 1050w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7c4b47e4ba-300x197.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7c4b47e4ba-1024x671.png 1024w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7c4b47e4ba-768x503.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd7c4b47e4ba-120x80.png 120w" sizes="auto, (max-width: 1050px) 100vw, 1050px" /></p>
<p>This is a high level diagram after the restrictions</p>
<p><img loading="lazy" decoding="async" width="665" height="527" class="alignnone size-full wp-image-2914 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/11/img_5dd79e46db56b.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd79e46db56b.png 665w, https://www.cloudcorner.gr/wp-content/uploads/2019/11/img_5dd79e46db56b-300x238.png 300w" sizes="auto, (max-width: 665px) 100vw, 665px" /></p>
<p id="IjPdcAE"><strong>At the next article, we will see how to add Web Application Firewall (WAF) Rules to Front Door, Stay Tuned!! </strong></p>
<div class="saboxplugin-wrap" itemtype="http://schema.org/Person" itemscope itemprop="author">
<div class="saboxplugin-tab">
<div class="saboxplugin-gravatar"><img loading="lazy" decoding="async" src="https://www.e-apostolidis.gr/wp-content/uploads/2019/05/mvpsummit2019.jpg" width="100"  height="100" alt="Pantelis Apostolidis" itemprop="image"></div>
<div class="saboxplugin-authorname"><a href="https://www.cloudcorner.gr/author/admin/" class="vcard author" rel="author"><span class="fn">Pantelis Apostolidis</span></a></div>
<div class="saboxplugin-desc">
<div itemprop="description">
<p>Pantelis Apostolidis is a Sr. Specialist, Azure at Microsoft and a former Microsoft Azure MVP. For the last 20 years, Pantelis has been involved to major cloud projects in Greece and abroad, helping companies to adopt and deploy cloud technologies, driving business value. He is entitled to a lot of Microsoft Expert Certifications, demonstrating his proven experience in delivering high quality solutions. He is an author, blogger and he is acting as a spokesperson for conferences, workshops and webinars. He is also an active member of several communities as a moderator in azureheads.gr and autoexec.gr. Follow him on Twitter @papostolidis.</p>
</div>
</div>
<div class="saboxplugin-web "><a href="https://www.cloudcorner.gr" target="_self" >www.cloudcorner.gr</a></div>
<div class="clearfix"></div>
<div class="saboxplugin-socials "><a title="Facebook" target="_blank" href="https://www.facebook.com/pantelis.apostolidis" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-facebook" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 264 512"><path fill="currentColor" d="M76.7 512V283H0v-91h76.7v-71.7C76.7 42.4 124.3 0 193.8 0c33.3 0 61.9 2.5 70.2 3.6V85h-48.2c-37.8 0-45.1 18-45.1 44.3V192H256l-11.7 91h-73.6v229"></path></svg></span></a><a title="Linkedin" target="_blank" href="https://www.linkedin.com/in/papostolidis/" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-linkedin" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M100.3 480H7.4V180.9h92.9V480zM53.8 140.1C24.1 140.1 0 115.5 0 85.8 0 56.1 24.1 32 53.8 32c29.7 0 53.8 24.1 53.8 53.8 0 29.7-24.1 54.3-53.8 54.3zM448 480h-92.7V334.4c0-34.7-.7-79.2-48.3-79.2-48.3 0-55.7 37.7-55.7 76.7V480h-92.8V180.9h89.1v40.8h1.3c12.4-23.5 42.7-48.3 87.9-48.3 94 0 111.3 61.9 111.3 142.3V480z"></path></svg></span></a><a title="Instagram" target="_blank" href="https://www.instagram.com/proximagr" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-instagram" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z"></path></svg></span></a><a title="Rss" target="_blank" href="https://wwwcloudcorner.gr/feed/rdf/" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-rss" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M128.081 415.959c0 35.369-28.672 64.041-64.041 64.041S0 451.328 0 415.959s28.672-64.041 64.041-64.041 64.04 28.673 64.04 64.041zm175.66 47.25c-8.354-154.6-132.185-278.587-286.95-286.95C7.656 175.765 0 183.105 0 192.253v48.069c0 8.415 6.49 15.472 14.887 16.018 111.832 7.284 201.473 96.702 208.772 208.772.547 8.397 7.604 14.887 16.018 14.887h48.069c9.149.001 16.489-7.655 15.995-16.79zm144.249.288C439.596 229.677 251.465 40.445 16.503 32.01 7.473 31.686 0 38.981 0 48.016v48.068c0 8.625 6.835 15.645 15.453 15.999 191.179 7.839 344.627 161.316 352.465 352.465.353 8.618 7.373 15.453 15.999 15.453h48.068c9.034-.001 16.329-7.474 16.005-16.504z"></path></svg></span></a><a title="Twitter" target="_blank" href="https://twitter.com/papostolidis" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-twitter" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><path d="M26.37,26l-8.795-12.822l0.015,0.012L25.52,4h-2.65l-6.46,7.48L11.28,4H4.33l8.211,11.971L12.54,15.97L3.88,26h2.65 l7.182-8.322L19.42,26H26.37z M10.23,6l12.34,18h-2.1L8.12,6H10.23z" /></svg></span></a><a title="Github" target="_blank" href="https://github.com/proximagr" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-github" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><path fill="currentColor" d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"></path></svg></span></a><a title="User email" target="_self" href="mailto:pr&#111;&#120;i&#109;&#097;&#103;&#114;&#064;&#104;otmail.&#099;o&#109;" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-user_email" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M502.3 190.8c3.9-3.1 9.7-.2 9.7 4.7V400c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V195.6c0-5 5.7-7.8 9.7-4.7 22.4 17.4 52.1 39.5 154.1 113.6 21.1 15.4 56.7 47.8 92.2 47.6 35.7.3 72-32.8 92.3-47.6 102-74.1 131.6-96.3 154-113.7zM256 320c23.2.4 56.6-29.2 73.4-41.4 132.7-96.3 142.8-104.7 173.4-128.7 5.8-4.5 9.2-11.5 9.2-18.9v-19c0-26.5-21.5-48-48-48H48C21.5 64 0 85.5 0 112v19c0 7.4 3.4 14.3 9.2 18.9 30.6 23.9 40.7 32.4 173.4 128.7 16.8 12.2 50.2 41.8 73.4 41.4z"></path></svg></span></a></div>
</div>
</div>
<p><a class="a2a_button_email" href="https://www.addtoany.com/add_to/email?linkurl=https%3A%2F%2Fwww.cloudcorner.gr%2Fmicrosoft%2Fazure%2Fsecurely-scale-your-web-apps-with-azure-front-door%2F&amp;linkname=Securely%20scale%20your%20Web%20Apps%20with%20Azure%20Front%20Door" title="Email" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_print" href="https://www.addtoany.com/add_to/print?linkurl=https%3A%2F%2Fwww.cloudcorner.gr%2Fmicrosoft%2Fazure%2Fsecurely-scale-your-web-apps-with-azure-front-door%2F&amp;linkname=Securely%20scale%20your%20Web%20Apps%20with%20Azure%20Front%20Door" title="Print" rel="nofollow noopener" target="_blank"></a><a class="a2a_dd addtoany_share_save addtoany_share" href="https://www.addtoany.com/share#url=https%3A%2F%2Fwww.cloudcorner.gr%2Fmicrosoft%2Fazure%2Fsecurely-scale-your-web-apps-with-azure-front-door%2F&#038;title=Securely%20scale%20your%20Web%20Apps%20with%20Azure%20Front%20Door" data-a2a-url="https://www.cloudcorner.gr/microsoft/azure/securely-scale-your-web-apps-with-azure-front-door/" data-a2a-title="Securely scale your Web Apps with Azure Front Door"><img src="https://static.addtoany.com/buttons/share_save_171_16.png" alt="Share"></a></p><p>The post <a href="https://www.cloudcorner.gr/microsoft/azure/securely-scale-your-web-apps-with-azure-front-door/">Securely scale your Web Apps with Azure Front Door</a> appeared first on <a href="https://www.cloudcorner.gr">Apostolidis Cloud Corner</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.cloudcorner.gr/microsoft/azure/securely-scale-your-web-apps-with-azure-front-door/feed/</wfw:commentRss>
			<slash:comments>5</slash:comments>
		
		
			</item>
		<item>
		<title>Configure The Azure Web Application Firewall</title>
		<link>https://www.cloudcorner.gr/microsoft/configure-the-azure-web-application-firewall/</link>
					<comments>https://www.cloudcorner.gr/microsoft/configure-the-azure-web-application-firewall/#respond</comments>
		
		<dc:creator><![CDATA[Pantelis Apostolidis]]></dc:creator>
		<pubDate>Wed, 30 Jan 2019 14:00:03 +0000</pubDate>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[application gateway]]></category>
		<category><![CDATA[application publishing]]></category>
		<category><![CDATA[azure]]></category>
		<category><![CDATA[azurerm]]></category>
		<category><![CDATA[waf]]></category>
		<category><![CDATA[web app]]></category>
		<category><![CDATA[web application]]></category>
		<category><![CDATA[web application firewall]]></category>
		<guid isPermaLink="false">https://www.e-apostolidis.gr/?p=2389</guid>

					<description><![CDATA[<p>Azure Web Application Firewall (WAF) is a function of the Azure Application Gateway that detects and prevents exploits and attacks</p>
<p>The post <a href="https://www.cloudcorner.gr/microsoft/configure-the-azure-web-application-firewall/">Configure The Azure Web Application Firewall</a> appeared first on <a href="https://www.cloudcorner.gr">Apostolidis Cloud Corner</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Azure Web Application Firewall (WAF) is a function of the Azure Application Gateway that detects and prevents exploits and attacks to a web application. Using a WAF we add an additional security layer in front of our application. To have a sneak peak at the most common web application attacks, take a look at the <a href="https://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project">OWASP Top 10 Most Critical Web Application Security Risks</a> . </p>



<p>At my previous posts we have seen how to <a href="https://www.e-apostolidis.gr/microsoft/azure/protect-your-web-application-with-azure-application-gateway-waf/">Protect your Web App using Azure Application Gateway Web Application Firewall</a> and <a href="https://www.e-apostolidis.gr/microsoft/azure/serverless-computing-email-report-azure-waf-logs/">Use Log Analytics to Query the WAF Logs and email those logs to the Admins</a>.  At this post I want to share some tips on how to configure the Azure Web Application Firewall. </p>



<p>The Azure Web Application Firewall, like all WAFs, needs a period of detection &#8220;the training period&#8221;, in order to gather logs about what is logged as blocked so to configure it accordingly before turning the WAF to Prevention mode. The Azure Web Application Firewall uses <a href="https://www.owasp.org/index.php/Category:OWASP_ModSecurity_Core_Rule_Set_Project">OWASP ModSecurity Core Rule Set (CRS)</a>. You can select version 2.2.9 or version 3.0 of the OWASP ModSecurity Core Rule Set. These rules include protection against attacks such as SQL injection, cross-site scripting attacks, and session hijacks.</p>



<p>The configuration of the Azure Web Application Firewall has two parts. One part is the OWASP rules custom configuration, where we can check / uncheck the OWASP rules that the WAF will use to analyse the requests:</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="1024" height="742" src="https://www.e-apostolidis.gr/wp-content/uploads/2019/01/image-2-1024x742.png" alt="WAF" class="wp-image-2395" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-2-1024x742.png 1024w, https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-2-300x217.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-2-768x556.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-2-600x435.png 600w, https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-2.png 1147w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p>and the second part is the Exclusions and the Request Size Limits:</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="1024" height="545" src="https://www.e-apostolidis.gr/wp-content/uploads/2019/01/image-3-1024x545.png" alt="WAF" class="wp-image-2396" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-3-1024x545.png 1024w, https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-3-300x160.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-3-768x409.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-3-600x319.png 600w, https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-3.png 1314w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p>Let&#8217;s see how we can find out what to exclude and what to customize. Once you setup the Azure Application Gateway and Publish your web application turn of the Firewall in Detection mode. Enable the Diagnostic Logs and send the logs to Log Analytics and start using the we application. I have covered all those steps at my previous posts, <a href="https://www.e-apostolidis.gr/microsoft/azure/protect-your-web-application-with-azure-application-gateway-waf/">Protect your Web App using Azure Application Gateway Web Application Firewall</a> and <a href="https://www.e-apostolidis.gr/microsoft/azure/serverless-computing-email-report-azure-waf-logs/">Use Log Analytics to Query the WAF Logs and email those logs to the Admins</a>. To make it more fun you can actually attack your application using sample attacks, like SQL Injection samples from this link: <a href="https://www.owasp.org/index.php/Testing_for_SQL_Injection_(OTG-INPVAL-005)">https://www.owasp.org/index.php/Testing_for_SQL_Injection_(OTG-INPVAL-005)</a> and Cross-site Scripting (XSS) from this link: <a href="https://www.owasp.org/index.php/Cross-site_Scripting_(XSS)">https://www.owasp.org/index.php/Cross-site_Scripting_(XSS)</a> . Both links are from OWASP for testing.</p>



<p>After a while run the query to check the Azure Web Application Firewall logs:</p>



<pre class="wp-block-verse">AzureDiagnostics | where Resource == "PROWAF" and OperationName == "ApplicationGatewayFirewall" | where TimeGenerated &gt; ago(24h) | summarize count() by TimeGenerated, clientIp_s , TimeGenerated , ruleId_s , Message , details_message_s , requestUri_s, details_file_s , hostname_s</pre>



<p>You will get the below results:</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="1024" height="259" src="https://www.e-apostolidis.gr/wp-content/uploads/2019/01/image-8-1024x259.png" alt="" class="wp-image-2406" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-8-1024x259.png 1024w, https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-8-300x76.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-8-768x195.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-8-600x152.png 600w, https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-8.png 1634w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="675" height="239" src="https://www.e-apostolidis.gr/wp-content/uploads/2019/01/image-10.png" alt="" class="wp-image-2409" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-10.png 675w, https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-10-300x106.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-10-600x212.png 600w" sizes="auto, (max-width: 675px) 100vw, 675px" /></figure>



<p>At the Message part of the Log you will see the kind of attack that the WAF has detected.</p>



<p>At the ruleId_s you can find the OWASP rule ID. With this information you can search the Rule ID at the Advanced rule configuration and uncheck the specific rule. Of course every rule you uncheck you open a security hole. So I recommend to first check if you can alter your application to comply with the rule and only if this is not possible to drop the rule. </p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="892" height="159" src="https://www.e-apostolidis.gr/wp-content/uploads/2019/01/image-11.png" alt="" class="wp-image-2410" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-11.png 892w, https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-11-300x53.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-11-768x137.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-11-600x107.png 600w" sizes="auto, (max-width: 892px) 100vw, 892px" /></figure>



<p> At the  details_message_s column also you can find the matched pattern and configure the Exclusions</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="1024" height="182" src="https://www.e-apostolidis.gr/wp-content/uploads/2019/01/image-5-1024x182.png" alt="WAF" class="wp-image-2400" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-5-1024x182.png 1024w, https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-5-300x53.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-5-768x137.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-5-600x107.png 600w, https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-5.png 1056w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p>Finally you can configure the request size limits according to your application</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="674" height="151" src="https://www.e-apostolidis.gr/wp-content/uploads/2019/01/image-6.png" alt="WAF" class="wp-image-2401" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-6.png 674w, https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-6-300x67.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-6-600x134.png 600w" sizes="auto, (max-width: 674px) 100vw, 674px" /></figure>



<p>Once you finalize your Azure Application Firewall configuration and you no longer have &#8220;Blocked&#8221; messages change it to &#8220;Prevention&#8221; mode to start protecting your web application.</p>



<figure class="wp-block-image"><img loading="lazy" decoding="async" width="722" height="303" src="https://www.e-apostolidis.gr/wp-content/uploads/2019/01/image-7.png" alt="WAF" class="wp-image-2402" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-7.png 722w, https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-7-300x126.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/01/image-7-600x252.png 600w" sizes="auto, (max-width: 722px) 100vw, 722px" /></figure>



<p>Reference:<br>WAF Overview: <a href="https://docs.microsoft.com/en-us/azure/application-gateway/waf-overview">https://docs.microsoft.com/en-us/azure/application-gateway/waf-overview</a><br>WAF Configuration: <a href="https://docs.microsoft.com/en-us/azure/application-gateway/application-gateway-waf-configuration">https://docs.microsoft.com/en-us/azure/application-gateway/application-gateway-waf-configuration</a><br>OWASP ModSecurity Core Rule Set (CRS): <a href="https://www.owasp.org/index.php/Category:OWASP_ModSecurity_Core_Rule_Set_Project">https://www.owasp.org/index.php/Category:OWASP_ModSecurity_Core_Rule_Set_Project</a></p>



<p></p>



<p></p>
<div class="saboxplugin-wrap" itemtype="http://schema.org/Person" itemscope itemprop="author"><div class="saboxplugin-tab"><div class="saboxplugin-gravatar"><img loading="lazy" decoding="async" src="https://www.e-apostolidis.gr/wp-content/uploads/2019/05/mvpsummit2019.jpg" width="100"  height="100" alt="Pantelis Apostolidis" itemprop="image"></div><div class="saboxplugin-authorname"><a href="https://www.cloudcorner.gr/author/admin/" class="vcard author" rel="author"><span class="fn">Pantelis Apostolidis</span></a></div><div class="saboxplugin-desc"><div itemprop="description"><p>Pantelis Apostolidis is a Sr. Specialist, Azure at Microsoft and a former Microsoft Azure MVP. For the last 20 years, Pantelis has been involved to major cloud projects in Greece and abroad, helping companies to adopt and deploy cloud technologies, driving business value. He is entitled to a lot of Microsoft Expert Certifications, demonstrating his proven experience in delivering high quality solutions. He is an author, blogger and he is acting as a spokesperson for conferences, workshops and webinars. He is also an active member of several communities as a moderator in azureheads.gr and autoexec.gr. Follow him on Twitter @papostolidis.</p>
</div></div><div class="saboxplugin-web "><a href="https://www.cloudcorner.gr" target="_self" >www.cloudcorner.gr</a></div><div class="clearfix"></div><div class="saboxplugin-socials "><a title="Facebook" target="_blank" href="https://www.facebook.com/pantelis.apostolidis" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-facebook" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 264 512"><path fill="currentColor" d="M76.7 512V283H0v-91h76.7v-71.7C76.7 42.4 124.3 0 193.8 0c33.3 0 61.9 2.5 70.2 3.6V85h-48.2c-37.8 0-45.1 18-45.1 44.3V192H256l-11.7 91h-73.6v229"></path></svg></span></a><a title="Linkedin" target="_blank" href="https://www.linkedin.com/in/papostolidis/" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-linkedin" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M100.3 480H7.4V180.9h92.9V480zM53.8 140.1C24.1 140.1 0 115.5 0 85.8 0 56.1 24.1 32 53.8 32c29.7 0 53.8 24.1 53.8 53.8 0 29.7-24.1 54.3-53.8 54.3zM448 480h-92.7V334.4c0-34.7-.7-79.2-48.3-79.2-48.3 0-55.7 37.7-55.7 76.7V480h-92.8V180.9h89.1v40.8h1.3c12.4-23.5 42.7-48.3 87.9-48.3 94 0 111.3 61.9 111.3 142.3V480z"></path></svg></span></a><a title="Instagram" target="_blank" href="https://www.instagram.com/proximagr" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-instagram" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z"></path></svg></span></a><a title="Rss" target="_blank" href="https://wwwcloudcorner.gr/feed/rdf/" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-rss" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M128.081 415.959c0 35.369-28.672 64.041-64.041 64.041S0 451.328 0 415.959s28.672-64.041 64.041-64.041 64.04 28.673 64.04 64.041zm175.66 47.25c-8.354-154.6-132.185-278.587-286.95-286.95C7.656 175.765 0 183.105 0 192.253v48.069c0 8.415 6.49 15.472 14.887 16.018 111.832 7.284 201.473 96.702 208.772 208.772.547 8.397 7.604 14.887 16.018 14.887h48.069c9.149.001 16.489-7.655 15.995-16.79zm144.249.288C439.596 229.677 251.465 40.445 16.503 32.01 7.473 31.686 0 38.981 0 48.016v48.068c0 8.625 6.835 15.645 15.453 15.999 191.179 7.839 344.627 161.316 352.465 352.465.353 8.618 7.373 15.453 15.999 15.453h48.068c9.034-.001 16.329-7.474 16.005-16.504z"></path></svg></span></a><a title="Twitter" target="_blank" href="https://twitter.com/papostolidis" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-twitter" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><path d="M26.37,26l-8.795-12.822l0.015,0.012L25.52,4h-2.65l-6.46,7.48L11.28,4H4.33l8.211,11.971L12.54,15.97L3.88,26h2.65 l7.182-8.322L19.42,26H26.37z M10.23,6l12.34,18h-2.1L8.12,6H10.23z" /></svg></span></a><a title="Github" target="_blank" href="https://github.com/proximagr" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-github" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><path fill="currentColor" d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"></path></svg></span></a><a title="User email" target="_self" href="mailto:pro&#120;i&#109;ag&#114;&#064;&#104;o&#116;&#109;a&#105;l&#046;com" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-user_email" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M502.3 190.8c3.9-3.1 9.7-.2 9.7 4.7V400c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V195.6c0-5 5.7-7.8 9.7-4.7 22.4 17.4 52.1 39.5 154.1 113.6 21.1 15.4 56.7 47.8 92.2 47.6 35.7.3 72-32.8 92.3-47.6 102-74.1 131.6-96.3 154-113.7zM256 320c23.2.4 56.6-29.2 73.4-41.4 132.7-96.3 142.8-104.7 173.4-128.7 5.8-4.5 9.2-11.5 9.2-18.9v-19c0-26.5-21.5-48-48-48H48C21.5 64 0 85.5 0 112v19c0 7.4 3.4 14.3 9.2 18.9 30.6 23.9 40.7 32.4 173.4 128.7 16.8 12.2 50.2 41.8 73.4 41.4z"></path></svg></span></a></div></div></div><p><a class="a2a_button_email" href="https://www.addtoany.com/add_to/email?linkurl=https%3A%2F%2Fwww.cloudcorner.gr%2Fmicrosoft%2Fconfigure-the-azure-web-application-firewall%2F&amp;linkname=Configure%20The%20Azure%20Web%20Application%20Firewall" title="Email" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_print" href="https://www.addtoany.com/add_to/print?linkurl=https%3A%2F%2Fwww.cloudcorner.gr%2Fmicrosoft%2Fconfigure-the-azure-web-application-firewall%2F&amp;linkname=Configure%20The%20Azure%20Web%20Application%20Firewall" title="Print" rel="nofollow noopener" target="_blank"></a><a class="a2a_dd addtoany_share_save addtoany_share" href="https://www.addtoany.com/share#url=https%3A%2F%2Fwww.cloudcorner.gr%2Fmicrosoft%2Fconfigure-the-azure-web-application-firewall%2F&#038;title=Configure%20The%20Azure%20Web%20Application%20Firewall" data-a2a-url="https://www.cloudcorner.gr/microsoft/configure-the-azure-web-application-firewall/" data-a2a-title="Configure The Azure Web Application Firewall"><img src="https://static.addtoany.com/buttons/share_save_171_16.png" alt="Share"></a></p><p>The post <a href="https://www.cloudcorner.gr/microsoft/configure-the-azure-web-application-firewall/">Configure The Azure Web Application Firewall</a> appeared first on <a href="https://www.cloudcorner.gr">Apostolidis Cloud Corner</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.cloudcorner.gr/microsoft/configure-the-azure-web-application-firewall/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Azure Start Point &#124; Your first Web App</title>
		<link>https://www.cloudcorner.gr/microsoft/azure/azure-start-point-your-first-web-app/</link>
					<comments>https://www.cloudcorner.gr/microsoft/azure/azure-start-point-your-first-web-app/#comments</comments>
		
		<dc:creator><![CDATA[Pantelis Apostolidis]]></dc:creator>
		<pubDate>Wed, 23 May 2018 19:26:08 +0000</pubDate>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[app service]]></category>
		<category><![CDATA[azure]]></category>
		<category><![CDATA[azure paas]]></category>
		<category><![CDATA[azure rm]]></category>
		<category><![CDATA[azure start point]]></category>
		<category><![CDATA[azurerm]]></category>
		<category><![CDATA[web app]]></category>
		<guid isPermaLink="false">https://www.e-apostolidis.gr/?p=1879</guid>

					<description><![CDATA[<p>Azure Start Point &#124; Your first Web App In this post series we will go through some basic steps on</p>
<p>The post <a href="https://www.cloudcorner.gr/microsoft/azure/azure-start-point-your-first-web-app/">Azure Start Point | Your first Web App</a> appeared first on <a href="https://www.cloudcorner.gr">Apostolidis Cloud Corner</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h1 style="text-align: justify;">Azure Start Point | Your first Web App</h1>
<p style="text-align: justify;">In this post series we will go through some basic steps on how to start with Microsoft Azure. For start we will create a Web App.</p>
<p style="text-align: justify;">If you don&#8217;t have an Azure Subscription, you can easily create a free trial by just going to <a href="https://azure.microsoft.com/en-us/free/">https://azure.microsoft.com/en-us/free/</a></p>
<p style="text-align: justify;">Let&#8217;s create our first Web App. Go to the Azure Portal by navigating to <a href="https://portal.azure.com">https://portal.azure.com</a> and click &#8220;+ Create a resource&#8221;</p>
<p id="kdjqVBi" style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-1882 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2018/05/img_5b03ce4ac1565.png" alt="web app" width="440" height="229" srcset="https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b03ce4ac1565.png 440w, https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b03ce4ac1565-300x156.png 300w" sizes="auto, (max-width: 440px) 100vw, 440px" /></p>
<p style="text-align: justify;">At the search box write &#8220;Web App&#8221; and press enter</p>
<p id="czvSmxZ" style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-1884" src="https://www.e-apostolidis.gr/wp-content/uploads/2018/05/img_5b03cf5e0eec3.png" alt="web app" width="826" height="130" srcset="https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b03cf5e0eec3.png 806w, https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b03cf5e0eec3-300x47.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b03cf5e0eec3-768x121.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b03cf5e0eec3-600x95.png 600w" sizes="auto, (max-width: 826px) 100vw, 826px" /></p>
<p style="text-align: justify;">At the search results. click the &#8220;Web App&#8221; and at the next screen just press &#8220;Create&#8221;</p>
<p id="zEjXfDE" style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-1885 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2018/05/img_5b03cf900c262.png" alt="web app" width="849" height="274" srcset="https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b03cf900c262.png 849w, https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b03cf900c262-300x97.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b03cf900c262-768x248.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b03cf900c262-600x194.png 600w" sizes="auto, (max-width: 849px) 100vw, 849px" /></p>
<p style="text-align: justify;">The &#8220;Web App Create&#8221; wizard will open.</p>
<table style="border-collapse: collapse; width: 100%;" border="1">
<tbody>
<tr>
<td style="width: 41.8072%;"><img loading="lazy" decoding="async" class="alignnone wp-image-1887 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2018/05/img_5b03cfe7a443b.png" alt="web app" width="304" height="439" srcset="https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b03cfe7a443b.png 304w, https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b03cfe7a443b-208x300.png 208w" sizes="auto, (max-width: 304px) 100vw, 304px" /></td>
<td style="width: 58.1928%;">Enter a name for the App. This will be the Public name of your App. Azure by default provides the domain *.azurewebsites.net for free.</p>
<p>So in my example the prowebdev.azurewebsites.net will be the URL of my App</p>
<p>Select the Azure Subscription that will used to bill the Web App and a Resource Group. The Resource Group is used to organize the resources and provide role based access control among other.</p>
<p>OS: Select the Operating System platform that will host your Web App. This can be Windows, Linux or a Docker Container. For the test I will select Windows.</td>
</tr>
</tbody>
</table>
<p style="text-align: justify;">As you can see the wizard has selected an App Service Plan by default with a random name and location. The App Service Plan is actually the Web Server that will host out Web App. Click on the &#8220;App Service Plan/Location&#8221;</p>
<p style="text-align: justify;">Add a name for the Web Server, select the Location that is nearest to you (or your clients) and the Pricing Tier.</p>
<p id="stKUjPt" style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-1890 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2018/05/img_5b03d9ed65448.png" alt="web app" width="864" height="275" srcset="https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b03d9ed65448.png 864w, https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b03d9ed65448-300x95.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b03d9ed65448-768x244.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b03d9ed65448-600x191.png 600w" sizes="auto, (max-width: 864px) 100vw, 864px" />By pressing OK you will return to the Web App create wizard and press Create. Now you can monitor the creating process of the App form the &#8220;Notifications&#8221; option at the top right of the portal, it is the button that has a ringing bell image. First you will see the &#8220;Deployment in progress&#8230;&#8221; message and as soon as the App is ready you will see the &#8220;Deployment completed&#8221; message.</p>
<table style="border-collapse: collapse; width: 100%;" border="1">
<tbody>
<tr>
<td style="width: 50%;"><img loading="lazy" decoding="async" class="alignnone wp-image-1892" src="https://www.e-apostolidis.gr/wp-content/uploads/2018/05/img_5b03daafd0ea5.png" alt="web app" width="391" height="160" srcset="https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b03daafd0ea5.png 479w, https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b03daafd0ea5-300x123.png 300w" sizes="auto, (max-width: 391px) 100vw, 391px" /></td>
<td style="width: 50%;"><img loading="lazy" decoding="async" class="alignnone wp-image-1893" src="https://www.e-apostolidis.gr/wp-content/uploads/2018/05/img_5b03dafd6605a.png" alt="web app" width="391" height="199" srcset="https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b03dafd6605a.png 460w, https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b03dafd6605a-300x153.png 300w" sizes="auto, (max-width: 391px) 100vw, 391px" /></td>
</tr>
</tbody>
</table>
<p>Now if you go to the Resource group you will see two resources. The App Service and the App Service Plan. In high level, the App Service Plan is the web server and the App Service is the Web Application.</p>
<p id="qZibTIb"><img loading="lazy" decoding="async" class="alignnone wp-image-1895 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2018/05/img_5b05bb84116f0.png" alt="web app" width="415" height="126" srcset="https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b05bb84116f0.png 415w, https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b05bb84116f0-300x91.png 300w" sizes="auto, (max-width: 415px) 100vw, 415px" /></p>
<p>Now click the App Service and at its blade you can see your applications URL.</p>
<p id="CdmXVxV"><img loading="lazy" decoding="async" class="alignnone wp-image-1896 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2018/05/img_5b05bcbb72165.png" alt="web app" width="962" height="168" srcset="https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b05bcbb72165.png 962w, https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b05bcbb72165-300x52.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b05bcbb72165-768x134.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b05bcbb72165-600x105.png 600w" sizes="auto, (max-width: 962px) 100vw, 962px" /></p>
<p>Click the URL and you will see the Demo page</p>
<p id="DFDOidB"><img loading="lazy" decoding="async" class="alignnone wp-image-1897 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2018/05/img_5b05bcea62a55.png" alt="web app" width="1021" height="384" srcset="https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b05bcea62a55.png 1021w, https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b05bcea62a55-300x113.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b05bcea62a55-768x289.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2018/05/img_5b05bcea62a55-600x226.png 600w" sizes="auto, (max-width: 1021px) 100vw, 1021px" /></p>
<div class="saboxplugin-wrap" itemtype="http://schema.org/Person" itemscope itemprop="author">
<div class="saboxplugin-tab">
<div class="saboxplugin-gravatar"><img loading="lazy" decoding="async" src="https://www.e-apostolidis.gr/wp-content/uploads/2019/05/mvpsummit2019.jpg" width="100"  height="100" alt="Pantelis Apostolidis" itemprop="image"></div>
<div class="saboxplugin-authorname"><a href="https://www.cloudcorner.gr/author/admin/" class="vcard author" rel="author"><span class="fn">Pantelis Apostolidis</span></a></div>
<div class="saboxplugin-desc">
<div itemprop="description">
<p>Pantelis Apostolidis is a Sr. Specialist, Azure at Microsoft and a former Microsoft Azure MVP. For the last 20 years, Pantelis has been involved to major cloud projects in Greece and abroad, helping companies to adopt and deploy cloud technologies, driving business value. He is entitled to a lot of Microsoft Expert Certifications, demonstrating his proven experience in delivering high quality solutions. He is an author, blogger and he is acting as a spokesperson for conferences, workshops and webinars. He is also an active member of several communities as a moderator in azureheads.gr and autoexec.gr. Follow him on Twitter @papostolidis.</p>
</div>
</div>
<div class="saboxplugin-web "><a href="https://www.cloudcorner.gr" target="_self" >www.cloudcorner.gr</a></div>
<div class="clearfix"></div>
<div class="saboxplugin-socials "><a title="Facebook" target="_blank" href="https://www.facebook.com/pantelis.apostolidis" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-facebook" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 264 512"><path fill="currentColor" d="M76.7 512V283H0v-91h76.7v-71.7C76.7 42.4 124.3 0 193.8 0c33.3 0 61.9 2.5 70.2 3.6V85h-48.2c-37.8 0-45.1 18-45.1 44.3V192H256l-11.7 91h-73.6v229"></path></svg></span></a><a title="Linkedin" target="_blank" href="https://www.linkedin.com/in/papostolidis/" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-linkedin" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M100.3 480H7.4V180.9h92.9V480zM53.8 140.1C24.1 140.1 0 115.5 0 85.8 0 56.1 24.1 32 53.8 32c29.7 0 53.8 24.1 53.8 53.8 0 29.7-24.1 54.3-53.8 54.3zM448 480h-92.7V334.4c0-34.7-.7-79.2-48.3-79.2-48.3 0-55.7 37.7-55.7 76.7V480h-92.8V180.9h89.1v40.8h1.3c12.4-23.5 42.7-48.3 87.9-48.3 94 0 111.3 61.9 111.3 142.3V480z"></path></svg></span></a><a title="Instagram" target="_blank" href="https://www.instagram.com/proximagr" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-instagram" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z"></path></svg></span></a><a title="Rss" target="_blank" href="https://wwwcloudcorner.gr/feed/rdf/" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-rss" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M128.081 415.959c0 35.369-28.672 64.041-64.041 64.041S0 451.328 0 415.959s28.672-64.041 64.041-64.041 64.04 28.673 64.04 64.041zm175.66 47.25c-8.354-154.6-132.185-278.587-286.95-286.95C7.656 175.765 0 183.105 0 192.253v48.069c0 8.415 6.49 15.472 14.887 16.018 111.832 7.284 201.473 96.702 208.772 208.772.547 8.397 7.604 14.887 16.018 14.887h48.069c9.149.001 16.489-7.655 15.995-16.79zm144.249.288C439.596 229.677 251.465 40.445 16.503 32.01 7.473 31.686 0 38.981 0 48.016v48.068c0 8.625 6.835 15.645 15.453 15.999 191.179 7.839 344.627 161.316 352.465 352.465.353 8.618 7.373 15.453 15.999 15.453h48.068c9.034-.001 16.329-7.474 16.005-16.504z"></path></svg></span></a><a title="Twitter" target="_blank" href="https://twitter.com/papostolidis" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-twitter" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><path d="M26.37,26l-8.795-12.822l0.015,0.012L25.52,4h-2.65l-6.46,7.48L11.28,4H4.33l8.211,11.971L12.54,15.97L3.88,26h2.65 l7.182-8.322L19.42,26H26.37z M10.23,6l12.34,18h-2.1L8.12,6H10.23z" /></svg></span></a><a title="Github" target="_blank" href="https://github.com/proximagr" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-github" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><path fill="currentColor" d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"></path></svg></span></a><a title="User email" target="_self" href="mailto:&#112;&#114;ox&#105;&#109;&#097;g&#114;&#064;ho&#116;mail.co&#109;" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-user_email" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M502.3 190.8c3.9-3.1 9.7-.2 9.7 4.7V400c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V195.6c0-5 5.7-7.8 9.7-4.7 22.4 17.4 52.1 39.5 154.1 113.6 21.1 15.4 56.7 47.8 92.2 47.6 35.7.3 72-32.8 92.3-47.6 102-74.1 131.6-96.3 154-113.7zM256 320c23.2.4 56.6-29.2 73.4-41.4 132.7-96.3 142.8-104.7 173.4-128.7 5.8-4.5 9.2-11.5 9.2-18.9v-19c0-26.5-21.5-48-48-48H48C21.5 64 0 85.5 0 112v19c0 7.4 3.4 14.3 9.2 18.9 30.6 23.9 40.7 32.4 173.4 128.7 16.8 12.2 50.2 41.8 73.4 41.4z"></path></svg></span></a></div>
</div>
</div>
<p><a class="a2a_button_email" href="https://www.addtoany.com/add_to/email?linkurl=https%3A%2F%2Fwww.cloudcorner.gr%2Fmicrosoft%2Fazure%2Fazure-start-point-your-first-web-app%2F&amp;linkname=Azure%20Start%20Point%20%7C%20Your%20first%20Web%20App" title="Email" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_print" href="https://www.addtoany.com/add_to/print?linkurl=https%3A%2F%2Fwww.cloudcorner.gr%2Fmicrosoft%2Fazure%2Fazure-start-point-your-first-web-app%2F&amp;linkname=Azure%20Start%20Point%20%7C%20Your%20first%20Web%20App" title="Print" rel="nofollow noopener" target="_blank"></a><a class="a2a_dd addtoany_share_save addtoany_share" href="https://www.addtoany.com/share#url=https%3A%2F%2Fwww.cloudcorner.gr%2Fmicrosoft%2Fazure%2Fazure-start-point-your-first-web-app%2F&#038;title=Azure%20Start%20Point%20%7C%20Your%20first%20Web%20App" data-a2a-url="https://www.cloudcorner.gr/microsoft/azure/azure-start-point-your-first-web-app/" data-a2a-title="Azure Start Point | Your first Web App"><img src="https://static.addtoany.com/buttons/share_save_171_16.png" alt="Share"></a></p><p>The post <a href="https://www.cloudcorner.gr/microsoft/azure/azure-start-point-your-first-web-app/">Azure Start Point | Your first Web App</a> appeared first on <a href="https://www.cloudcorner.gr">Apostolidis Cloud Corner</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.cloudcorner.gr/microsoft/azure/azure-start-point-your-first-web-app/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Azure App Service, get data from on-premises databases securely</title>
		<link>https://www.cloudcorner.gr/microsoft/azure/azure-app-service-get-data-from-on-premises-databases-securely/</link>
					<comments>https://www.cloudcorner.gr/microsoft/azure/azure-app-service-get-data-from-on-premises-databases-securely/#comments</comments>
		
		<dc:creator><![CDATA[Pantelis Apostolidis]]></dc:creator>
		<pubDate>Tue, 13 Mar 2018 21:23:39 +0000</pubDate>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[app service]]></category>
		<category><![CDATA[azure]]></category>
		<category><![CDATA[azurerm]]></category>
		<category><![CDATA[hybrid connection]]></category>
		<category><![CDATA[web app]]></category>
		<guid isPermaLink="false">https://www.e-apostolidis.gr/?p=1817</guid>

					<description><![CDATA[<p>Azure App Service, get data from on-premises databases securely There are many scenarios where we want to have the Web</p>
<p>The post <a href="https://www.cloudcorner.gr/microsoft/azure/azure-app-service-get-data-from-on-premises-databases-securely/">Azure App Service, get data from on-premises databases securely</a> appeared first on <a href="https://www.cloudcorner.gr">Apostolidis Cloud Corner</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h1 style="text-align: justify;">Azure App Service, get data from on-premises databases securely</h1>
<p style="text-align: justify;">There are many scenarios where we want to have the Web Application on the Cloud but on the other hand, due to various limitations, the database stays on-premises. Azure has a service, called Azure Hybrid Connections, that allows the Web App to connect to on-premises databases, using internal IP address or the database server host name, without a complex VPN setup.</p>
<p>The Connection diagram</p>
<p><img loading="lazy" decoding="async" class="alignnone wp-image-1839 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2018/03/hybridconn-connectiondiagram.png" alt="hybrid connections" width="806" height="272" srcset="https://www.cloudcorner.gr/wp-content/uploads/2018/03/hybridconn-connectiondiagram.png 806w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/hybridconn-connectiondiagram-300x101.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/hybridconn-connectiondiagram-768x259.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/hybridconn-connectiondiagram-600x202.png 600w" sizes="auto, (max-width: 806px) 100vw, 806px" /></p>
<p style="text-align: justify;">I have tested the connection with Microsoft SQL, PostgreSQL, MySQL, mongodb and Oracle.  The databse requirements is to have a static port. So the first step in case of a Microsoft SQL instance is to assign a static port. In my test environment I have a Microsoft SQL 2016 and I assigned the default port 1433, using the Sql Server Configuration Manager / SQL Server Network Configuration / Protocols for INSTANCENAME (MSSQLSERVER)</p>
<p id="pXsKaMQ" style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-1819 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2018/03/img_5aa6ff237b5c6.png" alt="hybrid connections" width="913" height="499" srcset="https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa6ff237b5c6.png 913w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa6ff237b5c6-300x164.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa6ff237b5c6-768x420.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa6ff237b5c6-600x328.png 600w" sizes="auto, (max-width: 913px) 100vw, 913px" /></p>
<p style="text-align: justify;">All paid service plans supports hybrid connections. The limits are on how many hybrid connections can be used per plan, as the below table shows.</p>
<table style="width: 830px;">
<thead>
<tr>
<th style="width: 299px;">Pricing plan</th>
<th style="width: 523px;">Number of Hybrid Connections usable in the plan</th>
</tr>
</thead>
<tbody>
<tr>
<td style="width: 299px;">Basic</td>
<td style="width: 523px;">5</td>
</tr>
<tr>
<td style="width: 299px;">Standard</td>
<td style="width: 523px;">25</td>
</tr>
<tr>
<td style="width: 299px;">Premium</td>
<td style="width: 523px;">200</td>
</tr>
<tr>
<td style="width: 299px;">Isolated</td>
<td style="width: 523px;">200</td>
</tr>
</tbody>
</table>
<p style="text-align: justify;">To start creating the Hybrid Connections, go to the App Service / Networking / Hybrid Connections and press the &#8220;Configure your hybrid connection endpoints&#8221;</p>
<p id="BqjHLyQ" style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-1821 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2018/03/img_5aa6ffd20fd5d.png" alt="hybrid connections" width="739" height="824" srcset="https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa6ffd20fd5d.png 739w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa6ffd20fd5d-269x300.png 269w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa6ffd20fd5d-600x669.png 600w" sizes="auto, (max-width: 739px) 100vw, 739px" /></p>
<p style="text-align: justify;">At the Hybrid connections blade there are two steps, the first is to &#8220;Add hybrid connection&#8221; and the second is to &#8220;Download the connection manager&#8221;.</p>
<p id="dDBGreG" style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-1824 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2018/03/img_5aa70131c0565.png" alt="hybrid connections" width="969" height="591" srcset="https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa70131c0565.png 969w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa70131c0565-300x183.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa70131c0565-768x468.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa70131c0565-600x366.png 600w" sizes="auto, (max-width: 969px) 100vw, 969px" /></p>
<p style="text-align: justify;">First click the &#8220;Add hybrid connection&#8221; and then press &#8220;Create new hybrid connection&#8221;</p>
<p id="fiuAhHs" style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-1826 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2018/03/img_5aa7a2c511da8.png" alt="hybrid connections" width="622" height="297" srcset="https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa7a2c511da8.png 622w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa7a2c511da8-300x143.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa7a2c511da8-600x286.png 600w" sizes="auto, (max-width: 622px) 100vw, 622px" /></p>
<p style="text-align: justify;">The &#8220;Create new hybrid connection&#8221; blade will open. Add a Hybrid connection name, this must be at least 6 characters and it is the display name of the connection. <span style="font-size: 1.0625rem;">At the Endpoint host add the hostname of the database server and at the Endpoint port, the port of the database. At my case I added 1433, as this is the port I assign to my SQL instance before.</span></p>
<p style="text-align: justify;">Finally you will need to specify a name for a Servicebus namespace. As you realize, the hybrid connection uses Azure Servicebus for the communication, and press OK.</p>
<p id="LrXEohg" style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-1827 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2018/03/img_5aa7a33b06f77.png" alt="hybrid connections" width="316" height="420" srcset="https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa7a33b06f77.png 316w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa7a33b06f77-226x300.png 226w" sizes="auto, (max-width: 316px) 100vw, 316px" /></p>
<p style="text-align: justify;">Once the connection is created it will be shown at the portal as &#8220;Not connected&#8221;</p>
<p id="WrEXGqg" style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-1829 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2018/03/img_5aa7a5bdeb037.png" alt="hybrid connections" width="774" height="139" srcset="https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa7a5bdeb037.png 774w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa7a5bdeb037-300x54.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa7a5bdeb037-768x138.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa7a5bdeb037-600x108.png 600w" sizes="auto, (max-width: 774px) 100vw, 774px" /></p>
<p style="text-align: justify;">Now we need to download and install the hybrid connection manager by clicking the &#8220;Download connection manager&#8221;. For this test I will install the hybrid connection manager at the same server as the SQL database, but for a production environment it is recommended to install the hybrid connection manager to a different server that will have access to the database servers only to the required ports. For the best security install it to a DMZ server and open only the required ports to the database servers.</p>
<p style="text-align: justify;">Run the downloaded msi and just click Install.</p>
<p id="KlflRxB" style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-1830 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2018/03/img_5aa8371299074.png" alt="hybrid connections" width="488" height="384" srcset="https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa8371299074.png 488w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa8371299074-300x236.png 300w" sizes="auto, (max-width: 488px) 100vw, 488px" /></p>
<p style="text-align: justify;">Open the &#8220;Hybrid connection manager&#8221; UI and press &#8220;Add a new Hybrid Connection.</p>
<p id="jYIruxv" style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-1831 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2018/03/img_5aa8379f58529.png" alt="hybrid connections" width="831" height="519" srcset="https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa8379f58529.png 831w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa8379f58529-300x187.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa8379f58529-768x480.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa8379f58529-600x375.png 600w" sizes="auto, (max-width: 831px) 100vw, 831px" /></p>
<p style="text-align: justify;">Sign in to your Azure account</p>
<p id="IUEouKJ" style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-1832 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2018/03/img_5aa837f4d0eb1.png" alt="hybrid connections" width="573" height="482" srcset="https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa837f4d0eb1.png 573w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa837f4d0eb1-300x252.png 300w" sizes="auto, (max-width: 573px) 100vw, 573px" /></p>
<p style="text-align: justify;">Once logged in, choose your Subscription and the hybrid connection configured previously will appear. Select it and press Save.</p>
<p id="fgXYGFF" style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-1833 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2018/03/img_5aa838431ab4c.png" alt="hybrid connections" width="759" height="415" srcset="https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa838431ab4c.png 759w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa838431ab4c-300x164.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa838431ab4c-600x328.png 600w" sizes="auto, (max-width: 759px) 100vw, 759px" /></p>
<p style="text-align: justify;">Now at the connection manager status it will show &#8220;Connected&#8221;</p>
<p id="DUTZxLd" style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-1834 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2018/03/img_5aa83898e0f74.png" alt="hybrid connections" width="815" height="211" srcset="https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa83898e0f74.png 815w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa83898e0f74-300x78.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa83898e0f74-768x199.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa83898e0f74-600x155.png 600w" sizes="auto, (max-width: 815px) 100vw, 815px" /></p>
<p style="text-align: justify;">The same at the Azure Portal and your Hybrid connection is ready.</p>
<p id="COwOoqD" style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-1835 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2018/03/img_5aa8393ba0032.png" alt="hybrid connections" width="786" height="499" srcset="https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa8393ba0032.png 786w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa8393ba0032-300x190.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa8393ba0032-768x488.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa8393ba0032-600x381.png 600w" sizes="auto, (max-width: 786px) 100vw, 786px" /></p>
<p style="text-align: justify;">Test, test, test and proof of concept. Open the Console, form the Web App Blade, and tcpping the SQL server&#8217;s hostname at the port 1433</p>
<p id="fGldsBK" style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-1836 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2018/03/img_5aa83e8b94c55.png" alt="hybrid connections" width="495" height="155" srcset="https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa83e8b94c55.png 495w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa83e8b94c55-300x94.png 300w" sizes="auto, (max-width: 495px) 100vw, 495px" /></p>
<p style="text-align: justify;">and also sqlcmd</p>
<p id="QkUalzG" style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-1838 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2018/03/img_5aa83fdd583e6.png" alt="hybrid connections" width="756" height="315" srcset="https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa83fdd583e6.png 756w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa83fdd583e6-300x125.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2018/03/img_5aa83fdd583e6-600x250.png 600w" sizes="auto, (max-width: 756px) 100vw, 756px" /></p>
<p style="text-align: justify;">
<div class="saboxplugin-wrap" itemtype="http://schema.org/Person" itemscope itemprop="author">
<div class="saboxplugin-tab">
<div class="saboxplugin-gravatar"><img loading="lazy" decoding="async" src="https://www.e-apostolidis.gr/wp-content/uploads/2019/05/mvpsummit2019.jpg" width="100"  height="100" alt="Pantelis Apostolidis" itemprop="image"></div>
<div class="saboxplugin-authorname"><a href="https://www.cloudcorner.gr/author/admin/" class="vcard author" rel="author"><span class="fn">Pantelis Apostolidis</span></a></div>
<div class="saboxplugin-desc">
<div itemprop="description">
<p>Pantelis Apostolidis is a Sr. Specialist, Azure at Microsoft and a former Microsoft Azure MVP. For the last 20 years, Pantelis has been involved to major cloud projects in Greece and abroad, helping companies to adopt and deploy cloud technologies, driving business value. He is entitled to a lot of Microsoft Expert Certifications, demonstrating his proven experience in delivering high quality solutions. He is an author, blogger and he is acting as a spokesperson for conferences, workshops and webinars. He is also an active member of several communities as a moderator in azureheads.gr and autoexec.gr. Follow him on Twitter @papostolidis.</p>
</div>
</div>
<div class="saboxplugin-web "><a href="https://www.cloudcorner.gr" target="_self" >www.cloudcorner.gr</a></div>
<div class="clearfix"></div>
<div class="saboxplugin-socials "><a title="Facebook" target="_blank" href="https://www.facebook.com/pantelis.apostolidis" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-facebook" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 264 512"><path fill="currentColor" d="M76.7 512V283H0v-91h76.7v-71.7C76.7 42.4 124.3 0 193.8 0c33.3 0 61.9 2.5 70.2 3.6V85h-48.2c-37.8 0-45.1 18-45.1 44.3V192H256l-11.7 91h-73.6v229"></path></svg></span></a><a title="Linkedin" target="_blank" href="https://www.linkedin.com/in/papostolidis/" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-linkedin" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M100.3 480H7.4V180.9h92.9V480zM53.8 140.1C24.1 140.1 0 115.5 0 85.8 0 56.1 24.1 32 53.8 32c29.7 0 53.8 24.1 53.8 53.8 0 29.7-24.1 54.3-53.8 54.3zM448 480h-92.7V334.4c0-34.7-.7-79.2-48.3-79.2-48.3 0-55.7 37.7-55.7 76.7V480h-92.8V180.9h89.1v40.8h1.3c12.4-23.5 42.7-48.3 87.9-48.3 94 0 111.3 61.9 111.3 142.3V480z"></path></svg></span></a><a title="Instagram" target="_blank" href="https://www.instagram.com/proximagr" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-instagram" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z"></path></svg></span></a><a title="Rss" target="_blank" href="https://wwwcloudcorner.gr/feed/rdf/" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-rss" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M128.081 415.959c0 35.369-28.672 64.041-64.041 64.041S0 451.328 0 415.959s28.672-64.041 64.041-64.041 64.04 28.673 64.04 64.041zm175.66 47.25c-8.354-154.6-132.185-278.587-286.95-286.95C7.656 175.765 0 183.105 0 192.253v48.069c0 8.415 6.49 15.472 14.887 16.018 111.832 7.284 201.473 96.702 208.772 208.772.547 8.397 7.604 14.887 16.018 14.887h48.069c9.149.001 16.489-7.655 15.995-16.79zm144.249.288C439.596 229.677 251.465 40.445 16.503 32.01 7.473 31.686 0 38.981 0 48.016v48.068c0 8.625 6.835 15.645 15.453 15.999 191.179 7.839 344.627 161.316 352.465 352.465.353 8.618 7.373 15.453 15.999 15.453h48.068c9.034-.001 16.329-7.474 16.005-16.504z"></path></svg></span></a><a title="Twitter" target="_blank" href="https://twitter.com/papostolidis" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-twitter" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><path d="M26.37,26l-8.795-12.822l0.015,0.012L25.52,4h-2.65l-6.46,7.48L11.28,4H4.33l8.211,11.971L12.54,15.97L3.88,26h2.65 l7.182-8.322L19.42,26H26.37z M10.23,6l12.34,18h-2.1L8.12,6H10.23z" /></svg></span></a><a title="Github" target="_blank" href="https://github.com/proximagr" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-github" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><path fill="currentColor" d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"></path></svg></span></a><a title="User email" target="_self" href="mailto:&#112;&#114;o&#120;&#105;m&#097;&#103;r&#064;&#104;o&#116;&#109;&#097;il&#046;&#099;&#111;m" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-user_email" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M502.3 190.8c3.9-3.1 9.7-.2 9.7 4.7V400c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V195.6c0-5 5.7-7.8 9.7-4.7 22.4 17.4 52.1 39.5 154.1 113.6 21.1 15.4 56.7 47.8 92.2 47.6 35.7.3 72-32.8 92.3-47.6 102-74.1 131.6-96.3 154-113.7zM256 320c23.2.4 56.6-29.2 73.4-41.4 132.7-96.3 142.8-104.7 173.4-128.7 5.8-4.5 9.2-11.5 9.2-18.9v-19c0-26.5-21.5-48-48-48H48C21.5 64 0 85.5 0 112v19c0 7.4 3.4 14.3 9.2 18.9 30.6 23.9 40.7 32.4 173.4 128.7 16.8 12.2 50.2 41.8 73.4 41.4z"></path></svg></span></a></div>
</div>
</div>
<p><a class="a2a_button_email" href="https://www.addtoany.com/add_to/email?linkurl=https%3A%2F%2Fwww.cloudcorner.gr%2Fmicrosoft%2Fazure%2Fazure-app-service-get-data-from-on-premises-databases-securely%2F&amp;linkname=Azure%20App%20Service%2C%20get%20data%20from%20on-premises%20databases%20securely" title="Email" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_print" href="https://www.addtoany.com/add_to/print?linkurl=https%3A%2F%2Fwww.cloudcorner.gr%2Fmicrosoft%2Fazure%2Fazure-app-service-get-data-from-on-premises-databases-securely%2F&amp;linkname=Azure%20App%20Service%2C%20get%20data%20from%20on-premises%20databases%20securely" title="Print" rel="nofollow noopener" target="_blank"></a><a class="a2a_dd addtoany_share_save addtoany_share" href="https://www.addtoany.com/share#url=https%3A%2F%2Fwww.cloudcorner.gr%2Fmicrosoft%2Fazure%2Fazure-app-service-get-data-from-on-premises-databases-securely%2F&#038;title=Azure%20App%20Service%2C%20get%20data%20from%20on-premises%20databases%20securely" data-a2a-url="https://www.cloudcorner.gr/microsoft/azure/azure-app-service-get-data-from-on-premises-databases-securely/" data-a2a-title="Azure App Service, get data from on-premises databases securely"><img src="https://static.addtoany.com/buttons/share_save_171_16.png" alt="Share"></a></p><p>The post <a href="https://www.cloudcorner.gr/microsoft/azure/azure-app-service-get-data-from-on-premises-databases-securely/">Azure App Service, get data from on-premises databases securely</a> appeared first on <a href="https://www.cloudcorner.gr">Apostolidis Cloud Corner</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.cloudcorner.gr/microsoft/azure/azure-app-service-get-data-from-on-premises-databases-securely/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
		<item>
		<title>Protect your Web App using Azure Application Gateway Web Application Firewall</title>
		<link>https://www.cloudcorner.gr/microsoft/azure/protect-your-web-application-with-azure-application-gateway-waf/</link>
					<comments>https://www.cloudcorner.gr/microsoft/azure/protect-your-web-application-with-azure-application-gateway-waf/#respond</comments>
		
		<dc:creator><![CDATA[Pantelis Apostolidis]]></dc:creator>
		<pubDate>Sun, 15 Oct 2017 16:59:10 +0000</pubDate>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[application gateway]]></category>
		<category><![CDATA[azure]]></category>
		<category><![CDATA[azure rm]]></category>
		<category><![CDATA[iis]]></category>
		<category><![CDATA[waf]]></category>
		<category><![CDATA[web app]]></category>
		<category><![CDATA[web application]]></category>
		<category><![CDATA[web application firewall]]></category>
		<guid isPermaLink="false">https://www.e-apostolidis.gr/?p=1550</guid>

					<description><![CDATA[<p>Protect your Web App using Azure Application Gateway Web Application Firewall Web Application Firewall was always a big investment for</p>
<p>The post <a href="https://www.cloudcorner.gr/microsoft/azure/protect-your-web-application-with-azure-application-gateway-waf/">Protect your Web App using Azure Application Gateway Web Application Firewall</a> appeared first on <a href="https://www.cloudcorner.gr">Apostolidis Cloud Corner</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2 style="text-align: justify;">Protect your Web App using Azure Application Gateway Web Application Firewall</h2>
<p style="text-align: justify;">Web Application Firewall was always a big investment for a small or growing company as most of the top branded companies are charging a lot of money  A Web Application Firewall protects your application from common web vulnerabilities and exploits like SQL Injection or Cross site scripting. Azure provides enterprise grade Web Application Firewall through the Application Gateway. It comes in two pricing models, Medium and Large. More about sizes and instances you can find <a href="https://docs.microsoft.com/en-us/azure/application-gateway/application-gateway-introduction#gateway-sizes-and-instances">here</a>, and more about pricing <a href="https://azure.microsoft.com/en-us/pricing/details/application-gateway/ ">here</a></p>
<p style="text-align: justify;">We can add the Application Gateway Web Application Firewall to protect our Azure Web App (PaaS) and our Web Application inside a VMs web server (IaaS). At this post we will see how to protect them both.</p>
<p><img loading="lazy" decoding="async" class="alignnone size-full wp-image-1622 aligncenter" src="https://www.e-apostolidis.gr/wp-content/uploads/2017/10/appgatewaywafvm.jpg" alt="web application firewall" width="703" height="474" srcset="https://www.cloudcorner.gr/wp-content/uploads/2017/10/appgatewaywafvm.jpg 703w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/appgatewaywafvm-300x202.jpg 300w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/appgatewaywafvm-600x405.jpg 600w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/appgatewaywafvm-120x80.jpg 120w" sizes="auto, (max-width: 703px) 100vw, 703px" /></p>
<p style="text-align: justify;">One difference in order to fully protect the Azure Web App (PaaS) is to integrate the App Service to a Virtual Network (VNET). In order to integrate an App Service to a Virtual Network it requires a Standard, Premium, or PremiumV2 pricing plan and requires the Virtual Network to have a Virtual Network Gateway that is configured with Point to Site VPN.</p>
<h2>Virtual Network</h2>
<p style="text-align: justify;">First things first, create a VNET. The VNET must have at least two subnets. One subnet to deploy the Virtual Machine that we will use to publish an IIS Application and one dedicated for the Application Gateway WAF.</p>
<p>Once the VNET is created enable the Point-2-Site VPN. More details can be found here: <a href="https://www.e-apostolidis.gr/microsoft/azure/azure-start-point-point-to-site-vpn/">https://www.e-apostolidis.gr/microsoft/azure/azure-start-point-point-to-site-vpn/ </a></p>
<p style="text-align: justify;"><img loading="lazy" decoding="async" width="1127" height="389" class="alignnone size-full wp-image-2426 " style="font-size: 1.0625rem;" src="https://www.e-apostolidis.gr/wp-content/uploads/2019/02/img_5c581d7dd4e40.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c581d7dd4e40.png 1127w, https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c581d7dd4e40-300x104.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c581d7dd4e40-768x265.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c581d7dd4e40-1024x353.png 1024w, https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c581d7dd4e40-600x207.png 600w" sizes="auto, (max-width: 1127px) 100vw, 1127px" /></p>
<h2>Web App</h2>
<p style="text-align: justify;">Create a Web App from Azure Portal. For more details check here: <a href="https://www.e-apostolidis.gr/microsoft/azure/azure-start-point-your-first-web-app/">https://www.e-apostolidis.gr/microsoft/azure/azure-start-point-your-first-web-app/</a></p>
<p id="ldmemwp"><img loading="lazy" decoding="async" class="alignnone wp-image-2425 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/02/img_5c581cc9150ca.png" alt="" width="335" height="463" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c581cc9150ca.png 406w, https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c581cc9150ca-217x300.png 217w" sizes="auto, (max-width: 335px) 100vw, 335px" /></p>
<h2>VNet Integration</h2>
<p id="qMNQKto" style="text-align: justify;">Once the Web App is ready, go to Networking and select &#8220;Click here to configure&#8221;</p>
<p id="hgMdofy"><img loading="lazy" decoding="async" width="676" height="210" class="alignnone size-full wp-image-2427 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/02/img_5c582144d0d9f.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c582144d0d9f.png 676w, https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c582144d0d9f-300x93.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c582144d0d9f-600x186.png 600w" sizes="auto, (max-width: 676px) 100vw, 676px" /></p>
<p>Add VNET, select the VNET and press save</p>
<p id="rTnBMIo"><img loading="lazy" decoding="async" width="597" height="183" class="alignnone size-full wp-image-2428 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/02/img_5c582a9ed9d65.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c582a9ed9d65.png 597w, https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c582a9ed9d65-300x92.png 300w" sizes="auto, (max-width: 597px) 100vw, 597px" /></p>
<p>Then go back to the Networking blade of the App Service and go to Firewall in order to disable public access and allow only access from the VNET. To do this click the &#8220;Configure Access Restrictions&#8221;</p>
<p id="ZZkfuhS"><img loading="lazy" decoding="async" width="641" height="289" class="alignnone size-full wp-image-2429 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/02/img_5c582b7aeacba.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c582b7aeacba.png 641w, https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c582b7aeacba-300x135.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c582b7aeacba-600x271.png 600w" sizes="auto, (max-width: 641px) 100vw, 641px" /></p>
<p>create an allow IP Restriction and add the WAF&#8217;s IP. Once you create an Allow rule, all other access to the app service is restricted automatically. If you try to browse the public URL of the App Service it will return &#8220;Error 403 &#8211; This web app is stopped.&#8221;</p>
<p id="QvHXjiC"><img loading="lazy" decoding="async" width="395" height="534" class="alignnone size-full wp-image-2436 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/02/img_5c583443ab102.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c583443ab102.png 395w, https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c583443ab102-222x300.png 222w" sizes="auto, (max-width: 395px) 100vw, 395px" /></p>
<h2>Web Application Firewall</h2>
<p style="text-align: justify;">Lets create the Secure public entry point for our Web App. Create an application gateway, select WAF Tier, select the required SKU, add it to the WAF subnet we created before, select Public IP configuration and WAF enabled.</p>
<p id="TvmaQqE" style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-1603 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2017/10/img_59e25f1b11d95.png" alt="web application firewall" width="646" height="527" srcset="https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e25f1b11d95.png 646w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e25f1b11d95-300x245.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e25f1b11d95-600x489.png 600w" sizes="auto, (max-width: 646px) 100vw, 646px" /></p>
<p id="jnORKHN" style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-1591 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2017/10/img_59e2359888b97.png" alt="web application firewall" width="617" height="697" srcset="https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e2359888b97.png 617w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e2359888b97-266x300.png 266w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e2359888b97-600x678.png 600w" sizes="auto, (max-width: 617px) 100vw, 617px" /></p>
<p style="text-align: justify;">When the Application gateway is ready we need to do some configuration. First at the Backend pools, open the default created backend pool, select &#8220;App Service&#8221; and browse to the required web app.</p>
<p id="XTvdaeX"><img loading="lazy" decoding="async" width="581" height="393" class="alignnone size-full wp-image-2431 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/02/img_5c582df528aad.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c582df528aad.png 581w, https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c582df528aad-300x203.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c582df528aad-120x80.png 120w" sizes="auto, (max-width: 581px) 100vw, 581px" /></p>
<p style="text-align: justify;">Then add a health probe. For host add the FQDN of the Web App.</p>
<p id="TAdrvsH"><img loading="lazy" decoding="async" width="575" height="558" class="alignnone size-full wp-image-2432 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/02/img_5c582e65bf612.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c582e65bf612.png 575w, https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c582e65bf612-300x291.png 300w" sizes="auto, (max-width: 575px) 100vw, 575px" /></p>
<p>at the HTTP settings check the &#8220;Use for App service&#8221;</p>
<p id="KxKVHVi"><img loading="lazy" decoding="async" width="580" height="608" class="alignnone size-full wp-image-2433 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/02/img_5c582e9bbdd33.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c582e9bbdd33.png 580w, https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c582e9bbdd33-286x300.png 286w" sizes="auto, (max-width: 580px) 100vw, 580px" /></p>
<p>Add a rule to bind the Listener, Backendpool and HTTP settings</p>
<p id="ZIBQoUI"><img loading="lazy" decoding="async" width="578" height="387" class="alignnone size-full wp-image-2434 " src="https://www.e-apostolidis.gr/wp-content/uploads/2019/02/img_5c582f4435224.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c582f4435224.png 578w, https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c582f4435224-300x201.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2019/02/img_5c582f4435224-120x80.png 120w" sizes="auto, (max-width: 578px) 100vw, 578px" /></p>
<p>And that&#8217;s all. Now we can try our Web App from the Internet. In order to do so we need to browse to the Web App&#8217;s URL, that is now published by the Application Gateway, from the Internet. So, we need to create a Public DNS record to point the FQDN to the Application Gateway&#8217;s FQDN. In this case we need to crate a CNAME papwaf3app.funniest.gr to point to the 8b0510c1-47e9-4b94-a0ff-af92e4455840.cloudapp.net. In order to test the app right now we can just add a host file to our computer pointing to the Public IP Address of the application gateway and we can access the Web App behind the WAF.</p>
<p id="OYjdFLD"><img loading="lazy" decoding="async" class="alignnone wp-image-1604 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2017/10/img_59e2615d9fd0c.png" alt="web application firewall" width="1173" height="258" srcset="https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e2615d9fd0c.png 1173w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e2615d9fd0c-300x66.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e2615d9fd0c-768x169.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e2615d9fd0c-1024x225.png 1024w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e2615d9fd0c-600x132.png 600w" sizes="auto, (max-width: 1173px) 100vw, 1173px" /></p>
<p id="ZMBzrJA" style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-1595 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2017/10/img_59e23fc549914.png" alt="waf" width="1333" height="727" srcset="https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e23fc549914.png 1333w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e23fc549914-300x164.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e23fc549914-768x419.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e23fc549914-1024x558.png 1024w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e23fc549914-600x327.png 600w" sizes="auto, (max-width: 1333px) 100vw, 1333px" /></p>
<h2>Logging</h2>
<p>In order to be able to see the Application Gateway and Web Application Firewall logs we need to turn on diagnostics. The easiest way to see the logs is by sending them to Log Analytics (OMS).</p>
<p id="RjtcBEu" style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-1596 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2017/10/img_59e240034d99e.png" alt="waf" width="626" height="298" srcset="https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e240034d99e.png 626w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e240034d99e-300x143.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e240034d99e-600x286.png 600w" sizes="auto, (max-width: 626px) 100vw, 626px" /></p>
<p id="YxDLlaw" style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-1597 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2017/10/img_59e2404e90c37.png" alt="waf" width="639" height="842" srcset="https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e2404e90c37.png 639w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e2404e90c37-228x300.png 228w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e2404e90c37-600x791.png 600w" sizes="auto, (max-width: 639px) 100vw, 639px" /></p>
<p id="UILEmSI" style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-1598 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2017/10/img_59e251cbdc0f8.png" alt="waf" width="1421" height="625" srcset="https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e251cbdc0f8.png 1421w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e251cbdc0f8-300x132.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e251cbdc0f8-768x338.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e251cbdc0f8-1024x450.png 1024w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e251cbdc0f8-600x264.png 600w" sizes="auto, (max-width: 1421px) 100vw, 1421px" /></p>
<p>With the Firewall at &#8220;Detection&#8221; mode, if we try an SQL Injection (?id=10||UTL_INADDR.GET_HOST_NAME( (SELECT user FROM DUAL) )&#8211;), the Web App still servers the landing page.</p>
<p><img loading="lazy" decoding="async" class="alignnone wp-image-1600 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2017/10/img_59e256703b895.png" alt="waf" width="847" height="314" srcset="https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e256703b895.png 847w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e256703b895-300x111.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e256703b895-768x285.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e256703b895-600x222.png 600w" sizes="auto, (max-width: 847px) 100vw, 847px" /></p>
<p style="text-align: justify;">By switching the Firewall to &#8220;Prevention&#8221; mode, the same SQL injection attach stops by the WAF before accessing our Web App.</p>
<p id="GeNIuFp" style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone wp-image-1599 size-full" src="https://www.e-apostolidis.gr/wp-content/uploads/2017/10/img_59e2565c042a8.png" alt="waf" width="837" height="240" srcset="https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e2565c042a8.png 837w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e2565c042a8-300x86.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e2565c042a8-768x220.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e2565c042a8-600x172.png 600w" sizes="auto, (max-width: 837px) 100vw, 837px" /></p>
<h2>Protect an IaaS Web Application</h2>
<p>To add a Web Application that runs inside a VM behind the Application Gateway Web Application Firewall, first add the VM as a Back End Pool. Create a new Backend Pool and select &#8220;Virtual Machine&#8221;. Select the Virtual Machine that runs the Web Application.</p>
<p id="wJFYiWW"><img loading="lazy" decoding="async" width="589" height="344" class="alignnone size-full wp-image-1613 " src="https://www.e-apostolidis.gr/wp-content/uploads/2017/10/img_59e38491d257e.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e38491d257e.png 589w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e38491d257e-300x175.png 300w" sizes="auto, (max-width: 589px) 100vw, 589px" /></p>
<p>Then create a new probe adding the URL of the Web Application<img loading="lazy" decoding="async" width="582" height="602" class="alignnone size-full wp-image-1614 " src="https://www.e-apostolidis.gr/wp-content/uploads/2017/10/img_59e384f93f20c.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e384f93f20c.png 582w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e384f93f20c-290x300.png 290w" sizes="auto, (max-width: 582px) 100vw, 582px" /></p>
<p>next add HTTP settings and add custom probe the new created probe &#8220;vmsite&#8221;</p>
<p id="YnVbWZN"><img loading="lazy" decoding="async" width="643" height="487" class="alignnone size-full wp-image-1616 " src="https://www.e-apostolidis.gr/wp-content/uploads/2017/10/img_59e38d35ddce3.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e38d35ddce3.png 643w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e38d35ddce3-300x227.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e38d35ddce3-600x454.png 600w" sizes="auto, (max-width: 643px) 100vw, 643px" /></p>
<p>Next step is to create two multi-site listeners, one for each host name</p>
<p id="WwoaGmQ"><img loading="lazy" decoding="async" width="1293" height="250" class="alignnone size-full wp-image-1617 " src="https://www.e-apostolidis.gr/wp-content/uploads/2017/10/img_59e38f3f06837.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e38f3f06837.png 1293w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e38f3f06837-300x58.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e38f3f06837-768x148.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e38f3f06837-1024x198.png 1024w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e38f3f06837-600x116.png 600w" sizes="auto, (max-width: 1293px) 100vw, 1293px" /></p>
<p>After the listener, add a Basic rule using the Listener, Backend Pool and HTTP settings we created for the VM Web Application,</p>
<p id="SFMOmzk"><img loading="lazy" decoding="async" width="651" height="310" class="alignnone size-full wp-image-1618 " src="https://www.e-apostolidis.gr/wp-content/uploads/2017/10/img_59e38f77d13c0.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e38f77d13c0.png 651w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e38f77d13c0-300x143.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e38f77d13c0-600x286.png 600w" sizes="auto, (max-width: 651px) 100vw, 651px" /></p>
<p>Finally one extra step is to change the default rule1 to listen to the WeB App listener</p>
<p id="hpMFJMs"><img loading="lazy" decoding="async" width="656" height="388" class="alignnone size-full wp-image-1619 " src="https://www.e-apostolidis.gr/wp-content/uploads/2017/10/img_59e3913eaf3dd.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e3913eaf3dd.png 656w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e3913eaf3dd-300x177.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e3913eaf3dd-600x355.png 600w" sizes="auto, (max-width: 656px) 100vw, 656px" /></p>
<p>Finally the Application Gateway Web Application Firewall provides secure access to both the Web App (PaaS) and the VM Web Application (IaaS)</p>
<p id="iPPNmYj"><img loading="lazy" decoding="async" width="1027" height="739" class="alignnone size-full wp-image-1620 " src="https://www.e-apostolidis.gr/wp-content/uploads/2017/10/img_59e392843b503.png" alt="" srcset="https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e392843b503.png 1027w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e392843b503-300x216.png 300w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e392843b503-768x553.png 768w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e392843b503-1024x737.png 1024w, https://www.cloudcorner.gr/wp-content/uploads/2017/10/img_59e392843b503-600x432.png 600w" sizes="auto, (max-width: 1027px) 100vw, 1027px" /></p>
<div class="saboxplugin-wrap" itemtype="http://schema.org/Person" itemscope itemprop="author">
<div class="saboxplugin-tab">
<div class="saboxplugin-gravatar"><img loading="lazy" decoding="async" src="https://www.e-apostolidis.gr/wp-content/uploads/2019/05/mvpsummit2019.jpg" width="100"  height="100" alt="Pantelis Apostolidis" itemprop="image"></div>
<div class="saboxplugin-authorname"><a href="https://www.cloudcorner.gr/author/admin/" class="vcard author" rel="author"><span class="fn">Pantelis Apostolidis</span></a></div>
<div class="saboxplugin-desc">
<div itemprop="description">
<p>Pantelis Apostolidis is a Sr. Specialist, Azure at Microsoft and a former Microsoft Azure MVP. For the last 20 years, Pantelis has been involved to major cloud projects in Greece and abroad, helping companies to adopt and deploy cloud technologies, driving business value. He is entitled to a lot of Microsoft Expert Certifications, demonstrating his proven experience in delivering high quality solutions. He is an author, blogger and he is acting as a spokesperson for conferences, workshops and webinars. He is also an active member of several communities as a moderator in azureheads.gr and autoexec.gr. Follow him on Twitter @papostolidis.</p>
</div>
</div>
<div class="saboxplugin-web "><a href="https://www.cloudcorner.gr" target="_self" >www.cloudcorner.gr</a></div>
<div class="clearfix"></div>
<div class="saboxplugin-socials "><a title="Facebook" target="_blank" href="https://www.facebook.com/pantelis.apostolidis" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-facebook" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 264 512"><path fill="currentColor" d="M76.7 512V283H0v-91h76.7v-71.7C76.7 42.4 124.3 0 193.8 0c33.3 0 61.9 2.5 70.2 3.6V85h-48.2c-37.8 0-45.1 18-45.1 44.3V192H256l-11.7 91h-73.6v229"></path></svg></span></a><a title="Linkedin" target="_blank" href="https://www.linkedin.com/in/papostolidis/" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-linkedin" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M100.3 480H7.4V180.9h92.9V480zM53.8 140.1C24.1 140.1 0 115.5 0 85.8 0 56.1 24.1 32 53.8 32c29.7 0 53.8 24.1 53.8 53.8 0 29.7-24.1 54.3-53.8 54.3zM448 480h-92.7V334.4c0-34.7-.7-79.2-48.3-79.2-48.3 0-55.7 37.7-55.7 76.7V480h-92.8V180.9h89.1v40.8h1.3c12.4-23.5 42.7-48.3 87.9-48.3 94 0 111.3 61.9 111.3 142.3V480z"></path></svg></span></a><a title="Instagram" target="_blank" href="https://www.instagram.com/proximagr" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-instagram" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z"></path></svg></span></a><a title="Rss" target="_blank" href="https://wwwcloudcorner.gr/feed/rdf/" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-rss" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M128.081 415.959c0 35.369-28.672 64.041-64.041 64.041S0 451.328 0 415.959s28.672-64.041 64.041-64.041 64.04 28.673 64.04 64.041zm175.66 47.25c-8.354-154.6-132.185-278.587-286.95-286.95C7.656 175.765 0 183.105 0 192.253v48.069c0 8.415 6.49 15.472 14.887 16.018 111.832 7.284 201.473 96.702 208.772 208.772.547 8.397 7.604 14.887 16.018 14.887h48.069c9.149.001 16.489-7.655 15.995-16.79zm144.249.288C439.596 229.677 251.465 40.445 16.503 32.01 7.473 31.686 0 38.981 0 48.016v48.068c0 8.625 6.835 15.645 15.453 15.999 191.179 7.839 344.627 161.316 352.465 352.465.353 8.618 7.373 15.453 15.999 15.453h48.068c9.034-.001 16.329-7.474 16.005-16.504z"></path></svg></span></a><a title="Twitter" target="_blank" href="https://twitter.com/papostolidis" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-twitter" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><path d="M26.37,26l-8.795-12.822l0.015,0.012L25.52,4h-2.65l-6.46,7.48L11.28,4H4.33l8.211,11.971L12.54,15.97L3.88,26h2.65 l7.182-8.322L19.42,26H26.37z M10.23,6l12.34,18h-2.1L8.12,6H10.23z" /></svg></span></a><a title="Github" target="_blank" href="https://github.com/proximagr" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-github" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><path fill="currentColor" d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"></path></svg></span></a><a title="User email" target="_self" href="mailto:&#112;r&#111;&#120;ima&#103;&#114;&#064;h&#111;&#116;mail&#046;&#099;&#111;m" rel="nofollow noopener" class="saboxplugin-icon-grey"><svg aria-hidden="true" class="sab-user_email" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M502.3 190.8c3.9-3.1 9.7-.2 9.7 4.7V400c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V195.6c0-5 5.7-7.8 9.7-4.7 22.4 17.4 52.1 39.5 154.1 113.6 21.1 15.4 56.7 47.8 92.2 47.6 35.7.3 72-32.8 92.3-47.6 102-74.1 131.6-96.3 154-113.7zM256 320c23.2.4 56.6-29.2 73.4-41.4 132.7-96.3 142.8-104.7 173.4-128.7 5.8-4.5 9.2-11.5 9.2-18.9v-19c0-26.5-21.5-48-48-48H48C21.5 64 0 85.5 0 112v19c0 7.4 3.4 14.3 9.2 18.9 30.6 23.9 40.7 32.4 173.4 128.7 16.8 12.2 50.2 41.8 73.4 41.4z"></path></svg></span></a></div>
</div>
</div>
<p><a class="a2a_button_email" href="https://www.addtoany.com/add_to/email?linkurl=https%3A%2F%2Fwww.cloudcorner.gr%2Fmicrosoft%2Fazure%2Fprotect-your-web-application-with-azure-application-gateway-waf%2F&amp;linkname=Protect%20your%20Web%20App%20using%20Azure%20Application%20Gateway%20Web%20Application%20Firewall" title="Email" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_print" href="https://www.addtoany.com/add_to/print?linkurl=https%3A%2F%2Fwww.cloudcorner.gr%2Fmicrosoft%2Fazure%2Fprotect-your-web-application-with-azure-application-gateway-waf%2F&amp;linkname=Protect%20your%20Web%20App%20using%20Azure%20Application%20Gateway%20Web%20Application%20Firewall" title="Print" rel="nofollow noopener" target="_blank"></a><a class="a2a_dd addtoany_share_save addtoany_share" href="https://www.addtoany.com/share#url=https%3A%2F%2Fwww.cloudcorner.gr%2Fmicrosoft%2Fazure%2Fprotect-your-web-application-with-azure-application-gateway-waf%2F&#038;title=Protect%20your%20Web%20App%20using%20Azure%20Application%20Gateway%20Web%20Application%20Firewall" data-a2a-url="https://www.cloudcorner.gr/microsoft/azure/protect-your-web-application-with-azure-application-gateway-waf/" data-a2a-title="Protect your Web App using Azure Application Gateway Web Application Firewall"><img src="https://static.addtoany.com/buttons/share_save_171_16.png" alt="Share"></a></p><p>The post <a href="https://www.cloudcorner.gr/microsoft/azure/protect-your-web-application-with-azure-application-gateway-waf/">Protect your Web App using Azure Application Gateway Web Application Firewall</a> appeared first on <a href="https://www.cloudcorner.gr">Apostolidis Cloud Corner</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.cloudcorner.gr/microsoft/azure/protect-your-web-application-with-azure-application-gateway-waf/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
