Este artículo contiene recomendaciones de seguridad para Azure App Service. La implementación de estas recomendaciones le ayudará a cumplir con las obligaciones de seguridad que se describen en nuestro modelo de responsabilidad compartido y mejorará la seguridad general de sus soluciones de aplicación de web. Para obtener más información sobre lo que Microsoft hace para cumplir con las responsabilidades del proveedor de servicios, lea Seguridad de la infraestructura de Azure.
General
Recomendación
Comentarios
Manténgase actualizado.
Use las versiones más recientes de las plataformas compatibles, los lenguajes de programación, los protocolos y los marcos.
Administración de identidades y acceso
Recomendación
Comentarios
Deshabilitar acceso anónimo
A menos que necesite admitir solicitudes anónimas, deshabilite el acceso anónimo. Para más información sobre cómo funcionan las opciones de autenticación de Azure App Service, vea Autenticación y autorización en Azure App Service.
Requerir autenticación
Siempre que sea posible, use el módulo de autenticación de App Service en lugar de escribir código para controlar la autenticación y la autorización. Vea Autenticación y autorización en Azure App Service.
Protección de los recursos de back-end con acceso autenticado
Puede usar la identidad del usuario o usar una identidad de aplicación para autenticarse en un recurso de back-end. Si decide usar una identidad de aplicación use una identidad administrada.
Requerir autenticación de certificados de clientes
La autenticación de certificados de clientes mejora la seguridad al permitir conexiones solo de los clientes que se pueden autenticar con los certificados que proporciona.
Protección de los datos
Recomendación
Comentarios
Redireccionamiento de HTTP a HTTPS
De forma predeterminada, los clientes pueden conectarse a las aplicaciones web mediante HTTP o HTTPS. Se recomienda redirigir HTTP a HTTPs porque HTTPS usa el protocolo SSL/TLS para proporcionar una conexión segura, que está tanto cifrada como autenticada.
Cifrado de la comunicación a los recursos de Azure
Cuando la aplicación se conecta a recursos de Azure tales como SQL Database o Azure Storage, la conexión permanece dentro de Azure. Puesto que la conexión pasa por las funciones de red compartidas de Azure, siempre debe cifrar toda la comunicación.
Requerir la versión de TLS más reciente
Desde 2018, las nuevas aplicaciones de Azure App Service usan TLS 1.2. Las versiones más recientes de TLS incluyen mejoras de seguridad con respecto a versiones anteriores del protocolo.
Uso de FTPS
App Service admite FTP y FTPS para la implementación de los archivos. Use FTPS en lugar de FTP cuando sea posible. Si uno o los dos protocolos no están en uso, debe deshabilitarlos.
Protección de datos de aplicación
No almacene los secretos de la aplicación, como las credenciales de la base de datos, los tokens de API ni las claves privadas en el código o en archivos de configuración. El enfoque aceptado es acceder a ellos como variables de entorno, usando el patrón estándar en el lenguaje que prefiera. En Azure App Service, puede definir variables de entorno a través de la configuración de la aplicación y las cadenas de conexión. La configuración de la aplicación y las cadenas de conexión se almacenan cifradas en Azure. La configuración de la aplicación se descifra solo antes de insertarla en la memoria de proceso de la aplicación cuando se inicia la aplicación. Las claves de cifrado rotan con regularidad. También puede integrar la aplicación de Azure App Service con Azure Key Vault para la administración avanzada de secretos. Al acceder a Key Vault con una identidad administrada, la aplicación App Service puede acceder de forma segura a los secretos que necesita.
Protección de código de aplicación
Siga los pasos para asegurarse de que el código de la aplicación está protegido.
Contenido estático
Al crear una aplicación web que sirve contenido estático, asegúrese de que solo se procesan los archivos o carpetas previstos. Es posible que una configuración o código que sirva todos los archivos no esté protegido de manera predeterminada. Siga los procedimientos recomendados de application runtime/framework para proteger el contenido estático.
Carpetas ocultas
Asegúrese de que las carpetas ocultas, como .git, bin, obj, objd, etc., no se incluyan accidentalmente como parte del artefacto de implementación. Tome las medidas adecuadas para asegurarse de que los scripts de implementación solo implementen los archivos necesarios y nada más.
Implementaciones locales
Comprenda los matices de la implementación local en la implementación local de Git. La implementación local da como resultado la creación y el almacenamiento de la carpeta .git en la raíz de contenido de la aplicación web. La implementación local de Git puede activar las implementaciones locales automáticamente en algunos escenarios, incluso si la implementación local no está configurada explícitamente (por ejemplo, si la aplicación web contiene contenido implementado previamente cuando se inicializa el repositorio local de Git). Siga los procedimientos recomendados de application runtime/framework para proteger el contenido.
Redes
Recomendación
Comentarios
Uso de restricciones de IP estática
En Windows, Azure App Service permite definir una lista de direcciones IP que tienen permiso para acceder a su aplicación. La lista de direcciones permitidas puede incluir direcciones IP individuales o un intervalo de direcciones IP definido por una máscara de subred. Para más información, consulte Restricciones de IP estáticas de Azure App Service.
Uso del plan de tarifa aislado
Excepto en el plan de tarifa aislado, todos los niveles ejecutan las aplicaciones en la infraestructura de red compartida en Azure App Service. El plan aislado ejecuta las aplicaciones dentro de un entorno de App Service dedicado para tener un aislamiento de red completo. Los entornos de App Service se ejecutan en su propia instancia de la red virtual de Azure.
Uso de conexiones seguras al acceder a recursos locales
Uso de Microsoft Defender for App Service de Microsoft Defender for Cloud
La herramienta Microsoft Defender for App Service está integrada de forma nativa en Azure App Service. Defender for Cloud evalúa los recursos incluidos en el plan de App Service y genera recomendaciones de seguridad en función de lo que halle. Siga las instrucciones detalladas de estas recomendaciones para proteger los recursos de App Service. Microsoft Defender for Cloud también proporciona protección contra amenazas y puede detectar una gran cantidad de amenazas que abarcan casi la lista completa de tácticas de MITRE ATT&CK desde el preataque hasta el comando y el control. Para obtener una lista completa de las alertas de Azure App Service, consulte Alertas de Microsoft Defender for App Service.
Pasos siguientes
Póngase en contacto con el proveedor de la aplicación para ver si hay más requisitos de seguridad. Para obtener más información sobre el desarrollo de aplicaciones seguras, vea Documentación sobre desarrollo seguro.