Políticas de claves, concesiones y condiciones
Controle exactamente quién puede usar una clave y en qué contexto
Políticas de claves, concesiones y condiciones es una lección gratuita de AWS Security Academy en CoddyKit. Esta es la lección 3 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de AWS Security Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de AWS Security Academy incluye 4 lecciones en total.
Controlar quién usa una clave
Crear una clave es solo la mitad del trabajo; controlar quién puede utilizarla es la otra mitad. KMS utiliza varios mecanismos de acceso combinados.
El más importante es la política de claves, una política basada en recursos asociada directamente a la clave.
La política de claves
Cada clave de KMS tiene una política de claves que constituye la autoridad principal sobre el acceso.
- A diferencia de la mayoría de los servicios, una clave de KMS debe tener una política de claves.
- Si la política de claves no concede acceso, las políticas de IAM por sí solas no pueden concederlo.
Por eso, la política de claves actúa como guardián de acceso.
La política de claves y IAM conjuntamente
Para acceder a una clave de KMS, es necesario que la política de claves habilite IAM; después, IAM y la política de claves se combinan.
La política de claves predeterminada incluye una declaración que concede acceso a las entidades principales de IAM de la cuenta, sujeto a sus políticas de IAM. Sin esa declaración, solo las entidades principales indicadas directamente en la política de claves pueden utilizarla.
{
"Sid": "EnableIAM",
"Effect": "Allow",
"Principal": { "AWS": "arn:aws:iam::111122223333:root" },
"Action": "kms:*",
"Resource": "*"
}Grants
Un grant es una forma flexible y temporal de delegar el uso de una clave.
- Permite operaciones específicas a una entidad principal, a menudo mediante programación.
- Los servicios de AWS utilizan grants para acceder a las claves en su nombre.
Los grants se pueden retirar o revocar cuando ya no se necesitan, por lo que son ideales para delegaciones de corta duración.
Grants frente a la política de claves
Elija según la duración y el nivel de granularidad:
- Utilice la política de claves y IAM para accesos amplios y de larga duración.
- Utilice grants para permisos temporales y detallados, creados a menudo dinámicamente por servicios o aplicaciones.
Los grants evitan editar la política de claves para necesidades de corta duración.
Claves de condición
KMS admite claves de condición eficaces en las políticas, como kms:ViaService.
ViaService restringe el uso de la clave a solicitudes que llegan a través de un servicio de AWS específico (por ejemplo, únicamente a través de S3), de modo que una entidad principal solo pueda descifrar cuando S3 realiza la llamada, no directamente.
Contexto de cifrado
El contexto de cifrado es un conjunto de pares clave-valor que se envía con encrypt/decrypt y queda vinculado criptográficamente a la operación.
- Debe proporcionar el mismo contexto para descifrar.
- Aparece en CloudTrail con fines de auditoría.
Las políticas pueden exigir un contexto específico mediante la condición kms:EncryptionContext.
Acceso entre cuentas a las claves
Para permitir que otra cuenta utilice una clave, la política de claves debe permitir el acceso a esa cuenta externa, y la entidad principal externa también necesita permiso de IAM.
Este es el mismo patrón de dos partes que se aplica a los roles entre cuentas: tanto la política de recursos (en este caso, la política de claves) como la política de IAM del solicitante deben permitir la acción.
Mínimo privilegio para las claves
Aplique el principio de mínimo privilegio a las claves:
- Separe a los administradores de claves (que administran la clave) de los usuarios de claves (que cifran y descifran).
- Evite kms:* para los usuarios.
- Utilice ViaService y el contexto de cifrado para limitar aún más el alcance.
Esto limita el impacto si una entidad principal se ve comprometida.
El riesgo de la política de claves predeterminada
Un error clásico consiste en editar una política de claves y eliminar la declaración que habilita IAM.
Sin ella, incluso los administradores de la cuenta pierden el acceso y, como la política de claves es el guardián de acceso, puede quedar completamente fuera de la clave. Mantenga siempre una entidad principal administrativa de nivel de cuenta en la política de claves para evitar que la clave quede irrecuperable.
Auditar el acceso a las claves
Combine CloudTrail (cada llamada a KMS con su contexto) y IAM Access Analyzer (políticas de claves que conceden acceso externo) para auditar quién puede utilizar cada clave y quién la utiliza realmente.
Las revisiones periódicas detectan políticas de claves demasiado permisivas antes de que se conviertan en un riesgo.
Comprobación rápida
Analice el acceso a KMS.
Recapitulación
Ha aprendido cómo se controla el acceso a KMS.
- La política de claves es el principal guardián de acceso y debe habilitar IAM para poder utilizarla.
- Los grants proporcionan delegación temporal y detallada.
- Las condiciones, como ViaService y el contexto de cifrado, limitan el alcance.
Preguntas frecuentes
¿La lección «Políticas de claves, concesiones y condiciones» es gratis?
Sí — el texto completo de «Políticas de claves, concesiones y condiciones» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de AWS Security Academy, actualiza a CoddyKit PRO. El curso de AWS Security Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Políticas de claves, concesiones y condiciones»?
Controle exactamente quién puede usar una clave y en qué contexto Practicas AWS Security Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar AWS Security Academy?
No se requiere experiencia previa. AWS Security Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 4.
¿Cuánto tiempo toma la lección «Políticas de claves, concesiones y condiciones»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de AWS Security Academy?
Sí. Cada lección de AWS Security Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Qué son las claves de KMS y qué hacen
- Claves simétricas, asimétricas y multirregión
- Políticas de claves, concesiones y condiciones
- Cifrado de sobre y claves de datos