Integrar AWS CloudWatch con Google SecOps

En este documento se describe cómo integrar AWS CloudWatch con Google Security Operations (Google SecOps).

Versión de integración: 6.0

Casos prácticos

Acciones activas: buscar en registros, crear grupos o flujos de registro, eliminar grupos o flujos de registro y actualizar políticas de retención.

Parámetros de integración

Usa los siguientes parámetros para configurar la integración:

Nombre visible del parámetro> Tipo> Valor predeterminado> Es obligatorio> Descripción>
ID de clave de acceso de AWS Cadena N/A ID de clave de acceso de AWS que se va a usar en la integración.
Clave secreta de AWS Contraseña N/A Clave secreta de AWS que se va a usar en la integración.
Región predeterminada de AWS Cadena N/A Región predeterminada de AWS que se va a usar en la integración (por ejemplo, us-west-2).

Para obtener instrucciones sobre cómo configurar una integración en Google SecOps, consulta Configurar integraciones.

Si es necesario, puedes hacer cambios más adelante. Después de configurar una instancia de integración, puedes usarla en los cuadernos de estrategias. Para obtener más información sobre cómo configurar y admitir varias instancias, consulta Admitir varias instancias.

Acciones

Para obtener más información sobre las acciones, consulta Responder a acciones pendientes desde Tu espacio de trabajo y Realizar una acción manual.

Ping

Prueba la conectividad con AWS CloudWatch.

Fecha de ejecución

Esta acción no se ejecuta en entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos> Opciones de valor>
is_success is_success=False
is_success is_success=True
Panel de casos
Tipo de resultado Valor o descripción Tipo
Mensaje de salida*

La acción no debe fallar ni detener la ejecución de un cuaderno de estrategias:
Si se realiza correctamente: "Successfully connected to the AWS CloudWatch server with the provided connection parameters!" (Se ha conectado correctamente al servidor de AWS CloudWatch con los parámetros de conexión proporcionados).

La acción debería fallar y detener la ejecución de un libro de jugadas:
si no se ha completado correctamente: "Failed to connect to the AWS CloudWatch server! Error: {0}".format(exception.stacktrace)

General

List Log Groups

Lista los grupos de registros disponibles en AWS CloudWatch.

Parámetros

Nombre visible del parámetro> Tipo> Valor predeterminado> Es obligatorio> Descripción>
Número máximo de grupos que se devolverán Entero 50 No Especifica cuántos grupos quieres que se devuelvan. Valor predeterminado: 50.

Fecha de ejecución

Esta acción no se ejecuta en entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos> Opciones de valor>
is_success is_success=False
is_success is_success=True
Resultado de JSON
[
    {
        "arn": "arn:aws:logs:us-east-1:",
        "creationTime": 1611581795766,
        "logGroupName": "CloudTrail/DefaultLogGroup",
        "metricFilterCount": 0,
        "storedBytes": 24529015
    },
    {
        "arn": "arn:aws:logs:us-east-1:",
        "creationTime": 1606993203235,
        "logGroupName": "Example",
        "metricFilterCount": 1,
        "storedBytes": 730
    },
    {
        "arn": "arn:aws:logs:us-east-1:",
        "creationTime": 1611652265055,
        "logGroupName": "aws-cloudtrail-logs",
        "metricFilterCount": 0,
        "storedBytes": 51354815
    }
]
Panel de casos
Tipo de resultado Valor o descripción Tipo
Mensaje de salida*

La acción no debe fallar ni detener la ejecución de un cuaderno de estrategias:
Si hay datos disponibles (is_success = true): "Successfully returned available log groups in AWS CloudWatch".

Si no hay datos disponibles (is_success = true): "No se han encontrado grupos de registros en AWS CloudWatch".

La acción debería fallar y detener la ejecución de un cuaderno de estrategias:
si se produce un error grave, como credenciales incorrectas, no hay conexión con el servidor u otro: "Error al ejecutar la acción "List Log Groups". Motivo: {0}''.format(error.Stacktrace)

General
Tabla del panel de casos

Nombre: "Grupos de registros"

Columna:

Nombre

Recuento de filtros de métricas

Bytes almacenados

Hora de creación

General

Mostrar flujos de registro

Lista de los flujos de registros disponibles en AWS CloudWatch.

Parámetros

Nombre visible del parámetro> Tipo> Valor predeterminado> Es obligatorio> Descripción>
Grupos de registros CSV N/A Especifica una lista de nombres de grupos separados por comas de los que quieras obtener flujos de registro.
Ordenar por DDL

Nombre del flujo de registro

Valores posibles:

Nombre del flujo de registro

Hora del último evento

No Especifica cómo se deben ordenar los flujos de registro.
Orden de clasificación DDL

Ascendente

Valores posibles:

Ascendente

Descendente

No Especifica el orden que se debe usar.
Número máximo de emisiones que se devolverán Entero 50 No Especifica cuántos flujos se devolverán por grupo de registros.

Fecha de ejecución

Esta acción no se ejecuta en entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos> Opciones de valor>
is_success is_success=False
is_success is_success=True
Resultado de JSON
[{
    "group":"{group name}"
"logStreams": [
        {
            "arn": "arn:aws:logs:us-east-1:log-group:aws-cloudtrail-logs:log-stream:CloudTrail_us-east-1",
            "creationTime": 1611652272827,
            "firstEventTimestamp": 1611652287716,
            "lastEventTimestamp": 1612271538268,
            "lastIngestionTime": 1612271538289,
            "logStreamName": "CloudTrail_us-east-1",
            "storedBytes": 0,
            "uploadSequenceToken": "49039859450784908968417870788122674924958823185025535393"
        }
    ]
}
]
Panel de casos
Tipo de resultado Valor o descripción Tipo
Mensaje de salida*

La acción no debe fallar ni detener la ejecución de un cuaderno de estrategias:
si hay datos disponibles para al menos un grupo de registros (is_success = true): "Se han devuelto correctamente los flujos de registros disponibles de los siguientes grupos de registros en AWS CloudWatch: {group names}".

Si los datos no están disponibles en al menos un grupo de registros (is_success = true): "Action wasn't able to return available log streams for the following log groups in AWS CloudWatch: {group names}" ("La acción no ha podido devolver los flujos de registros disponibles de los siguientes grupos de registros en AWS CloudWatch: {group names}").

Si no hay datos disponibles para al menos un grupo de registros (is_success = false): "No se han encontrado flujos de registros para los grupos de registros proporcionados en AWS CloudWatch".

La acción debería fallar y detener la ejecución de una guía:
si se produce un error grave, como credenciales incorrectas, no hay conexión con el servidor u otro: "Error al ejecutar la acción "List Log Streams". Motivo: {0}''.format(error.Stacktrace)

General
Tabla del panel de casos

Nombre: "{Group Name}: Log Streams"

Columna:

Nombre

Bytes almacenados

Hora de creación

Marca de tiempo del último evento

General

Buscar evento de registro

Busca eventos de registro en AWS CloudWatch.

Parámetros

Nombre visible del parámetro> Tipo> Valor predeterminado> Es obligatorio> Descripción>
Grupo de registros Cadena N/A Especifica el nombre del grupo de registros en el que quieres buscar eventos.
Flujos de registro CSV N/A No Especifica una lista de flujos de registro separados por comas en los que quieras buscar eventos.
Periodo DDL

Última hora

Valores posibles:

Última hora

Últimas 6 horas

Últimas 24 horas

La semana pasada

El mes pasado

Personalizado

No Especifica un periodo para la búsqueda. Si se selecciona "Personalizado", también debe definir una "Hora de inicio".
Hora de inicio Cadena N/A No Especifica la hora de inicio de la búsqueda. Este parámetro es obligatorio si se selecciona "Personalizado" en el parámetro "Periodo". Formato: ISO 8601
Hora de finalización Cadena N/A No Especifica la hora de finalización de la búsqueda. Formato: ISO 8601. Si no se proporciona nada y se selecciona "Personalizado" en el parámetro "Periodo", se usará la hora actual.
Filtro personalizado Cadena N/A No Especifica el filtro personalizado de la búsqueda. Para obtener más información, consulta el portal de documentación.
Número máximo de eventos que se devolverán Entero 50 No Especifica cuántos eventos quieres que se devuelvan. Valor predeterminado: 50.

Fecha de ejecución

Esta acción no se ejecuta en entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos> Opciones de valor>
is_success is_success=False
is_success is_success=True
Resultado de JSON
[
        {
            "eventId": "ID",
            "ingestionTime": 1611652287896,
            "logStreamName": "CloudTrail_us-east-1",
            "message": {
                "eventVersion": "1.08",
                "userIdentity": {
                    "type": "AssumedRole",
                    "principalId": "ID",
                    "arn":"arn:aw
s:sts: : ACCOUNT_ID:assumed-role/AWSServiceRoleForAmazonMacie/AmazonMacieSession","accountId":"ACCOUNT_ID","accessKeyId":"KEY_ID","sessionC
ontext":{"sessionIssuer":{"type":"Role","principalId":"ID","arn":"arn:aws:iam: : ACCOUNT_ID:role/aws-service-role/macie.amazonaws.com/AW
SServiceRoleForAmazonMacie","accountId":"ACCOUNT_ID","userName":"AWSServiceRoleForAmazonMacie"},"webIdFederationData":{},"attributes":{"mfaAuthenticated": "false",
                    "creationDate": "2021-01-26T08:53:52Z"
                }
            },
            "invokedBy": "AWS Internal",
            "eventTime": "2021-01-26T08:53:52Z",
            "eventSource": "s3.amazonaws.com",
            "eventName": "GetBucketLogging",
            "awsRegion": "us-east-1",
            "sourceIPAddress": "AWSInternal",
            "userAgent": "AWS Internal",
            "requestParameters": {
                "logging": "",
                "bucketName": "example",
                "Host": "example.s3.amazonaws.com"
            },
            "responseElements": null,
            "additionalEventData": {
                "SignatureVersion": "SigV4",
                "CipherSuite": "ECDHE-RSA-AES128-GCM-SHA256",
                "bytesTransferredIn": 0,
                "AuthenticationMethod": "AuthHeader",
                "x-amz-id-2": "PFM+6pyK/gCPy95gh8dtstgtXftrpHkL8s=",
                "bytesTransferredOut": 289
            },
            "requestID": "8FA919A428BC82D7",
            "eventID": "7eb5dd44-7021-4945-b9be-27f5b1e0d8d0",
            "readOnly": true,
            "resources": [
                {
                    "accountId": "ACCOUNT_ID",
                    "type": "AWS::S3::Bucket",
                    "ARN": "arn:aws:s3:::example"
                }
            ],
            "eventType": "AwsApiCall",
            "managementEvent": true,
            "eventCategory": "Management",
            "recipientAccountId": "ACCOUNT_ID"
        },
        "timestamp": 1611652287716
    }
]
Panel de casos
Tipo de resultado Valor o descripción Tipo
Mensaje de salida*

La acción no debe fallar ni detener la ejecución de un cuaderno de estrategias:
si hay datos disponibles (is_success = true): "Successfully executed search in AWS CloudWatch".

Si no hay datos disponibles (is_success = false): "No se han encontrado datos para la búsqueda proporcionada".

La acción debería fallar y detener la ejecución de un cuaderno de estrategias:
si se produce un error grave, como credenciales incorrectas, no hay conexión con el servidor u otro: "Error al ejecutar la acción "Buscar eventos de registro". Motivo: {0}''.format(error.Stacktrace)

General
Tabla del panel de casos

Nombre: "Resultados de búsqueda"

Columna: todas las claves disponibles.

General

Definir política de conservación

Defina la política de retención de los grupos de registros en AWS CloudWatch.

Parámetros

Nombre visible del parámetro> Tipo> Valor predeterminado> Es obligatorio> Descripción>
Grupo de registros Cadena N/A Especifica el nombre del grupo de registro para el que quieres definir la política de retención.
Días de conservación DDL

1

Valores posibles

1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1827 y 3653

Especifica durante cuántos días se deben conservar los datos en el grupo de registros.

Fecha de ejecución

Esta acción no se ejecuta en entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos> Opciones de valor>
is_success is_success=False
is_success is_success=True
Panel de casos
Tipo de resultado Valor o descripción Tipo
Mensaje de salida*

La acción no debe fallar ni detener la ejecución de un runbook:
si los datos son correctos (is_success = true): "Successfully set the retention policy for log group {group} in AWS CloudWatch". ("Se ha definido correctamente la política de conservación del grupo de registros {group} en AWS CloudWatch").

La acción debería fallar y detener la ejecución de un libro de jugadas:
si se produce un error grave, como credenciales incorrectas, no hay conexión con el servidor u otro error: "Error al ejecutar la acción "Set Retention Policy". Motivo: {0}''.format(error.Stacktrace)

General

Eliminar política de conservación

Elimina la política de conservación del grupo de registros en AWS CloudWatch.

Parámetros

Nombre visible del parámetro> Tipo> Valor predeterminado> Es obligatorio> Descripción>
Grupo de registros Cadena N/A Especifica el nombre del grupo de registro del que quieras quitar la política de conservación.

Fecha de ejecución

Esta acción no se ejecuta en entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos> Opciones de valor>
is_success is_success=False
is_success is_success=True
Panel de casos
Tipo de resultado Valor o descripción Tipo
Mensaje de salida*

La acción no debe fallar ni detener la ejecución de un libro de jugadas:
si los datos son correctos (is_success = true): "Se ha eliminado correctamente la política de retención del grupo de registros {group} en AWS CloudWatch".

La acción debería fallar y detener la ejecución de un cuaderno de estrategias:
si se produce un error grave, como credenciales incorrectas, no hay conexión con el servidor u otro error: "Error al ejecutar la acción "Eliminar política de conservación". Motivo: {0}''.format(error.Stacktrace)

General

Crear grupo de registros

Crea un grupo de registros en AWS CloudWatch.

Parámetros

Nombre visible del parámetro> Tipo> Valor predeterminado> Es obligatorio> Descripción>
Nombre del grupo de registros Cadena N/A Especifica el nombre del nuevo grupo de registros.

Fecha de ejecución

Esta acción no se ejecuta en entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos> Opciones de valor>
is_success is_success=False
is_success is_success=True
Resultado de JSON
{
"group_name": "GROUP_NAME"
}
Panel de casos
Tipo de resultado Valor o descripción Tipo
Mensaje de salida*

La acción no debe fallar ni detener la ejecución de un cuaderno de estrategias:
si los datos son correctos (is_success = true): "Se ha creado correctamente un nuevo grupo de registros {group} en AWS CloudWatch".

La acción debería fallar y detener la ejecución de un cuaderno de estrategias:
si se produce un error grave, como credenciales incorrectas, no hay conexión con el servidor u otro error: "Error al ejecutar la acción "Crear grupo de registros". Motivo: {0}''.format(error.Stacktrace)

General

Crear flujo de registro

Crea un flujo de registros para el grupo de registros en AWS CloudWatch.

Parámetros

Nombre visible del parámetro> Tipo> Valor predeterminado> Es obligatorio> Descripción>
Grupo de registros Cadena N/A Especifica el nombre del grupo de registro en el que quieres crear un flujo de registro.
Nombre del flujo de registro Cadena N/A Especifica el nombre del nuevo flujo de registro.

Fecha de ejecución

Esta acción no se ejecuta en entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos> Opciones de valor>
is_success is_success=False
is_success is_success=True
Resultado de JSON
{
"log_stream": "STREAM_NAME"
}
Panel de casos
Tipo de resultado Valor o descripción Tipo
Mensaje de salida*

La acción no debe fallar ni detener la ejecución de un libro de jugadas:
si los datos son correctos (is_success = true): "Se ha creado correctamente un nuevo flujo de registro en el grupo de registros {group} de AWS CloudWatch".

La acción debería fallar y detener la ejecución de un cuaderno de estrategias:
si se produce un error grave, como credenciales incorrectas, no hay conexión con el servidor u otro: "Error al ejecutar la acción "Crear flujo de registro". Motivo: {0}''.format(error.Stacktrace)

General

Eliminar grupo de registros

Elimina un grupo de registros en AWS CloudWatch.

Parámetros

Nombre visible del parámetro> Tipo> Valor predeterminado> Es obligatorio> Descripción>
Nombre del grupo de registros Cadena N/A Especifica el nombre del grupo de registros que se debe eliminar.

Fecha de ejecución

Esta acción no se ejecuta en entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos> Opciones de valor>
is_success is_success=False
is_success is_success=True
Panel de casos
Tipo de resultado Valor o descripción Tipo
Mensaje de salida*

La acción no debe fallar ni detener la ejecución de un libro de jugadas:
si los datos son correctos (is_success = true): "Se ha eliminado correctamente el grupo de registros {group} en AWS CloudWatch".

Si el grupo no existe (is_success=false): "Action wasn't able to delete log group {group} in AWS CloudWatch. Motivo: No se ha encontrado el grupo de registros {group} en AWS CloudWatch.

La acción debería fallar y detener la ejecución de un cuaderno de estrategias:
si se produce un error grave, como credenciales incorrectas, no hay conexión con el servidor u otro error: "Error al ejecutar la acción "Eliminar grupo de registros". Motivo: {0}''.format(error.Stacktrace)

General

Eliminar flujo de registro

Elimina un flujo de registro de un grupo de registros en AWS CloudWatch.

Parámetros

Nombre visible del parámetro> Tipo> Valor predeterminado> Es obligatorio> Descripción>
Nombre del grupo de registros Cadena N/A Especifica el nombre del grupo de registros que contiene el flujo de registros.
Nombre del flujo de registro Cadena N/A Especifica el nombre del flujo de registro que se debe eliminar.

Fecha de ejecución

Esta acción no se ejecuta en entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos> Opciones de valor>
is_success is_success=False
is_success is_success=True
Panel de casos
Tipo de resultado Valor o descripción Tipo
Mensaje de salida*

La acción no debe fallar ni detener la ejecución de un cuaderno de estrategias:
si los datos son correctos (is_success = true): "Se ha eliminado correctamente el flujo de registro {stream} del grupo de registros {group} en AWS CloudWatch".

Si el flujo no existe (is_success=false): "Action wasn't able to delete log stream {stream} from log group {group} in AWS CloudWatch. Motivo: No se ha encontrado el flujo de registro {stream} en el grupo de registros {group} de AWS CloudWatch."

Si el grupo no existe (is_success=false): "Action wasn't able to delete log stream {stream} from log group {group} in AWS CloudWatch. Motivo: No se ha encontrado el grupo de registros {group} en AWS CloudWatch.

La acción debería fallar y detener la ejecución de una guía:
si se produce un error grave, como credenciales incorrectas, no hay conexión con el servidor u otro error: "Error al ejecutar la acción "Eliminar flujo de registro". Motivo: {0}''.format(error.Stacktrace)

General

¿Necesitas más ayuda? Recibe respuestas de los miembros de la comunidad y de los profesionales de Google SecOps.