Ejemplos de Security Lake que utilizan la AWS CLI - AWS Command Line Interface

Ejemplos de Security Lake que utilizan la AWS CLI

En los siguientes ejemplos de código se muestra cómo realizar acciones e implementar escenarios comunes usando AWS Command Line Interface con Security Lake.

Las acciones son extractos de código de programas más grandes y deben ejecutarse en contexto. Mientras las acciones muestran cómo llamar a las distintas funciones de servicio, es posible ver las acciones en contexto en los escenarios relacionados.

En cada ejemplo se incluye un enlace al código de origen completo, con instrucciones de configuración y ejecución del código en el contexto.

Acciones

En el siguiente ejemplo de código, se muestra cómo utilizar create-aws-log-source.

AWS CLI

Para añadir un Amazon Web Service compatible de forma nativa como origen de Amazon Security Lake

En el siguiente ejemplo de create-aws-logsource, se agregan registros de flujo de VPC como origen de Security Lake en las cuentas y regiones designadas.

aws securitylake create-aws-log-source \ --sources '[{"regions": ["us-east-1"], "accounts": ["123456789012"], "sourceName": "SH_FINDINGS", "sourceVersion": "2.0"}]'

Salida:

{ "failed": [ "123456789012" ] }

Para obtener más información, consulte Adding an AWS service as a source en la Guía del usuario de Amazon Security Lake.

  • Para obtener información sobre la API, consulte CreateAwsLogSource en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar create-custom-log-source.

AWS CLI

Para añadir un origen personalizado como origen de Amazon Security Lake

En el siguiente ejemplo de create-custom-logsource, se agrega un origen personalizado como origen de Security Lake en la cuenta de proveedor de registros y en la región designadas.

aws securitylake create-custom-log-source \ --source-name "VPC_FLOW" \ --event-classes '["DNS_ACTIVITY", "NETWORK_ACTIVITY"]' \ --configuration '{"crawlerConfiguration": {"roleArn": "arn:aws:glue:eu-west-2:123456789012:crawler/E1WG1ZNPRXT0D4"},"providerIdentity": {"principal": "029189416600","externalId": "123456789012"}}' --region "us-east-1"

Salida:

{ "customLogSource": { "attributes": { "crawlerArn": "arn:aws:glue:eu-west-2:123456789012:crawler/E1WG1ZNPRXT0D4", "databaseArn": "arn:aws:glue:eu-west-2:123456789012:database/E1WG1ZNPRXT0D4", "tableArn": "arn:aws:glue:eu-west-2:123456789012:table/E1WG1ZNPRXT0D4" }, "provider": { "location": "amzn-s3-demo-bucket--usw2-az1--x-s3", "roleArn": "arn:aws:iam::123456789012:role/AmazonSecurityLake-Provider-testCustom2-eu-west-2" }, "sourceName": "testCustom2" "sourceVersion": "2.0" } }

Para obtener más información, consulte Adding a custom source en la Guía del usuario de Amazon Security Lake.

  • Para obtener información sobre la API, consulte CreateCustomLogSource en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar create-data-lake-exception-subscription.

AWS CLI

Para enviar notificaciones sobre las excepciones de Security Lake

En el siguiente ejemplo de create-data-lake-exception-subscription, se envían notificaciones de las excepciones de Security Lake a la cuenta especificada mediante el envío de SMS. El mensaje de excepción permanece durante el período de tiempo especificado.

aws securitylake create-data-lake-exception-subscription \ --notification-endpoint "123456789012" \ --exception-time-to-live 30 \ --subscription-protocol "sms"

Este comando no genera ninguna salida.

Para obtener más información, consulte Troubleshooting Amazon Security Lake en la Guía del usuario de Amazon Security Lake.

En el siguiente ejemplo de código, se muestra cómo utilizar create-data-lake-organization-configuration.

AWS CLI

Para configurar Security Lake en las cuentas nuevas de una organización

En el siguiente ejemplo de create-data-lake-organization-configuration, se activa Security Lake y la recopilación de los eventos y registros de origen especificados en las nuevas cuentas de la organización.

aws securitylake create-data-lake-organization-configuration \ --auto-enable-new-account '[{"region":"us-east-1","sources":[{"sourceName":"SH_FINDINGS","sourceVersion": "1.0"}]}]'

Este comando no genera ninguna salida.

Para obtener más información, consulte Managing multiple accounts with AWS Organizations en la Guía del usuario de Amazon Security Lake.

En el siguiente ejemplo de código, se muestra cómo utilizar create-data-lake.

AWS CLI

Ejemplo 1: configuración del lago de datos en varias regiones

En el siguiente ejemplo de create-data-lake, se habilita Amazon Security Lake en varias regiones de AWS y se configura su lago de datos.

aws securitylake create-data-lake \ --configurations '[{"encryptionConfiguration": {"kmsKeyId":"S3_MANAGED_KEY"},"region":"us-east-1","lifecycleConfiguration": {"expiration":{"days":365},"transitions":[{"days":60,"storageClass":"ONEZONE_IA"}]}}, {"encryptionConfiguration": {"kmsKeyId":"S3_MANAGED_KEY"},"region":"us-east-2","lifecycleConfiguration": {"expiration":{"days":365},"transitions":[{"days":60,"storageClass":"ONEZONE_IA"}]}}]' \ --meta-store-manager-role-arn "arn:aws:iam:us-east-1:123456789012:role/service-role/AmazonSecurityLakeMetaStoreManager"

Salida:

{ "dataLakes": [ { "createStatus": "COMPLETED", "dataLakeArn": "arn:aws:securitylake:us-east-1:522481757177:data-lake/default", "encryptionConfiguration": { "kmsKeyId": "S3_MANAGED_KEY" }, "lifecycleConfiguration": { "expiration": { "days": 365 }, "transitions": [ { "days": 60, "storageClass": "ONEZONE_IA" } ] }, "region": "us-east-1", "replicationConfiguration": { "regions": [ "ap-northeast-3" ], "roleArn": "arn:aws:securitylake:ap-northeast-3:522481757177:data-lake/default" }, "s3BucketArn": "arn:aws:s3:::aws-security-data-lake-us-east-1-gnevt6s8z7bzby8oi3uiaysbr8v2ml", "updateStatus": { "exception": {}, "requestId": "f20a6450-d24a-4f87-a6be-1d4c075a59c2", "status": "INITIALIZED" } }, { "createStatus": "COMPLETED", "dataLakeArn": "arn:aws:securitylake:us-east-2:522481757177:data-lake/default", "encryptionConfiguration": { "kmsKeyId": "S3_MANAGED_KEY" }, "lifecycleConfiguration": { "expiration": { "days": 365 }, "transitions": [ { "days": 60, "storageClass": "ONEZONE_IA" } ] }, "region": "us-east-2", "replicationConfiguration": { "regions": [ "ap-northeast-3" ], "roleArn": "arn:aws:securitylake:ap-northeast-3:522481757177:data-lake/default" }, "s3BucketArn": "arn:aws:s3:::aws-security-data-lake-us-east-2-cehuifzl5rwmhm6m62h7zhvtseogr9", "updateStatus": { "exception": {}, "requestId": "f20a6450-d24a-4f87-a6be-1d4c075a59c2", "status": "INITIALIZED" } } ] }

Para obtener más información, consulte Getting started with Amazon Security Lake en la Guía del usuario de Amazon Security Lake.

Ejemplo 2: configuración del lago de datos en una única región

En el siguiente ejemplo de create-data-lake, se habilita Amazon Security Lake en una única región de AWS y se configura su lago de datos.

aws securitylake create-data-lake \ --configurations '[{"encryptionConfiguration": {"kmsKeyId":"1234abcd-12ab-34cd-56ef-1234567890ab"},"region":"us-east-2","lifecycleConfiguration": {"expiration":{"days":500},"transitions":[{"days":30,"storageClass":"GLACIER"}]}}]' \ --meta-store-manager-role-arn "arn:aws:iam:us-east-1:123456789012:role/service-role/AmazonSecurityLakeMetaStoreManager"

Salida:

{ "dataLakes": [ { "createStatus": "COMPLETED", "dataLakeArn": "arn:aws:securitylake:us-east-2:522481757177:data-lake/default", "encryptionConfiguration": { "kmsKeyId": "1234abcd-12ab-34cd-56ef-1234567890ab" }, "lifecycleConfiguration": { "expiration": { "days": 500 }, "transitions": [ { "days": 30, "storageClass": "GLACIER" } ] }, "region": "us-east-2", "replicationConfiguration": { "regions": [ "ap-northeast-3" ], "roleArn": "arn:aws:securitylake:ap-northeast-3:522481757177:data-lake/default" }, "s3BucketArn": "arn:aws:s3:::aws-security-data-lake-us-east-2-cehuifzl5rwmhm6m62h7zhvtseogr9", "updateStatus": { "exception": {}, "requestId": "77702a53-dcbf-493e-b8ef-518e362f3003", "status": "INITIALIZED" } } ] }

Para obtener más información, consulte Getting started with Amazon Security Lake en la Guía del usuario de Amazon Security Lake.

  • Para obtener información sobre la API, consulte CreateDataLake en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar create-subscriber-notification.

AWS CLI

Para crear una notificación para el suscriptor

En el siguiente ejemplo de create-subscriber-notification, se muestra cómo especificar una notificación para el suscriptor para crear una notificación cuando se escriban nuevos datos en el lago de datos.

aws securitylake create-subscriber-notification \ --subscriber-id "12345ab8-1a34-1c34-1bd4-12345ab9012" \ --configuration '{"httpsNotificationConfiguration": {"targetRoleArn":"arn:aws:iam::XXX:role/service-role/RoleName", "endpoint":"https://account-management.$3.$2.securitylake.aws.dev/v1/datalake"}}'

Salida:

{ "subscriberEndpoint": [ "https://account-management.$3.$2.securitylake.aws.dev/v1/datalake" ] }

Para obtener más información, consulte Subscriber management en la Guía del usuario de Amazon Security Lake.

En el siguiente ejemplo de código, se muestra cómo utilizar create-subscriber.

AWS CLI

Ejemplo 1: creación de un suscriptor con acceso de datos

En el siguiente ejemplo de create-subscriber, se crea un suscriptor en Security Lake con acceso a los datos de la región de AWS actual para la identidad de suscriptor especificada para un origen de AWS.

aws securitylake create-subscriber \ --access-types "S3" \ --sources '[{"awsLogSource": {"sourceName": "VPC_FLOW","sourceVersion": "2.0"}}]' \ --subscriber-name 'opensearch-s3' \ --subscriber-identity '{"principal": "029189416600","externalId": "123456789012"}'

Salida:

{ "subscriber": { "accessTypes": [ "S3" ], "createdAt": "2024-07-17T19:08:26.787000+00:00", "roleArn": "arn:aws:iam::773172568199:role/AmazonSecurityLake-896f218b-cfba-40be-a255-8b49a65d0407", "s3BucketArn": "arn:aws:s3:::aws-security-data-lake-us-east-1-um632ufwpvxkyz0bc5hkb64atycnf3", "sources": [ { "awsLogSource": { "sourceName": "VPC_FLOW", "sourceVersion": "2.0" } } ], "subscriberArn": "arn:aws:securitylake:us-east-1:773172568199:subscriber/896f218b-cfba-40be-a255-8b49a65d0407", "subscriberId": "896f218b-cfba-40be-a255-8b49a65d0407", "subscriberIdentity": { "externalId": "123456789012", "principal": "029189416600" }, "subscriberName": "opensearch-s3", "subscriberStatus": "ACTIVE", "updatedAt": "2024-07-17T19:08:27.133000+00:00" } }

Para obtener más información, consulte Creating a subscriber with data access en la Guía del usuario de Amazon Security Lake.

Ejemplo 2: creación de un suscriptor con acceso de consulta

En el siguiente ejemplo de create-subscriber, se crea un suscriptor en Security Lake con acceso de consulta en la región de AWS actual para la identidad de suscriptor especificada.

aws securitylake create-subscriber \ --access-types "LAKEFORMATION" \ --sources '[{"awsLogSource": {"sourceName": "VPC_FLOW","sourceVersion": "2.0"}}]' \ --subscriber-name 'opensearch-s3' \ --subscriber-identity '{"principal": "029189416600","externalId": "123456789012"}'

Salida:

{ "subscriber": { "accessTypes": [ "LAKEFORMATION" ], "createdAt": "2024-07-18T01:05:55.853000+00:00", "resourceShareArn": "arn:aws:ram:us-east-1:123456789012:resource-share/8c31da49-c224-4f1e-bb12-37ab756d6d8a", "resourceShareName": "LakeFormation-V2-NAMENAMENA-123456789012", "sources": [ { "awsLogSource": { "sourceName": "VPC_FLOW", "sourceVersion": "2.0" } } ], "subscriberArn": "arn:aws:securitylake:us-east-1:123456789012:subscriber/e762aabb-ce3d-4585-beab-63474597845d", "subscriberId": "e762aabb-ce3d-4585-beab-63474597845d", "subscriberIdentity": { "externalId": "123456789012", "principal": "029189416600" }, "subscriberName": "opensearch-s3", "subscriberStatus": "ACTIVE", "updatedAt": "2024-07-18T01:05:58.393000+00:00" } }

Para obtener más información, consulte Creating a subscriber with query access en la Guía del usuario de Amazon Security Lake.

  • Para obtener información sobre la API, consulte CreateSubscriber en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar delete-aws-log-source.

AWS CLI

Para eliminar un servicio de AWS compatible de forma nativa

En el siguiente ejemplo de delete-aws-logsource, se eliminan registros de flujo de VPC como origen de Security Lake en las cuentas y regiones designadas.

aws securitylake delete-aws-log-source \ --sources '[{"regions": ["us-east-1"], "accounts": ["123456789012"], "sourceName": "SH_FINDINGS", "sourceVersion": "2.0"}]'

Salida:

{ "failed": [ "123456789012" ] }

Para obtener más información, consulte Removing an AWS service as a source en la Guía del usuario de Amazon Security Lake.

  • Para obtener información sobre la API, consulte DeleteAwsLogSource en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar delete-custom-log-source.

AWS CLI

Para eliminar un origen personalizado

En el siguiente ejemplo de delete-custom-logsource, se elimina un origen personalizado en la cuenta de proveedor de registros y la región designadas.

aws securitylake delete-custom-log-source \ --source-name "CustomSourceName"

Este comando no genera ninguna salida.

Para obtener más información, consulte Deleting a custom source en la Guía del usuario de Amazon Security Lake.

  • Para obtener información sobre la API, consulte DeleteCustomLogSource en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar delete-data-lake-organization-configuration.

AWS CLI

Para detener la recopilación automática de orígenes en las cuentas de los miembros

En el siguiente ejemplo de delete-data-lake-organization-configuration, se detiene la recopilación automática de los resultados de AWS Security Hub de las cuentas de los nuevos miembros que se unen a la organización. Solo el administrador delegado de Security Lake puede ejecutar este comando. Impide que las cuentas de los nuevos miembros aporten datos automáticamente al lago de datos.

aws securitylake delete-data-lake-organization-configuration \ --auto-enable-new-account '[{"region":"us-east-1","sources":[{"sourceName":"SH_FINDINGS"}]}]'

Este comando no genera ninguna salida.

Para obtener más información, consulte Managing multiple accounts with AWS Organizations en la Guía del usuario de Amazon Security Lake.

En el siguiente ejemplo de código, se muestra cómo utilizar delete-data-lake.

AWS CLI

Para deshabilitar su lago de datos

En el siguiente ejemplo de delete-data-lake, se deshabilita el lago de datos en las regiones de AWS especificadas. En las regiones especificadas, los orígenes ya no aportan datos al lago de datos. En el caso de una implementación de Security Lake con AWS Organizations, solo el administrador delegado de Security Lake de la organización puede desactivar Security Lake para las cuentas de la organización.

aws securitylake delete-data-lake \ --regions "ap-northeast-1" "eu-central-1"

Este comando no genera ninguna salida.

Para obtener más información, consulte Disabling Amazon Security Lake en la Guía del usuario de Amazon Security Lake.

  • Para obtener información sobre la API, consulte DeleteDataLake en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar delete-subscriber-notification.

AWS CLI

Para eliminar una notificación para suscriptores

En el siguiente ejemplo de delete-subscriber-notification, se muestra cómo eliminar la notificación para un suscriptor específico de Security Lake.

aws securitylake delete-subscriber-notification \ --subscriber-id "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"

Este comando no genera ninguna salida.

Para obtener más información, consulte Subscriber management en la Guía del usuario de Amazon Security Lake.

En el siguiente ejemplo de código, se muestra cómo utilizar delete-subscriber.

AWS CLI

Para eliminar un suscriptor

En el siguiente ejemplo de delete-subscriber, se muestra cómo eliminar un suscriptor si quiere que deje de consumir datos de Security Lake.

aws securitylake delete-subscriber \ --subscriber-id "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"

Este comando no genera ninguna salida.

Para obtener más información, consulte Subscriber management en la Guía del usuario de Amazon Security Lake.

  • Para obtener información sobre la API, consulte DeleteSubscriber en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar get-data-lake-exception-subscription.

AWS CLI

Para obtener detalles sobre una suscripción de excepción

En el siguiente ejemplo de get-data-lake-exception-subscription, se proporcionan detalles sobre una suscripción de excepción a Security Lake. En este ejemplo, se notifica de los errores al usuario de la cuenta de AWS especificada mediante el envío de un SMS. El mensaje de excepción permanece en la cuenta durante el período de tiempo especificado. Una suscripción de excepción notifica un error a un usuario de Security Lake mediante el protocolo preferido del solicitante.

aws securitylake get-data-lake-exception-subscription

Salida:

{ "exceptionTimeToLive": 30, "notificationEndpoint": "123456789012", "subscriptionProtocol": "sms" }

Para obtener más información, consulte Troubleshooting data lake status en la Guía del usuario de Amazon Security Lake.

En el siguiente ejemplo de código, se muestra cómo utilizar get-data-lake-organization-configuration.

AWS CLI

Para obtener detalles sobre la configuración de las nuevas cuentas de la organización

En el siguiente ejemplo de get-data-lake-organization-configuration, se recuperan detalles sobre los registros de origen que las nuevas cuentas de la organización enviarán después de incorporarse a Amazon Security Lake.

aws securitylake get-data-lake-organization-configuration

Salida:

{ "autoEnableNewAccount": [ { "region": "us-east-1", "sources": [ { "sourceName": "VPC_FLOW", "sourceVersion": "1.0" }, { "sourceName": "ROUTE53", "sourceVersion": "1.0" }, { "sourceName": "SH_FINDINGS", "sourceVersion": "1.0" } ] } ] }

Para obtener más información, consulte Managing multiple accounts with AWS Organizations en la Guía del usuario de Amazon Security Lake.

En el siguiente ejemplo de código, se muestra cómo utilizar get-data-lake-sources.

AWS CLI

Para obtener el estado de la recopilación de registros

En el siguiente ejemplo de get-data-lake-sources, se obtiene una instantánea de la recopilación de registros de la cuenta especificada en la región de AWS actual. La cuenta tiene Amazon Security Lake activado.

aws securitylake get-data-lake-sources \ --accounts "123456789012"

Salida:

{ "dataLakeSources": [ { "account": "123456789012", "sourceName": "SH_FINDINGS", "sourceStatuses": [ { "resource": "vpc-1234567890abcdef0", "status": "COLLECTING" } ] }, { "account": "123456789012", "sourceName": "VPC_FLOW", "sourceStatuses": [ { "resource": "vpc-1234567890abcdef0", "status": "NOT_COLLECTING" } ] }, { "account": "123456789012", "sourceName": "LAMBDA_EXECUTION", "sourceStatuses": [ { "resource": "vpc-1234567890abcdef0", "status": "COLLECTING" } ] }, { "account": "123456789012", "sourceName": "ROUTE53", "sourceStatuses": [ { "resource": "vpc-1234567890abcdef0", "status": "COLLECTING" } ] }, { "account": "123456789012", "sourceName": "CLOUD_TRAIL_MGMT", "sourceStatuses": [ { "resource": "vpc-1234567890abcdef0", "status": "COLLECTING" } ] } ], "dataLakeArn": null }

Para obtener más información, consulte Collecting data from AWS services en la Guía del usuario de Amazon Security Lake.

  • Para obtener información sobre la API, consulte GetDataLakeSources en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar get-subscriber.

AWS CLI

Para recuperar la información de la suscripción

En el siguiente ejemplo de get-subscriber, se recupera la información de suscripción del suscriptor de Securiy Lake especificado.

aws securitylake get-subscriber \ --subscriber-id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111

Salida:

{ "subscriber": { "accessTypes": [ "LAKEFORMATION" ], "createdAt": "2024-04-19T15:19:44.421803+00:00", "resourceShareArn": "arn:aws:ram:eu-west-2:123456789012:resource-share/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "resourceShareName": "LakeFormation-V3-TKJGBHCKTZ-123456789012", "sources": [ { "awsLogSource": { "sourceName": "LAMBDA_EXECUTION", "sourceVersion": "1.0" } }, { "awsLogSource": { "sourceName": "EKS_AUDIT", "sourceVersion": "2.0" } }, { "awsLogSource": { "sourceName": "ROUTE53", "sourceVersion": "1.0" } }, { "awsLogSource": { "sourceName": "SH_FINDINGS", "sourceVersion": "1.0" } }, { "awsLogSource": { "sourceName": "VPC_FLOW", "sourceVersion": "1.0" } }, { "customLogSource": { "attributes": { "crawlerArn": "arn:aws:glue:eu-west-2:123456789012:crawler/testCustom2", "databaseArn": "arn:aws:glue:eu-west-2:123456789012:database/amazon_security_lake_glue_db_eu_west_2", "tableArn": "arn:aws:glue:eu-west-2:123456789012:table/amazon_security_lake_table_eu_west_2_ext_testcustom2" }, "provider": { "location": "s3://aws-security-data-lake-eu-west-2-8ugsus4ztnsfpjbldwbgf4vge98av9/ext/testCustom2/", "roleArn": "arn:aws:iam::123456789012:role/AmazonSecurityLake-Provider-testCustom2-eu-west-2" }, "sourceName": "testCustom2" } }, { "customLogSource": { "attributes": { "crawlerArn": "arn:aws:glue:eu-west-2:123456789012:crawler/TestCustom", "databaseArn": "arn:aws:glue:eu-west-2:123456789012:database/amazon_security_lake_glue_db_eu_west_2", "tableArn": "arn:aws:glue:eu-west-2:123456789012:table/amazon_security_lake_table_eu_west_2_ext_testcustom" }, "provider": { "location": "s3://aws-security-data-lake-eu-west-2-8ugsus4ztnsfpjbldwbgf4vge98av9/ext/TestCustom/", "roleArn": "arn:aws:iam::123456789012:role/AmazonSecurityLake-Provider-TestCustom-eu-west-2" }, "sourceName": "TestCustom" } } ], "subscriberArn": "arn:aws:securitylake:eu-west-2:123456789012:subscriber/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "subscriberId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "subscriberIdentity": { "externalId": "123456789012", "principal": "123456789012" }, "subscriberName": "test", "subscriberStatus": "ACTIVE", "updatedAt": "2024-04-19T15:19:55.230588+00:00" } }

Para obtener más información, consulte Subscriber management en la Guía del usuario de Amazon Security Lake.

  • Para obtener información sobre la API, consulte GetSubscriber en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar list-data-lake-exceptions.

AWS CLI

Para enumerar los problemas que afectan a su lago de datos

En el siguiente ejemplo de list-data-lake-exceptions, se enumeran los problemas que han afectado a su lago de datos en los últimos 14 días en las regiones de AWS especificadas.

aws securitylake list-data-lake-exceptions \ --regions "us-east-1" "eu-west-3"

Salida:

{ "exceptions": [ { "exception": "The account does not have the required role permissions. Update your role permissions to use the new data source version.", "region": "us-east-1", "timestamp": "2024-02-29T12:24:15.641725+00:00" }, { "exception": "The account does not have the required role permissions. Update your role permissions to use the new data source version.", "region": "eu-west-3", "timestamp": "2024-02-29T12:24:15.641725+00:00" } ] }

Para obtener más información, consulte Troubleshooting Amazon Security Lake en la Guía del usuario de Amazon Security Lake.

  • Para obtener información sobre la API, consulte ListDataLakeExceptions en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar list-data-lakes.

AWS CLI

Para enumerar el objeto de configuración de Security Lake

En el siguiente ejemplo de list-data-lakes, se muestra el objeto de configuración de Amazon Security Lake para la región de AWS especificada. Puede usar este comando para determinar si Security Lake está activado en una o varias regiones especificadas.

aws securitylake list-data-lakes \ --regions "us-east-1"

Salida:

{ "dataLakes": [ { "createStatus": "COMPLETED", "dataLakeArn": "arn:aws:securitylake:us-east-1:123456789012:data-lake/default", "encryptionConfiguration": { "kmsKeyId": "S3_MANAGED_KEY" }, "lifecycleConfiguration": { "expiration": { "days": 365 }, "transitions": [ { "days": 60, "storageClass": "ONEZONE_IA" } ] }, "region": "us-east-1", "replicationConfiguration": { "regions": [ "ap-northeast-3" ], "roleArn": "arn:aws:securitylake:ap-northeast-3:123456789012:data-lake/default" }, "s3BucketArn": "arn:aws:s3:::aws-security-data-lake-us-east-1-1234567890abcdef0", "updateStatus": { "exception": { "code": "software.amazon.awssdk.services.s3.model.S3Exception", "reason": "" }, "requestId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "status": "FAILED" } } ] }

Para obtener más información, consulte Checking Region status en la Guía del usuario de Amazon Security Lake.

  • Para obtener información sobre la API, consulte ListDataLakes en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar list-log-sources.

AWS CLI

Para recuperar los orígenes de registro de Amazon Security Lake

En el siguiente ejemplo de list-log-sources, se enumeran los orígenes de registro de Amazon Security Lake en una cuenta específica.

aws securitylake list-log-sources \ --accounts "123456789012"

Salida:

{ "account": "123456789012", "region": "xy-region-1", "sources": [ { "awsLogSource": { "sourceName": "VPC_FLOW", "sourceVersion": "2.0" } }, { "awsLogSource": { "sourceName": "SH_FINDINGS", "sourceVersion": "2.0" } } ] }

Para obtener más información, consulte Source management en la Guía del usuario de Amazon Security Lake.

  • Para obtener detalles de la API, consulte ListLogSources en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar list-subscribers.

AWS CLI

Para recuperar los suscriptores de Amazon Security Lake

En el siguiente ejemplo de list-subscribers, se enumeran todos los suscriptores de Amazon Security Lake de una cuenta específica.

aws securitylake list-subscribers

Salida:

{ "subscribers": [ { "accessTypes": [ "S3" ], "createdAt": "2024-06-04T15:02:28.921000+00:00", "roleArn": "arn:aws:iam::123456789012:role/AmazonSecurityLake-E1WG1ZNPRXT0D4", "s3BucketArn": "amzn-s3-demo-bucket--usw2-az1--x-s3", "sources": [ { "awsLogSource": { "sourceName": "CLOUD_TRAIL_MGMT", "sourceVersion": "2.0" } }, { "awsLogSource": { "sourceName": "LAMBDA_EXECUTION", "sourceVersion": "1.0" } }, { "customLogSource": { "attributes": { "crawlerArn": "arn:aws:glue:eu-west-2:123456789012:crawler/E1WG1ZNPRXT0D4", "databaseArn": "arn:aws:glue:eu-west-2:123456789012:database/E1WG1ZNPRXT0D4", "tableArn": "arn:aws:glue:eu-west-2:123456789012:table/E1WG1ZNPRXT0D4" }, "provider": { "location": "amzn-s3-demo-bucket--usw2-az1--x-s3", "roleArn": "arn:aws:iam::123456789012:role/AmazonSecurityLake-E1WG1ZNPRXT0D4" }, "sourceName": "testCustom2" } } ], "subscriberArn": "arn:aws:securitylake:eu-west-2:123456789012:subscriber/E1WG1ZNPRXT0D4", "subscriberEndpoint": "arn:aws:sqs:eu-west-2:123456789012:AmazonSecurityLake-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111-Main-Queue", "subscriberId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "subscriberIdentity": { "externalId": "ext123456789012", "principal": "123456789012" }, "subscriberName": "Test", "subscriberStatus": "ACTIVE", "updatedAt": "2024-06-04T15:02:35.617000+00:00" } ] }

Para obtener más información, consulte Subscriber management en la Guía del usuario de Amazon Security Lake.

  • Para obtener información sobre la API, consulte ListSubscribers en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar list-tags-for-resource.

AWS CLI

Para enumerar las etiquetas para un recurso existente

En el siguiente ejemplo de list-tags-for-resource, se enumeran todas las etiquetas del suscriptor de Amazon Security Lake específico. En este ejemplo, la clave de la etiqueta Owner no tiene ningún valor de etiqueta asociado. También puede utilizar esta operación para enumerar las etiquetas de otros recursos de Security Lake existentes.

aws securitylake list-tags-for-resource \ --resource-arn "arn:aws:securitylake:us-east-1:123456789012:subscriber/1234abcd-12ab-34cd-56ef-1234567890ab"

Salida:

{ "tags": [ { "key": "Environment", "value": "Cloud" }, { "key": "CostCenter", "value": "12345" }, { "key": "Owner", "value": "" } ] }

Para obtener más información, consulte Tagging Amazon Security Lake resources en la Guía del usuario de Amazon Security Lake.

  • Para ver los detalles de la API, consulte ListTagsForResource en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar register-data-lake-delegated-administrator.

AWS CLI

Para designar al administrador delegado

En el siguiente ejemplo de register-data-lake-delegated-administrator, se designa la cuenta de AWS especificada como administrador de Amazon Security Lake delegado.

aws securitylake register-data-lake-delegated-administrator \ --account-id 123456789012

Este comando no genera ninguna salida.

Para obtener más información, consulte Managing multiple accounts with AWS Organizations en la Guía del usuario de Amazon Security Lake.

En el siguiente ejemplo de código, se muestra cómo utilizar tag-resource.

AWS CLI

Para agregar etiquetas a un recurso existente

En el siguiente ejemplo de tag-resource, se agregan etiquetas a un recurso de suscriptor existente. Para crear un recurso nuevo y añadirle una o más etiquetas, no utilice esta operación. En su lugar, utilice la operación Create adecuada según el tipo de recurso que desee crear.

aws securitylake tag-resource \ --resource-arn "arn:aws:securitylake:us-east-1:123456789012:subscriber/1234abcd-12ab-34cd-56ef-1234567890ab" \ --tags key=Environment,value=Cloud

Este comando no genera ninguna salida.

Para obtener más información, consulte Tagging Amazon Security Lake resources en la Guía del usuario de Amazon Security Lake.

  • Para ver los detalles de la API, consulte TagResource en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar untag-resource.

AWS CLI

Para eliminar etiquetas de un recurso existente

En el siguiente ejemplo de untag-resource, se eliminan las etiquetas especificadas de un recurso de suscriptor especificado.

aws securitylake untag-resource \ --resource-arn "arn:aws:securitylake:us-east-1:123456789012:subscriber/1234abcd-12ab-34cd-56ef-1234567890ab" \ --tags Environment Owner

Este comando no genera ninguna salida.

Para obtener más información, consulte Tagging Amazon Security Lake resources en la Guía del usuario de Amazon Security Lake.

  • Para ver los detalles de la API, consulte UntagResource en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar update-data-lake-exception-subscription.

AWS CLI

Para actualizar la suscripción de notificaciones para las excepciones de Security Lake

En el siguiente ejemplo de update-data-lake-exception-subscription, se actualiza la suscripción a notificaciones que informa a los usuarios de las excepciones de Security Lake.

aws securitylake update-data-lake-exception-subscription \ --notification-endpoint "123456789012" \ --exception-time-to-live 30 \ --subscription-protocol "email"

Este comando no genera ninguna salida.

Para obtener más información, consulte Troubleshooting Amazon Security Lake en la Guía del usuario de Amazon Security Lake.

En el siguiente ejemplo de código, se muestra cómo utilizar update-data-lake.

AWS CLI

Ejemplo 1: actualización de la configuración del lago de datos

En el siguiente ejemplo de update-data-lake, se actualiza la configuración de su lago de datos de Amazon Security Lake. Puede utilizar esta operación para especificar la configuración del cifrado de datos, el almacenamiento y la región de acumulación.

aws securitylake update-data-lake \ --configurations '[{"encryptionConfiguration": {"kmsKeyId":"S3_MANAGED_KEY"},"region":"us-east-1","lifecycleConfiguration": {"expiration":{"days":365},"transitions":[{"days":60,"storageClass":"ONEZONE_IA"}]}}, {"encryptionConfiguration": {"kmsKeyId":"S3_MANAGED_KEY"},"region":"us-east-2","lifecycleConfiguration": {"expiration":{"days":365},"transitions":[{"days":60,"storageClass":"ONEZONE_IA"}]}}]' \ --meta-store-manager-role-arn "arn:aws:iam:us-east-1:123456789012:role/service-role/AmazonSecurityLakeMetaStoreManager"

Salida:

{ "dataLakes": [ { "createStatus": "COMPLETED", "dataLakeArn": "arn:aws:securitylake:us-east-1:522481757177:data-lake/default", "encryptionConfiguration": { "kmsKeyId": "S3_MANAGED_KEY" }, "lifecycleConfiguration": { "expiration": { "days": 365 }, "transitions": [ { "days": 60, "storageClass": "ONEZONE_IA" } ] }, "region": "us-east-1", "replicationConfiguration": { "regions": [ "ap-northeast-3" ], "roleArn": "arn:aws:securitylake:ap-northeast-3:522481757177:data-lake/default" }, "s3BucketArn": "arn:aws:s3:::aws-security-data-lake-us-east-1-gnevt6s8z7bzby8oi3uiaysbr8v2ml", "updateStatus": { "exception": {}, "requestId": "f20a6450-d24a-4f87-a6be-1d4c075a59c2", "status": "INITIALIZED" } }, { "createStatus": "COMPLETED", "dataLakeArn": "arn:aws:securitylake:us-east-2:522481757177:data-lake/default", "encryptionConfiguration": { "kmsKeyId": "S3_MANAGED_KEY" }, "lifecycleConfiguration": { "expiration": { "days": 365 }, "transitions": [ { "days": 60, "storageClass": "ONEZONE_IA" } ] }, "region": "us-east-2", "replicationConfiguration": { "regions": [ "ap-northeast-3" ], "roleArn": "arn:aws:securitylake:ap-northeast-3:522481757177:data-lake/default" }, "s3BucketArn": "arn:aws:s3:::aws-security-data-lake-us-east-2-cehuifzl5rwmhm6m62h7zhvtseogr9", "updateStatus": { "exception": {}, "requestId": "f20a6450-d24a-4f87-a6be-1d4c075a59c2", "status": "INITIALIZED" } } ] }

Para obtener más información, consulte Getting started with Amazon Security Lake en la Guía del usuario de Amazon Security Lake.

Ejemplo 2: configuración del lago de datos en una única región

En el siguiente ejemplo de create-data-lake, se habilita Amazon Security Lake en una única región de AWS y se configura su lago de datos.

aws securitylake create-data-lake \ --configurations '[{"encryptionConfiguration": {"kmsKeyId":"1234abcd-12ab-34cd-56ef-1234567890ab"},"region":"us-east-2","lifecycleConfiguration": {"expiration":{"days":500},"transitions":[{"days":30,"storageClass":"GLACIER"}]}}]' \ --meta-store-manager-role-arn "arn:aws:iam:us-east-1:123456789012:role/service-role/AmazonSecurityLakeMetaStoreManager"

Salida:

{ "dataLakes": [ { "createStatus": "COMPLETED", "dataLakeArn": "arn:aws:securitylake:us-east-2:522481757177:data-lake/default", "encryptionConfiguration": { "kmsKeyId": "1234abcd-12ab-34cd-56ef-1234567890ab" }, "lifecycleConfiguration": { "expiration": { "days": 500 }, "transitions": [ { "days": 30, "storageClass": "GLACIER" } ] }, "region": "us-east-2", "replicationConfiguration": { "regions": [ "ap-northeast-3" ], "roleArn": "arn:aws:securitylake:ap-northeast-3:522481757177:data-lake/default" }, "s3BucketArn": "arn:aws:s3:::aws-security-data-lake-us-east-2-cehuifzl5rwmhm6m62h7zhvtseogr9", "updateStatus": { "exception": {}, "requestId": "77702a53-dcbf-493e-b8ef-518e362f3003", "status": "INITIALIZED" } } ] }

Para obtener más información, consulte Getting started with Amazon Security Lake en la Guía del usuario de Amazon Security Lake.

  • Para obtener detalles sobre la API, consulte UpdateDataLake en la Referencia de comandos de la AWS CLI.

En el siguiente ejemplo de código, se muestra cómo utilizar update-subscriber-notification.

AWS CLI

Para actualizar una notificación de suscriptor

En el siguiente ejemplo de update-subscriber-notification, se muestra cómo se puede actualizar el método de notificación de un suscriptor.

aws securitylake update-subscriber-notification \ --subscriber-id "12345ab8-1a34-1c34-1bd4-12345ab9012" \ --configuration '{"httpsNotificationConfiguration": {"targetRoleArn":"arn:aws:iam::XXX:role/service-role/RoleName", "endpoint":"https://account-management.$3.$2.securitylake.aws.dev/v1/datalake"}}'

Salida:

{ "subscriberEndpoint": [ "https://account-management.$3.$2.securitylake.aws.dev/v1/datalake" ] }

Para obtener más información, consulte Subscriber management en la Guía del usuario de Amazon Security Lake.

En el siguiente ejemplo de código, se muestra cómo utilizar update-subscriber.

AWS CLI

Para actualizar un suscriptor de Amazon Security Lake

En el siguiente ejemplo de update-subscriber, se actualizan los orígenes de acceso a los datos de Security Lake para un suscriptor de Security Lake específico.

aws securitylake update-subscriber \ --subscriber-id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111

Salida:

{ "subscriber": { "accessTypes": [ "LAKEFORMATION" ], "createdAt": "2024-04-19T15:19:44.421803+00:00", "resourceShareArn": "arn:aws:ram:eu-west-2:123456789012:resource-share/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "resourceShareName": "LakeFormation-V3-TKJGBHCKTZ-123456789012", "sources": [ { "awsLogSource": { "sourceName": "LAMBDA_EXECUTION", "sourceVersion": "1.0" } }, { "awsLogSource": { "sourceName": "EKS_AUDIT", "sourceVersion": "2.0" } }, { "awsLogSource": { "sourceName": "ROUTE53", "sourceVersion": "1.0" } }, { "awsLogSource": { "sourceName": "SH_FINDINGS", "sourceVersion": "1.0" } }, { "awsLogSource": { "sourceName": "VPC_FLOW", "sourceVersion": "1.0" } }, { "customLogSource": { "attributes": { "crawlerArn": "arn:aws:glue:eu-west-2:123456789012:crawler/E1WG1ZNPRXT0D4", "databaseArn": "arn:aws:glue:eu-west-2:123456789012:database/E1WG1ZNPRXT0D4", "tableArn": "arn:aws:glue:eu-west-2:123456789012:table/E1WG1ZNPRXT0D4" }, "provider": { "location": "amzn-s3-demo-bucket--usw2-az1--x-s3", "roleArn": "arn:aws:iam::123456789012:role/AmazonSecurityLake-E1WG1ZNPRXT0D4" }, "sourceName": "testCustom2" } } ], "subscriberArn": "arn:aws:securitylake:eu-west-2:123456789012:subscriber/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "subscriberId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "subscriberIdentity": { "externalId": "123456789012", "principal": "123456789012" }, "subscriberName": "test", "subscriberStatus": "ACTIVE", "updatedAt": "2024-07-18T20:47:37.098000+00:00" } }

Para obtener más información, consulte Subscriber management en la Guía del usuario de Amazon Security Lake.

  • Para obtener información sobre la API, consulte UpdateSubscriber en la Referencia de comandos de la AWS CLI.