Help us improve the AWS re:Post Knowledge Center by sharing your feedback in a brief survey. Your input can influence how we create and update our content to better support your AWS journey.
¿Cómo puedo configurar un bucket central de Amazon S3 para el registro del Administrador de sesiones desde varias cuentas de AWS?
Quiero configurar el registro central de Amazon Simple Storage Service (Amazon S3) para el Administrador de sesiones, una función de AWS Systems Manager, en mis cuentas de AWS.
Resolución
Configuración de los permisos
Systems Manager Agent (SSM Agent) usa el mismo rol de AWS Identity and Access Management (IAM) para activar y cargar registros en Amazon S3.
Puedes utilizar uno de las siguientes roles de IAM:
- Un perfil de instancia de IAM adjunto a una instancia de Amazon Elastic Compute Cloud (Amazon EC2).
- Un rol de IAM que está configurado para la configuración de administración de hosts predeterminada.
Para conceder permisos, utiliza las siguientes políticas:
- La cuenta de AWS propietaria de la entidad principal de IAM debe utilizar una política de IAM para conceder los permisos de Amazon S3.
- El propietario del bucket de S3 debe usar la política de claves o la lista de control de acceso (ACL) de AWS Key Management Service (AWS KMS) para permitir el acceso a todas las cuentas.
- Si el bucket está cifrado con una clave de AWS KMS, debes usar una política de IAM.
- Debes adjuntar la política de IAM al rol que otorga los permisos al SSM Agent.
- Debes utilizar una política de claves de KMS para conceder acceso a la clave de AWS KMS que utilizas para cifrar el bucket.
- Debes utilizar la política administrada de AWS de AmazonSSMManagedInstanceCore para acceder a la funcionalidad principal de Systems Manager.
Se requieren los siguientes permisos para que el Administrador de sesiones cargue los registros en el bucket de S3:
- Los permisos s3:PutObject y s3:PutObjectAcl para cargar objetos cifrados en el bucket de S3.
- Los permisos kms:Decrypt y kms:GenerateDataKey para acceder a las claves de AWS KMS.
- El permiso aws:PrincipalOrgID: o-xxxxxxx para restringir el acceso a las entidades principales que no coincidan con el ID de tu organización en AWS Organizations.
Verifica la conectividad con los siguientes puntos de enlace:
- Puntos de enlace de Amazon S3: com.amazonaws.region.s3
- Puntos de enlace del servicio AWS KMS: com.amazonaws.region.kms
- Puntos de enlace de Systems Manager: com.amazonaws.region.ssm
- Puntos de enlace del Administrador de sesiones de Systems Manager: com.amazonaws.region.ssmmessages
- Puntos de enlace de Amazon EC2: com.amazonaws.region.ec2
Creación de claves y políticas de claves de AWS KMS
Crea claves de AWS KMS para cifrar el bucket de S3 y los registros del Administrador de sesiones.
Puedes crear una clave para cifrar tanto los registros del Administrador de sesiones como el cifrado de AWS KMS o crear claves independientes para cada uno.
Para cada clave, agrega la siguiente instrucción de clave a la política de AWS KMS para permitir que el Administrador de sesiones cifre los registros:
{ "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "StringEquals": { "aws:PrincipalOrgID": "o-xxxxxxx" } } }
Nota: Sustituye aws:PrincipalOrgID por el ID de tu organización y la entidad principal por el ARN de tu rol de IAM.
Creación del bucket de S3 y la política de bucket
Crea un bucket de S3 para almacenar los registros del Administrador de sesiones. Para obtener más información, consulta Creación de un bucket de uso general y Registro de datos de sesión con Amazon S3 (consola).
Para permitir el acceso a los registros, agrega la siguiente política de recursos al bucket de S3:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": "s3:GetEncryptionConfiguration", "Resource": "arn:aws:s3:::customer_session_manager_logging_bucket", "Condition": { "StringEquals": { "aws:PrincipalOrgID": "o-xxxxxxxxxxxxxx" } } }, { "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": [ "s3:PutObject", "s3:PutObjectAcl" ], "Resource": "arn:aws:s3:::customer_session_manager_logging_bucket/*", "Condition": { "StringEquals": { "aws:PrincipalOrgID": "o-xxxxxxxxxxxxx" } } } ] }
Para obtener más información sobre los permisos de acceso a los registros, consulta Permisos para la entrega de registros.
Creación de una política de IAM para acceder al bucket de S3 y a las claves de AWS KMS
Crea una política de IAM que conceda permisos para acceder al bucket de S3 y a las claves de AWS KMS.
Adjunta el siguiente ejemplo de política al perfil de instancia que utilizan tus cuentas para conectarse al bucket de S3:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "PutObjectsBucket", "Action": [ "s3:PutObject", "s3:PutObjectAcl" ], "Effect": "Allow", "Resource": "arn:aws:s3:::customer_session_manager_logging_bucket/*" }, { "Sid": "ListBucketAndEncryptionConfig", "Action": [ "s3:GetEncryptionConfiguration" ], "Effect": "Allow", "Resource": "arn:aws:s3:::customer_session_manager_logging_bucket" }, { "Sid": "S3KMSSessionManagerKMS", "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey*" ], "Resource": [ "arn:aws:kms:us-east-1:ACCOUNTId:key/YOUR-KMS-FOR-SessionManagerEncryption", "arn:aws:kms:us-east-1:ACCOUNTID:key/YOUR-KMS-FOR-S3BucketEncryption" ] } ] }
Nota: Puedes usar una política insertada o una política administrada por el cliente. Para obtener más información, consulta Uso de políticas de IAM con AWS KMS.
(Opcional) Configuración de los perfiles de shell del Administrador de sesiones para los registros
Para crear un perfil de shell personalizado, crea un archivo JSON, elimina el contenido y sustitúyelo por los valores siguientes:
{ "schemaVersion": "1.0", "description": "Document to hold regional settings for Session Manager", "sessionType": "Standard_Stream", "inputs": { "s3BucketName": "customer_session_manager_logging_bucket", "s3KeyPrefix": "", "s3EncryptionEnabled": true, "cloudWatchLogGroupName": "", "cloudWatchEncryptionEnabled": false, "cloudWatchStreamingEnabled": false, "kmsKeyId": "arn:aws:kms:REGION:ACCOUNTID:key/YOUR-KMS-FOR-SessionManagerEncryption", "runAsDefaultUser": "", "idleSessionTimeout": "20", "maxSessionDuration": "", "shellProfile": {"windows": "", "linux": ""} } }
Nota: Sustituye customer_session_manager_logging_bucket por el nombre de tu bucket y YOUR-KMS-FOR-SessionManagerEncryption por la clave designada para el Administrador de sesiones.
Ejecuta el siguiente comando para guardar el archivo como el documento predeterminado del Administrador de sesiones con un nombre como SessionManagerRunShell.json:
aws ssm update-document --name "SSM-SessionManagerRunShell" \ --content "file://SessionManagerRunShell.json" \ --document-version "\$LATEST"
Comprobación de la configuración de registro del Administrador de sesiones
Abre la consola de Amazon S3 y, a continuación, navega hasta el bucket de registro. En la configuración del bucket, confirma que el cifrado del bucket esté activo. Además, confirma que el ARN de la clave de AWS KMS coincide con la clave 1 para asegurarte de que el Administrador de sesiones utiliza la clave de cifrado correcta.
Para comprobar las preferencias del Administrador de sesiones, sigue estos pasos:
- Abre la consola del Administrador de sesiones.
- Selecciona tu región de AWS.
- Confirma que has activado el cifrado.
- Introduce el ARN de la clave 1.
- Comprueba si has configurado el bucket de S3 correcto.
Comprobar que los registros se generan en el bucket
Para generar registros, utiliza el Administrador de sesiones en otra cuenta.
Sigue estos pasos:
- Usa el Administrador de sesiones para conectarte a una instancia.
- Selecciona tu región.
- Comprueba que la sesión se conecte y muestre «Esta sesión está cifrada con AWS KMS».
- Introduce las entradas de prueba para generar los registros y, a continuación, finaliza la sesión.
Nota: Una vez finalizada la sesión, los registros pueden tardar al menos 30 segundos en aparecer. Para obtener más información, consulta Registrar solicitudes mediante el registro de acceso al servidor.
Información relacionada
Protección de datos con cifrado del lado del servidor
Acciones, recursos y claves de condición para Amazon S3
- Etiquetas
- AWS Systems Manager
- Idioma
- Español

Contenido relevante
- preguntada hace 2 meses
- preguntada hace 2 meses
- preguntada hace 10 meses