Azure Security best practices

Hoy volvemos otra vez con cinco consejos de seguridad para nuestros recursos en Azure. En mi artículo anterior sobre Hardening de Azure Active Directory, hablamos sobre algunos consejos para asegurar esta gestión de identidades tan crítica.

En este nuevo artículo, vamos a ir más allá y vamos a hablar de otros servicios. En concreto:

  • Azure SQL.
  • Azure Key Vault.
  • Azure Bastion.
  • Azure Security Center.

1. Transparent data encryption | Azure SQL Database

Si un atacante consigue acceso tu base de datos SQL dentro de Azure, no te preocupes, aun puedes proteger tus datos. Esto se consigue mediante TDE (Transparent data encryption) el cual viene activado por defecto. Esta característica está disponible para Azure SQL y Azure Synapse Analytics.

Con TDE podemos cifrar nuestros datos, backups y logs, utilizando una clave propia o una administrada por el servicio.

2. Restringe el acceso a tus bases de datos.

Si quieres que únicamente puedan tener acceso a las bases de datos algunos servicios y usuarios en concreto, puedes configurar el firewall que viene con la base de datos. Puedes bloquear direcciones IP que no estén permitidas, esto es muy recomendable para entornos de desarrollo y pruebas.

Para entornos de producción, puedes meter tu base de datos en una red virtual y conectarte a ella mediante Azure Private Link desde los servicios que necesites. Además, esto protege a tu base de datos de redes públicas o externas.

3. Restringe el acceso a tus instancias.

Si estás utilizando una máquina virtual en Azure, probablemente quieras conectarte a ella mediante RDP o SSH. Esta práctica, es una agujero de seguridad bastante importante, ya que estamos abriendo al público, un puerto de acceso remoto a nuestra máquina virtual.

Para evitar este problema y poder seguir teniendo acceso a la instancia, podemos crear una red virtual y utilizar Azure Bastion para poder conectarnos a las instancias de manera segura.

4. Protege los secretos de tu aplicación.

No es una buena práctica almacenar las claves en el código de la aplicación, donde cada desarrollador pueda verlas. Lo ideal, es almacenarlas en un lugar centralizado como Azure Key Vault. Este servicio contiene las claves y certificados de tus aplicaciones.

Puedes conectarte de manera segura a Azure Key Vault desde tus servicios, utilizando Azure Managed Service Identity. Esto te permite conectarte al Key Vault sin utilizar una API key o connection string.

5. Utiliza Azure Security Center

Último y no menos importante. Es una servicio que te muestra el estado de seguridad de tus recursos de Azure, qué puedes mejorar y cómo hacerlo desde el propio Security Center. También, puedes configurar alertas para eventos que requieran de tu atención. En resumen, Es el servicio definitivo para implementar las mejores prácticas de seguridad en Azure.

Espero que te haya resultado útil este artículo y recuerda…

¡Nos vemos en la nube!