|
| 1 | +--- |
| 2 | +title: Deploy secure applications on Microsoft Azure |
| 3 | +description: This article discusses best practices to consider during the release and response phases of your web application project. |
| 4 | +author: TerryLanfear |
| 5 | +manager: barbkess |
| 6 | +ms.author: terrylan |
| 7 | +ms.date: 06/12/2019 |
| 8 | +ms.topic: article |
| 9 | +ms.service: security |
| 10 | +services: azure |
| 11 | + |
| 12 | +ms.assetid: 521180dc-2cc9-43f1-ae87-2701de7ca6b8 |
| 13 | +ms.devlang: na |
| 14 | +ms.tgt_pltfrm: na |
| 15 | +ms.workload: na |
| 16 | +--- |
| 17 | + |
| 18 | +# Deploy secure applications on Azure |
| 19 | +In this article we present security activities and controls to consider when you deploy applications for the cloud. Security questions and concepts to consider during the release and response phases of the Microsoft [Security Development Lifecycle |
| 20 | +(SDL)](https://msdn.microsoft.com/library/windows/desktop/84aed186-1d75-4366-8e61-8d258746bopq.aspx) are covered. The goal is to help you define activities and Azure services that you can use to deploy a more secure application. |
| 21 | + |
| 22 | +The following SDL phases are covered in this article: |
| 23 | + |
| 24 | +- Release |
| 25 | +- Response |
| 26 | + |
| 27 | +## Release |
| 28 | +The focus of the release phase is readying a project for public release. |
| 29 | +This includes planning ways to effectively perform post-release |
| 30 | +servicing tasks and address security vulnerabilities that might occur |
| 31 | +later. |
| 32 | + |
| 33 | +### Check your application’s performance before you launch |
| 34 | + |
| 35 | +Check your application's performance before you launch it or deploy |
| 36 | +updates to production. Run cloud-based [load |
| 37 | +tests](https://www.visualstudio.com/docs/test/performance-testing/getting-started/getting-started-with-performance-testing) |
| 38 | +by using Visual Studio to find performance problems in your application, |
| 39 | +improve deployment quality, make sure that your application is always up |
| 40 | +or available, and that your application can handle traffic for your |
| 41 | +launch. |
| 42 | + |
| 43 | +### Install a web application firewall |
| 44 | + |
| 45 | +Web applications are increasingly targets of malicious attacks that |
| 46 | +exploit common known vulnerabilities. Common among these exploits are |
| 47 | +SQL injection attacks and cross-site scripting attacks. Preventing these |
| 48 | +attacks in application code can be challenging. It might require |
| 49 | +rigorous maintenance, patching, and monitoring at many layers of the |
| 50 | +application topology. A centralized WAF helps make security management |
| 51 | +simpler. A WAF solution can also react to a security threat by patching |
| 52 | +a known vulnerability at a central location versus securing each |
| 53 | +individual web application. |
| 54 | + |
| 55 | +The [Azure Application Gateway |
| 56 | +WAF](https://docs.microsoft.com/azure/application-gateway/waf-overview) |
| 57 | +provides centralized protection of your web applications from common |
| 58 | +exploits and vulnerabilities. The WAF is based on rules from the [OWASP |
| 59 | +core rule |
| 60 | +sets](https://www.owasp.org/index.php/Category:OWASP_ModSecurity_Core_Rule_Set_Project) |
| 61 | +3.0 or 2.2.9. |
| 62 | + |
| 63 | +### Create an incident response plan |
| 64 | + |
| 65 | +Preparing an incident response plan is crucial to help you address new |
| 66 | +threats that might emerge over time. Preparing an incident response plan |
| 67 | +includes identifying appropriate security emergency contacts and |
| 68 | +establishing security servicing plans for code that's inherited from |
| 69 | +other groups in the organization and for licensed third-party code. |
| 70 | + |
| 71 | +### Conduct a final security review |
| 72 | + |
| 73 | +Deliberately reviewing all security activities that were performed helps |
| 74 | +ensure readiness for your software release or application. The final |
| 75 | +security review (FSR) usually includes examining threat models, tools |
| 76 | +outputs, and performance against the quality gates and bug bars that |
| 77 | +were defined in the requirements phase. |
| 78 | + |
| 79 | +### Certify release and archive |
| 80 | + |
| 81 | +Certifying software before a release helps ensure that security and |
| 82 | +privacy requirements are met. Archiving all pertinent data is essential |
| 83 | +for performing post-release servicing tasks. Archiving also helps lower |
| 84 | +the long-term costs associated with sustained software engineering. |
| 85 | + |
| 86 | +## Response |
| 87 | +The response post-release phase centers on the development team being |
| 88 | +able and available to respond appropriately to any reports of emerging |
| 89 | +software threats and vulnerabilities. |
| 90 | + |
| 91 | +### Execute the incident response plan |
| 92 | + |
| 93 | +Being able to implement the incident response plan instituted in the |
| 94 | +release phase is essential to helping protect customers from software |
| 95 | +security or privacy vulnerabilities that emerge. |
| 96 | + |
| 97 | +### Monitor application performance |
| 98 | + |
| 99 | +Ongoing monitoring of your application after it's deployed potentially |
| 100 | +helps you detect performance issues as well as security vulnerabilities. |
| 101 | +Azure services that assist with application monitoring are: |
| 102 | + |
| 103 | + - Azure Application Insights |
| 104 | + - Azure Security Center |
| 105 | + |
| 106 | +#### Application Insights |
| 107 | + |
| 108 | +[Application |
| 109 | +Insights](https://docs.microsoft.com/azure/application-insights/app-insights-overview) |
| 110 | +is an extensible Application Performance Management (APM) service for |
| 111 | +web developers on multiple platforms. Use it to monitor your live web |
| 112 | +application. Application Insights automatically detects performance |
| 113 | +anomalies. It includes powerful analytics tools to help you diagnose |
| 114 | +issues and understand what users actually do with your app. It's |
| 115 | +designed to help you continuously improve performance and usability. |
| 116 | + |
| 117 | +#### Azure Security Center |
| 118 | + |
| 119 | +[Azure Security |
| 120 | +Center](https://docs.microsoft.com/azure/security-center/security-center-intro) |
| 121 | +helps you prevent, detect, and respond to threats with increased |
| 122 | +visibility into (and control over) the security of your Azure resources, |
| 123 | +including web applications. Azure Security Center helps detect threats |
| 124 | +that might otherwise go unnoticed. It works with various security |
| 125 | +solutions. |
| 126 | + |
| 127 | +Security Center’s Free tier offers limited security for your Azure |
| 128 | +resources only. The [Security Center Standard |
| 129 | +tier](https://docs.microsoft.com/azure/security-center/security-center-onboarding) |
| 130 | +extends these capabilities to on-premises resources and other clouds. |
| 131 | +Security Center Standard helps you: |
| 132 | + |
| 133 | + - Find and fix security vulnerabilities. |
| 134 | + - Apply access and application controls to block malicious activity. |
| 135 | + - Detect threats by using analytics and intelligence. |
| 136 | + - Respond quickly when under attack. |
| 137 | + |
| 138 | +## Next steps |
| 139 | +In the following articles, we recommend security controls and activities that can help you design and develop secure applications. |
| 140 | + |
| 141 | +- [Design secure applications](secure-design.md) |
| 142 | +- [Develop secure applications](secure-develop.md) |
0 commit comments