Seguridad - Programador de instancias de AWS

Seguridad

Cuando crea sistemas en la infraestructura de AWS, las responsabilidades de seguridad se comparten entre usted y AWS. Este modelo de responsabilidad compartida reduce su carga operativa, ya que AWS opera, administra y controla los componentes, desde el sistema operativo host y la capa de virtualización hasta la seguridad física en las instalaciones en las que operan los servicios. Para obtener más información sobre la seguridad de AWS, visite Seguridad en la nube de AWS.

AWS KMS

La solución crea una clave administrada tanto por AWS como por el cliente, que se usa a fin de configurar el cifrado del servidor para el tema de SNS y las tablas de DynamoDB.

Amazon IAM

Las funciones de Lambda de la solución requieren permisos para acceder a los recursos de la cuenta central, a los parámetros get/put de Systems Manager, a los grupos de registro de CloudWatch y al cifrado y descifrado de claves de AWS KMS, así como para publicar mensajes en SNS. Además, el programador de instancias de AWS también creará roles de programación en todas las cuentas administradas que proporcionarán acceso para iniciar o detener recursos de EC2, RDS y escalado automático e instancias de base de datos, así como modificar atributos de instancia y actualizar las etiquetas de esos recursos. La solución proporciona todos los permisos necesarios al rol de servicio de Lambda creado como parte de la plantilla de solución.

Durante la implementación, el programador de instancias de AWS aplicará roles de IAM limitados para cada una de sus funciones de Lambda, junto con roles del programador que solo pueden asumir funciones de Lambda de programación específicas en la plantilla central implementada. Los nombres de estos roles de programación siguen los patrones {namespace}-Scheduler-Role y {namespace}-ASG-Scheduling-Role.

Para obtener información detallada sobre el permiso otorgado a cada rol de servicio, consulte las plantillas de CloudFormation.

Volúmenes de EBS de EC2 cifrados

Al programar instancias de EC2 asociadas a volúmenes de EBS cifrados por AWS KMS, debe conceder permiso al programador de instancias de AWS para usar las claves de AWS KMS asociadas. Esto permite a Amazon EC2 descifrar los volúmenes de EBS asociados mientras la función permanece iniciada. Este permiso debe concederse al rol de programación en la misma cuenta que las instancias de EC2 que utilizan la clave.

A fin de conceder permiso para usar una clave de AWS KMS con el programador de instancias de AWS, agregue el nombre de recurso de Amazon (ARN) de la clave de AWS KMS a la pila (central o radial) del programador mencionado en la misma cuenta que las instancias de EC2 que utilizan las claves:

ARN de clave KMS para EC2

image3

Esto generará automáticamente la siguiente política y la agregará al rol de programación correspondiente a esa cuenta:

{ "Version": "2012-10-17", "Statement": [ { "Condition": { "StringLike": { "kms:ViaService": "ec2.*.amazonaws.com" }, "Null": { "kms:EncryptionContextKeys": "false", "kms:GrantOperations": "false" }, "ForAllValues:StringEquals": { "kms:EncryptionContextKeys": [ "aws:ebs:id" ], "kms:GrantOperations": [ "Decrypt" ] }, "Bool": { "kms:GrantIsForAWSResource": "true" } }, "Action": "kms:CreateGrant", "Resource": [ "Your-KMS-ARNs-Here" ], "Effect": "Allow" } ] }