Security Best Practices for Azure App Service Web Apps, Part 4

Microsoft’s Azure App Service is a fully managed Platform as a Service for developers that provides features and frameworks to quickly and easily build apps for any platform and any device. In spite of its ease of use, developers still need to keep security in mind because Azure will not take care of every aspect of security. In our first post on this topic, we learned how to configure custom domain names and certificates for web applications developed using Microsoft’s Azure App Service. In our second post, we learned how to enforce HTTPS for web applications developed using Azure App Service. In our third post, we examined application settings in Azure that can increase the security and availability of a web application.

In today’s post, we will learn the importance of logging and traffic monitoring for the security of an application and how to add them with the Azure App Service.

 

Logging

Logging is a very important aspect of security and should cover multiple places including network devices, operating systems, web servers, mail servers, database servers, and applications. Logging is used to:

  • Identify security incidents.
  • Monitor compliance such as PCI.
  • Identify audit trails such as data addition, modification, and deletion.
  • Monitor performance.

Azure App Service lets you perform application and web server logging from within the portal. To configure logging for your web application, follow these steps:

  • Log in to the Azure portal.
  • Navigate to App Services in the left-hand navigation pane.
  • Select your web application.
  • Click on Settings and select Diagnostics Logs.
  • Enable the logging feature following your requirements and company policies.

20160624 Azure 1

Traffic monitoring

The Application Insights feature of Azure provides access to telemetry data for monitoring, which ensures normal operations and helps detect problems. With Application Insights we can:

  • Find page-view counts.
  • Discover new and returning users.
  • Find users based on geolocation.
  • Correlate failed requests with exceptions.
  • Create custom alerts, etc.

We will now create a sample web test using Application Insights and use it to monitor the availability of the application from different geolocations:

  • Log in to the Azure portal.
  • Click on Browse in the left-hand navigation pane and select Application Insights.
  • Select your web application.
  • Click on Settings and select Availability in the right-hand pane.
  • Click on Add Web Test under Web Tests and create your test.
  • After a few minutes, observe the data under the Web Tests pane.

20160624 Azure 2

For more details on logging and monitoring, follow these links from Microsoft:

This blog post was written by Piyush Mittal.

Leave a Comment

two × two =