Registrar llamadas a la API de AWS Systems Manager con AWS CloudTrail - AWS Systems Manager

Registrar llamadas a la API de AWS Systems Manager con AWS CloudTrail

AWS Systems Manager se integra con AWS CloudTrail, un servicio que proporciona un registro de las acciones que realiza un usuario, un rol o un Servicio de AWS en Systems Manager. CloudTrail obtiene todas las llamadas a la API para Systems Manager como eventos, incluidas las llamadas procedentes de la consola de Systems Manager y de las llamadas de código a las API de Systems Manager. Si crea un registro de seguimiento, puede habilitar el envío continuo de eventos de CloudTrail a un bucket de S3, incluidos los eventos de Systems Manager. Si no configura un registro de seguimiento, puede ver los eventos más recientes de la consola de CloudTrail en el Event history (Historial de eventos). Mediante la información recopilada por CloudTrail, puede determinar la solicitud que se realizó a Systems Manager, la dirección IP desde la que se realizó, quién la realizó, cuándo y detalles adicionales.

Para obtener más información acerca de CloudTrail, consulte la Guía del usuario de AWS CloudTrail.

Información de Systems Manager en CloudTrail

CloudTrail se habilita en su Cuenta de AWS cuando crea la cuenta. Cuando se produce una actividad en Systems Manager, dicha actividad se registra en un evento de CloudTrail junto con los demás eventos de Servicio de AWS en Event history (Historial de eventos). Puede ver, buscar y descargar los últimos eventos de la Cuenta de AWS. Para obtener más información, consulte Visualización de eventos con el historial de eventos de CloudTrail en la Guía del usuario de AWS CloudTrail.

Para mantener un registro continuo de los eventos de la Cuenta de AWS, incluidos los eventos de Systems Manager, cree un registro de seguimiento. Un registro de seguimiento permite a CloudTrail enviar archivos de registros a un bucket de S3. De forma predeterminada, cuando se crea un registro de seguimiento en la consola, el registro de seguimiento se aplica a todas las Regiones de AWS. El registro de seguimiento registra los eventos de todas las regiones de la partición de AWS y envía los archivos de registro al bucket de S3 especificado. También es posible configurar otros Servicios de AWS para analizar en profundidad y actuar en función de los datos de eventos recopilados en los registros de CloudTrail. Para obtener más información, consulte:

CloudTrail registra todas las acciones de Systems Manager, que se documentan en la Referencia de la API de AWS Systems Manager. Por ejemplo, las llamadas a las acciones CreateMaintenanceWindows, PutInventory, SendCommand y StartSession generan entradas en los archivos de registros de CloudTrail. Para ver un ejemplo de cómo se configura CloudTrail para monitorear una llamada a la API de Systems Manager, consulte Monitoreo de la actividad de la sesión con Amazon EventBridge (consola) .

Cada entrada de registro o evento contiene información sobre quién generó la solicitud. La información de identidad del usuario le ayuda a determinar lo siguiente:

  • Si la solicitud se realizó con credenciales de usuario raíz de la Cuenta de AWS o credenciales de usuario de IAM.

  • Si la solicitud se realizó con credenciales de seguridad temporales de un rol o fue un usuario federado.

  • Si la solicitud la realizó otro Servicio de AWS.

Para obtener más información, consulte el Elemento userIdentity de CloudTrail.

Descripción de las entradas del archivo de registros de Systems Manager

Un registro de seguimiento es una configuración que permite la entrega de eventos como archivos de registros a un bucket de S3 que se especifique. Los archivos log de CloudTrail pueden contener una o varias entradas de log. Un evento representa una única solicitud de cualquier origen e incluye información sobre la operación solicitada, la fecha y la hora de la operación, los parámetros de la solicitud, etcétera. Los archivos de registros de CloudTrail no rastrean el orden en la pila de las llamadas públicas a la API, por lo que estas no se muestran en ningún orden específico.

Ejemplo 1: DeleteDocument

En el siguiente ejemplo, se muestra una entrada de registro de CloudTrail que ilustra la operación DeleteDocument en un documento denominado example-Document en la región EE. UU. Este (Ohio) (us-east-2).

{ "eventVersion": "1.04", "userIdentity": { "type": "AssumedRole", "principalId": "AKIAI44QH8DHBEXAMPLE:203.0.113.11", "arn": "arn:aws:sts::123456789012:assumed-role/example-role/203.0.113.11", "accountId": "123456789012", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "attributes": { "mfaAuthenticated": "false", "creationDate": "2018-03-06T20:19:16Z" }, "sessionIssuer": { "type": "Role", "principalId": "AKIAI44QH8DHBEXAMPLE", "arn": "arn:aws:iam::123456789012:role/example-role", "accountId": "123456789012", "userName": "example-role" } } }, "eventTime": "2018-03-06T20:30:12Z", "eventSource": "ssm.amazonaws.com", "eventName": "DeleteDocument", "awsRegion": "us-east-2", "sourceIPAddress": "203.0.113.11", "userAgent": "example-user-agent-string", "requestParameters": { "name": "example-Document" }, "responseElements": null, "requestID": "86168559-75e9-11e4-8cf8-75d18EXAMPLE", "eventID": "832b82d5-d474-44e8-a51d-093ccEXAMPLE", "resources": [ { "ARN": "arn:aws:ssm:us-east-2:123456789012:document/example-Document", "accountId": "123456789012" } ], "eventType": "AwsApiCall", "recipientAccountId": "123456789012" }
Ejemplo 2: StartConnection

En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail para un usuario que inicia una conexión RDP mediante Fleet Manager en la región Este de EE. UU. (Ohio) (us-east-2). La acción de la API subyacente es StartConnection.

{ "eventVersion": "1.08", "userIdentity": { "type": "AssumedRole", "principalId": "AKIAI44QH8DHBEXAMPLE", "arn": "arn:aws:sts::123456789012:assumed-role/exampleRole", "accountId": "123456789012", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AKIAI44QH8DHBEXAMPLE", "arn": "arn:aws:sts::123456789012:assumed-role/exampleRole", "accountId": "123456789012", "userName": "exampleRole" }, "webIdFederationData": {}, "attributes": { "creationDate": "2021-12-13T14:57:05Z", "mfaAuthenticated": "false" } } }, "eventTime": "2021-12-13T16:50:41Z", "eventSource": "ssm-guiconnect.amazonaws.com", "eventName": "StartConnection", "awsRegion": "us-east-2", "sourceIPAddress": "34.230.45.60", "userAgent": "example-user-agent-string", "requestParameters": { "AuthType": "Credentials", "Protocol": "RDP", "ConnectionType": "SessionManager", "InstanceId": "i-02573cafcfEXAMPLE" }, "responseElements": { "ConnectionArn": "arn:aws:ssm-guiconnect:us-east-2:123456789012:connection/fcb810cd-241f-4aae-9ee4-02d59EXAMPLE", "ConnectionKey": "71f9629f-0f9a-4b35-92f2-2d253EXAMPLE", "ClientToken": "49af0f92-d637-4d47-9c54-ea51aEXAMPLE", "requestId": "d466710f-2adf-4e87-9464-055b2EXAMPLE" }, "requestID": "d466710f-2adf-4e87-9464-055b2EXAMPLE", "eventID": "fc514f57-ba19-4e8b-9079-c2913EXAMPLE", "readOnly": false, "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "123456789012", "eventCategory": "Management" }