Exemples d’utilisation de l’AWS CLI avec Security Lake - AWS Command Line Interface

Exemples d’utilisation de l’AWS CLI avec Security Lake

Les exemples de code suivants montrent comment réaliser des actions et mettre en œuvre des scénarios courants en utilisant l’AWS Command Line Interface avec Security Lake.

Les actions sont des extraits de code de programmes plus larges et doivent être exécutées dans leur contexte. Alors que les actions vous indiquent comment appeler des fonctions de service individuelles, vous pouvez les voir en contexte dans leurs scénarios associés.

Chaque exemple inclut un lien vers le code source complet, où vous trouverez des instructions sur la configuration et l’exécution du code en contexte.

Rubriques

Actions

L’exemple de code suivant montre comment utiliser create-aws-log-source.

AWS CLI

Pour ajouter un service Amazon Web Service pris en charge nativement en tant que source Amazon Security Lake

L’exemple create-aws-logsource suivant ajoute les journaux de flux VPC en tant que source Security Lake dans les comptes et régions désignés.

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

Sortie :

{ "failed": [ "123456789012" ] }

Pour plus d’informations, consultez Adding an AWS service as a source dans le Guide de l’utilisateur Amazon Security Lake.

  • Pour plus de détails sur l’API, consultez CreateAwsLogSource dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser create-custom-log-source.

AWS CLI

Pour ajouter une source personnalisée en tant que source Amazon Security Lake

L’exemple create-custom-logsource suivant ajoute une source personnalisée en tant que source Security Lake dans le compte du fournisseur de journal et la région désignés.

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"

Sortie :

{ "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" } }

Pour plus d’informations, consultez Adding a custom source dans le Guide de l’utilisateur Amazon Security Lake.

  • Pour plus de détails sur l’API, consultez CreateCustomLogSource dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser create-data-lake-exception-subscription.

AWS CLI

Pour envoyer des notifications des exceptions Security Lake

L’exemple create-data-lake-exception-subscription suivant envoie par SMS des notifications des exceptions Security Lake au compte spécifié. Le message de l’exception reste affiché pendant la période spécifiée.

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

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Troubleshooting Amazon Security Lake dans le Guide de l’utilisateur Amazon Security Lake.

L’exemple de code suivant montre comment utiliser create-data-lake-organization-configuration.

AWS CLI

Pour configurer Security Lake dans les nouveaux comptes d’une organisation

L’exemple create-data-lake-organization-configuration suivant active Security Lake et la collecte des événements sources et des journaux spécifiés dans les nouveaux comptes de l’organisation.

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

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Gestion de plusieurs comptes avec AWS Organizations dans le Guide utilisateur Amazon Security Lake.

L’exemple de code suivant montre comment utiliser create-data-lake.

AWS CLI

Exemple 1 : pour configurer votre lac de données dans plusieurs régions

L’exemple create-data-lake suivant active Amazon Security Lake dans plusieurs régions AWS et configure votre lac de données.

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"

Sortie :

{ "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" } } ] }

Pour plus d’informations, consultez Premiers pas avec Amazon Security Lake dans le Guide de l’utilisateur Amazon Security Lake.

Exemple 2 : pour configurer votre lac de données dans une seule région

L’exemple create-data-lake suivant active Amazon Security Lake dans une seule région AWS et configure votre lac de données.

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"

Sortie :

{ "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" } } ] }

Pour plus d’informations, consultez Premiers pas avec Amazon Security Lake dans le Guide de l’utilisateur Amazon Security Lake.

  • Pour plus de détails sur l’API, consultez CreateDataLake dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser create-subscriber-notification.

AWS CLI

Pour créer une notification d’abonné

L’exemple create-subscriber-notification suivant montre comment spécifier une notification d’abonné pour créer une notification lorsque de nouvelles données sont écrites dans le lac de données.

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"}}'

Sortie :

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

Pour plus d’informations, consultez Gestion des abonnés dans le Guide de l’utilisateur Amazon Security Lake.

L’exemple de code suivant montre comment utiliser create-subscriber.

AWS CLI

Exemple 1 : pour créer un abonné disposant d’un accès aux données

L’exemple create-subscriber suivant crée dans Security Lake un abonné disposant d’un accès aux données dans la région AWS en cours pour l’identité d’abonné spécifiée d’une source 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"}'

Sortie :

{ "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" } }

Pour plus d’informations, consultez Création d’un abonné avec accès aux données dans le Guide de l’utilisateur Amazon Security Lake.

Exemple 2 : pour créer un abonné disposant d’un accès aux requêtes

L’exemple create-subscriber suivant crée dans Security Lake un abonné disposant d’un accès aux requêtes dans la région AWS en cours pour l’identité d’abonné spécifiée.

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"}'

Sortie :

{ "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" } }

Pour plus d’informations, consultez Création d’un abonné avec accès aux requêtes dans le Guide de l’utilisateur Amazon Security Lake.

  • Pour plus de détails sur l’API, consultez CreateSubscriber dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser delete-aws-log-source.

AWS CLI

Pour supprimer un service AWS pris en charge nativement

L’exemple delete-aws-logsource suivant supprime les journaux de flux VPC en tant que source Security Lake des comptes et régions désignés.

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

Sortie :

{ "failed": [ "123456789012" ] }

Pour plus d’informations, consultez Removing an AWS service as a source dans le Guide de l’utilisateur Amazon Security Lake.

  • Pour plus de détails sur l’API, consultez DeleteAwsLogSource dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser delete-custom-log-source.

AWS CLI

Pour supprimer une source personnalisée

L’exemple delete-custom-logsource suivant supprime une source personnalisée du compte du fournisseur de journal désigné dans la région désignée.

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

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Deleting a custom source dans le Guide de l’utilisateur Amazon Security Lake.

  • Pour plus de détails sur l’API, consultez DeleteCustomLogSource dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser delete-data-lake-organization-configuration.

AWS CLI

Pour arrêter la collecte automatique des sources dans les comptes membres

L’exemple delete-data-lake-organization-configuration suivant arrête la collecte automatique des résultats d’AWS Security Hub des nouveaux comptes membres qui rejoignent l’organisation. Seul l’administrateur Security Hub délégué peut exécuter cette commande. Cette dernière empêche les nouveaux comptes membres de fournir automatiquement des données au lac de données.

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

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Gestion de plusieurs comptes avec AWS Organizations dans le Guide utilisateur Amazon Security Lake.

L’exemple de code suivant montre comment utiliser delete-data-lake.

AWS CLI

Pour désactiver votre lac de données

L’exemple delete-data-lake suivant désactive votre lac de données dans les régions AWS spécifiées. Dans les régions spécifiées, les sources ne fournissent plus de données au lac de données. En cas de déploiement Security Lake utilisant AWS Organizations, seul l’administrateur délégué Security Lake de l’organisation peut désactiver Security Lake pour les comptes de l’organisation.

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

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Disabling Amazon Security Lake dans le Guide de l’utilisateur Amazon Security Lake.

  • Pour plus de détails sur l’API, consultez DeleteDataLake dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser delete-subscriber-notification.

AWS CLI

Pour supprimer une notification d’abonné

L’exemple delete-subscriber-notification suivant montre comment supprimer la notification d’un abonné Security Lake spécifique.

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

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Gestion des abonnés dans le Guide de l’utilisateur Amazon Security Lake.

L’exemple de code suivant montre comment utiliser delete-subscriber.

AWS CLI

Pour supprimer un abonné

L’exemple delete-subscriber suivant montre comment supprimer un abonné si vous ne souhaitez plus qu’il consomme de données de Security Lake.

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

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Gestion des abonnés dans le Guide de l’utilisateur Amazon Security Lake.

  • Pour plus de détails sur l’API, consultez DeleteSubscriber dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser get-data-lake-exception-subscription.

AWS CLI

Pour obtenir les détails d’un abonnement aux notifications d’exceptions

L’exemple get-data-lake-exception-subscription suivant fournit les détails d’un abonnement aux notifications d’exceptions de Security Lake. Dans cet exemple, l’utilisateur du compte AWS spécifié est informé des erreurs par SMS. Le message de l’exception reste affiché dans le compte pendant la période spécifiée. L’abonnement aux notifications d’exceptions informe un utilisateur Security Lake d’une erreur au moyen du protocole préféré du demandeur.

aws securitylake get-data-lake-exception-subscription

Sortie :

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

Pour plus d’informations, consultez Résolution des problèmes liés à l’état du lac de données dans le Guide de l’utilisateur Amazon Security Lake.

L’exemple de code suivant montre comment utiliser get-data-lake-organization-configuration.

AWS CLI

Pour obtenir les détails de la configuration des nouveaux comptes de l’organisation

L’exemple get-data-lake-organization-configuration suivant récupère les détails des journaux sources que les nouveaux comptes de l’organisation enverront après leur intégration à Amazon Security Lake.

aws securitylake get-data-lake-organization-configuration

Sortie :

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

Pour plus d’informations, consultez Gestion de plusieurs comptes avec AWS Organizations dans le Guide utilisateur Amazon Security Lake.

L’exemple de code suivant montre comment utiliser get-data-lake-sources.

AWS CLI

Pour connaître le statut de la collecte des journaux

L’exemple get-data-lake-sources suivant récupère un instantané de la collecte de journaux pour le compte spécifié dans la région AWS en cours. Amazon Security Lake est activé sur le compte.

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

Sortie :

{ "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 }

Pour plus d’informations, consultez Collecting data from AWS services dans le Guide de l’utilisateur Amazon Security Lake.

  • Pour plus de détails sur l’API, consultez GetDataLakeSources dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser get-subscriber.

AWS CLI

Pour récupérer les informations d’un abonnement

L’exemple get-subscriber suivant récupère les informations de l’abonnement de l’abonné Securiy Lake spécifié.

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

Sortie :

{ "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" } }

Pour plus d’informations, consultez Gestion des abonnés dans le Guide de l’utilisateur Amazon Security Lake.

  • Pour plus de détails sur l’API, consultez GetSubscriber dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser list-data-lake-exceptions.

AWS CLI

Pour répertorier les problèmes affectant votre lac de données

L’exemple list-data-lake-exceptions suivant répertorie les problèmes qui ont affecté votre lac de données au cours des 14 derniers jours dans les régions AWS spécifiées.

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

Sortie :

{ "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" } ] }

Pour plus d’informations, consultez Troubleshooting Amazon Security Lake dans le Guide de l’utilisateur Amazon Security Lake.

  • Pour plus de détails sur l’API, consultez ListDataLakeExceptions dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser list-data-lakes.

AWS CLI

Pour répertorier l’objet de configuration Security Lake

L’exemple list-data-lakes suivant répertorie l’objet de configuration Amazon Security Lake de la région AWS spécifiée. Vous pouvez utiliser cette commande pour déterminer si Security Lake est activé dans une ou plusieurs régions spécifiques.

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

Sortie :

{ "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" } } ] }

Pour plus d’informations, consultez Vérification du statut de la région dans le Guide de l’utilisateur Amazon Security Lake.

  • Pour plus de détails sur l’API, consultez ListDataLakes dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser list-log-sources.

AWS CLI

Pour récupérer les sources des journaux Amazon Security Lake

L’exemple list-log-sources suivant répertorie les sources des journaux Amazon Security Lake d’un compte spécifié.

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

Sortie :

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

Pour plus d’informations, consultez Source management dans le Guide de l’utilisateur Amazon Security Lake.

  • Pour plus de détails sur l’API, consultez ListLogSources dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser list-subscribers.

AWS CLI

Pour récupérer les abonnés Amazon Security Lake

L’exemplelist-subscribers suivant répertorie tous les abonnés Amazon Security Lake d’un compte spécifique.

aws securitylake list-subscribers

Sortie :

{ "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" } ] }

Pour plus d’informations, consultez Gestion des abonnés dans le Guide de l’utilisateur Amazon Security Lake.

  • Pour plus de détails sur l’API, consultez ListSubscribers dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser list-tags-for-resource.

AWS CLI

Pour répertorier les balises d’une ressource existante

L’exemple list-tags-for-resource suivant répertorie les balises de l’abonné Amazon Security Lake spécifié. Dans cet exemple, aucune valeur de balise n’est associée à la clé de balise Owner. Vous pouvez également utiliser cette opération pour répertorier les balises d’autres ressources Security Lake existantes.

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

Sortie :

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

Pour plus d’informations, consultez Tagging Amazon Security Lake resources dans le Guide de l’utilisateur Amazon Security Lake.

  • Pour plus de détails sur l’API, consultez ListTagsForResource dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser register-data-lake-delegated-administrator.

AWS CLI

Pour désigner l’administrateur délégué

L’exemple register-data-lake-delegated-administrator suivant désigne le compte AWS spécifié en tant qu’administrateur délégué Amazon Security Lake.

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

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Gestion de plusieurs comptes avec AWS Organizations dans le Guide utilisateur Amazon Security Lake.

L’exemple de code suivant montre comment utiliser tag-resource.

AWS CLI

Pour ajouter des balises à une ressource existante

L’exemple tag-resource suivant ajoute des balises à une ressource d’abonné existante. Pour créer une ressource et y ajouter une ou plusieurs balises, n’utilisez pas cette opération. Utilisez l’opération de création appropriée pour le type de ressource que vous souhaitez créer.

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

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Tagging Amazon Security Lake resources dans le Guide de l’utilisateur Amazon Security Lake.

  • Pour plus de détails sur l’API, consultez TagResource dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser untag-resource.

AWS CLI

Pour supprimer des balises d’une ressource existante

L’exemple untag-resource suivant supprime les balises spécifiées d’une ressource d’abonné existante.

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

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Tagging Amazon Security Lake resources dans le Guide de l’utilisateur Amazon Security Lake.

  • Pour plus de détails sur l’API, consultez UntagResource dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser update-data-lake-exception-subscription.

AWS CLI

Pour mettre à jour l’abonnement aux notifications des exceptions de Security Lake

L’exemple update-data-lake-exception-subscription suivant met à jour l’abonnement aux notifications qui informe les utilisateurs des exceptions de Security Lake.

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

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Troubleshooting Amazon Security Lake dans le Guide de l’utilisateur Amazon Security Lake.

L’exemple de code suivant montre comment utiliser update-data-lake.

AWS CLI

Exemple 1 : pour mettre à jour les paramètres de votre lac de données

L’exemple update-data-lake suivant met à jour les paramètres de votre lac de données Amazon Security Lake. Vous pouvez utiliser cette opération pour spécifier les paramètres du chiffrement des données, du stockage et de la région de synthèse.

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"

Sortie :

{ "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" } } ] }

Pour plus d’informations, consultez Premiers pas avec Amazon Security Lake dans le Guide de l’utilisateur Amazon Security Lake.

Exemple 2 : pour configurer votre lac de données dans une seule région

L’exemple create-data-lake suivant active Amazon Security Lake dans une seule région AWS et configure votre lac de données.

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"

Sortie :

{ "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" } } ] }

Pour plus d’informations, consultez Premiers pas avec Amazon Security Lake dans le Guide de l’utilisateur Amazon Security Lake.

  • Pour plus de détails sur l’API, consultez UpdateDataLake dans la Référence des commandes de l’AWS CLI.

L’exemple de code suivant montre comment utiliser update-subscriber-notification.

AWS CLI

Pour mettre à jour une notification d’abonné

L’exemple update-subscriber-notification suivant montre comment mettre à jour la méthode de notification d’un abonné.

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"}}'

Sortie :

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

Pour plus d’informations, consultez Gestion des abonnés dans le Guide de l’utilisateur Amazon Security Lake.

L’exemple de code suivant montre comment utiliser update-subscriber.

AWS CLI

Pour mettre à jour un abonné Amazon Security Lake

L’exemple update-subscriber suivant met à jour les sources d’accès aux données Security Lake d’un abonné Security Lake spécifique.

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

Sortie :

{ "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" } }

Pour plus d’informations, consultez Gestion des abonnés dans le Guide de l’utilisateur Amazon Security Lake.

  • Pour plus de détails sur l’API, consultez UpdateSubscriber dans la Référence des commandes de l’AWS CLI.