Variables de entorno de Azure Key Vault vs Azure: ¿cuál es la forma correcta?

4

He leído mucho sobre la nueva característica de Azure Key Vault y tiene algunos casos de uso válidos. Sin embargo, en el caso de una aplicación web simple, no veo la ventaja de utilizar variables de entorno que se pueden configurar en el portal. Si un hacker tiene acceso a su portal de Azure, entonces tiene acceso a la configuración de su bóveda de claves. ¿Cuál es el valor agregado?

Me encantaría escuchar tus pensamientos.

    
pregunta Igor Liv 10.04.2016 - 17:30
fuente

2 respuestas

1

Azure Key Vault no solo ofrece soluciones criptográficas. También es un almacén secreto basado en el usuario. Esto resuelve un problema de la administración secreta, que es la remediación rápida. Imagine que tiene una base de datos SQL a la que varios hosts deben acceder, digamos hosts A y B . Si la contraseña de la base de datos está comprometida (generalmente porque un host fue atacado) y los coloca en las variables de entorno en ambos hosts, tiene que curar ambos hosts.

Con un almacén secreto basado en el usuario, A y B tienen credenciales distintas. Si se ataca a A , el atacante puede recuperar la contraseña de la base de datos SQL, pero puede eliminar inmediatamente la autorización de A de la Bóveda de claves, cambiar la contraseña en la base de datos SQL. y actualizar el Vault clave con la nueva contraseña. Tenga en cuenta que no se realizó ninguna acción en B . Cuando B se identifique ante el almacén secreto, recuperará la contraseña de SQL actualizada y reanudará la operación.

Por supuesto, si la contraseña de su base de datos es utilizada por una aplicación web única, esto no ayuda mucho. Sin embargo, es posible que tenga aplicaciones de cifrado que se beneficien de no ver nunca la clave privada, como se explica en la otra respuesta.

    
respondido por el fernacolo 15.04.2018 - 09:30
fuente
3
  

Sin embargo, en el caso de una aplicación web simple, no veo la ventaja de utilizar variables de entorno que se pueden configurar en el portal.

No he usado Azure Key Vault, pero parece que la aplicación cliente nunca en realidad ve la clave maestra :

  

Cuando una aplicación SaaS necesita realizar operaciones criptográficas mediante   usando las llaves de sus clientes, Key Vault hace esto en nombre de la   solicitud. La aplicación no ve las claves de los clientes .

Si la aplicación se ve comprometida, en ambos escenarios el atacante puede descifrar lo que quiera. Sin embargo, si la aplicación (y, por lo tanto, el atacante) nunca tiene acceso directo a las claves, una vez que el atacante pierde el acceso, ya no podrá descifrar ningún otro dato. Esto protege los datos futuros, y los datos que el atacante no pudo descifrar antes de perder el acceso por estar comprometido.

Si la clave maestra estaba simplemente en una variable de entorno y el atacante la comprometió, entonces incluso si revocó su acceso por completo, podrían continuar descifrando los datos que robaron originalmente.

Un beneficio adicional es que, presumiblemente, cada operación de descifrado se registra, por lo que puede auditar más fácilmente el alcance de los datos comprometidos. Sin embargo, si el atacante tuviera acceso directo a la clave, podría descifrarla sin conexión y usted nunca sabría qué fue y qué no fue comprometido.

    
respondido por el thexacre 11.04.2016 - 00:56
fuente

Lea otras preguntas en las etiquetas