Fédérer un magasin de données d’événement - AWS CloudTrail

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Fédérer un magasin de données d’événement

La fédération d'un magasin de données d'événements vous permet de consulter les métadonnées associées au magasin de données d'événements dans le catalogue de AWS Glue données, d'enregistrer le catalogue de données auprès de celui-ci AWS Lake Formation et d'exécuter des requêtes SQL sur les données de vos événements à l'aide d'Amazon Athena. Les métadonnées des tables stockées dans le catalogue de AWS Glue données permettent au moteur de requête Athena de savoir comment rechercher, lire et traiter les données que vous souhaitez interroger.

Vous pouvez activer la fédération à l'aide de la CloudTrail console ou de EnableFederationl'opération API. AWS CLI Lorsque vous activez la fédération de requêtes Lake, vous CloudTrail créez une base de données gérée nommée aws:cloudtrail (si la base de données n'existe pas déjà) et une table fédérée gérée dans le catalogue de AWS Glue données. L'ID du magasin de données d'événements est utilisé pour le nom de la table. CloudTrail enregistre le rôle de fédération dans lequel l'ARN et le stockage des données d'événements sont stockés AWS Lake Formation, le service chargé de permettre un contrôle d'accès précis aux ressources fédérées du catalogue de données. AWS Glue

Pour activer la fédération de requêtes Lake, vous devez créer un rôle IAM ou choisir un rôle existant. Lake Formation utilise ce rôle pour gérer les autorisations pour le magasin de données d’événement fédéré. Lorsque vous créez un nouveau rôle à l'aide de la CloudTrail console, les autorisations requises sont CloudTrail automatiquement créées pour le rôle. Si vous choisissez un rôle existant, assurez-vous qu’il fournit les autorisations minimales.

Vous pouvez désactiver la fédération à l'aide de la CloudTrail console ou de DisableFederationl'opération API. AWS CLI Lorsque vous désactivez la fédération, l'intégration avec AWS Glue AWS Lake Formation, et Amazon Athena est CloudTrail désactivée. Après avoir désactivé la fédération de requêtes Lake, vous ne pouvez plus interroger les données de vos événements dans Athena. Aucune donnée de CloudTrail Lake n'est supprimée lorsque vous désactivez la fédération et vous pouvez continuer à exécuter des requêtes dans CloudTrail Lake.

La fédération d' CloudTrail un magasin de données d'événements CloudTrail Lake est gratuite. L’exécution de requêtes dans Amazon Athena entraîne des frais. Pour en savoir plus sur la tarification, consultez la Tarification d’Amazon Athena.

Considérations

Tenez compte des facteurs suivants lors de la fédération d’un magasin de données d’événement :

  • La fédération d' CloudTrail un magasin de données d'événements CloudTrail Lake est gratuite. L’exécution de requêtes dans Amazon Athena entraîne des frais. Pour en savoir plus sur la tarification, consultez la Tarification d’Amazon Athena.

  • Lake Formation est utilisée pour gérer les autorisations pour les ressources fédérées. Si vous supprimez le rôle de fédération, ou si vous révoquez les autorisations d'accès aux ressources de Lake Formation AWS Glue, vous ne pouvez pas exécuter de requêtes depuis Athena. Pour plus d’informations sur l’utilisation de Lake Formation, veuillez consulter la page Gérer les ressources de la fédération des CloudTrail lacs avec AWS Lake Formation.

  • Toute personne utilisant Amazon Athena pour interroger des données enregistrées dans Lake Formation doit disposer d’une politique d’autorisations IAM qui autorise l’action lakeformation:GetDataAccess. La politique AWS gérée : AmazonAthenaFullAccessautorise cette action. Si vous utilisez des politiques en ligne, veillez à mettre à jour les politiques d’autorisations afin d’autoriser cette action. Pour plus d’informations, consultez la page Gestion des autorisations de Lake Formation et des utilisateurs d’Athena.

  • Pour créer des vues sur des tables fédérées dans Athena, vous avez besoin d’une base de données de destination autre que aws:cloudtrail. Cela est dû au fait que la aws:cloudtrail base de données est gérée par CloudTrail.

  • Pour créer un ensemble de données dans Amazon QuickSight, vous devez choisir l'option Utiliser un code SQL personnalisé. Pour plus d’informations, consultez Créer un jeu de données à l’aide des données Amazon Athena.

  • Si la fédération est activée, vous ne pouvez pas supprimer un magasin de données d’événement. Pour supprimer un magasin de données d’événement fédéré, vous devez d’abord désactiver la fédération et la protection contre la résiliation si elle est activée.

  • Les considérations suivantes s’appliquent aux magasins de données d’événement de l’organisation :

    • Un seul compte administrateur délégué ou le compte de gestion peut activer la fédération sur le magasin de données d’événement d’une organisation. Les autres comptes administrateur délégué peuvent toujours interroger et partager des informations à l’aide de la fonctionnalité de partage de données de Lake Formation.

    • Tout compte administrateur délégué ou le compte de gestion de l’organisation peut désactiver la fédération.

Autorisations nécessaires pour la fédération

Avant de fédérer un magasin de données d’événement, assurez-vous de disposer de toutes les autorisations requises pour le rôle de fédération et pour activer et désactiver la fédération. Vous devez uniquement mettre à jour les autorisations du rôle de fédération si vous choisissez un rôle IAM existant pour activer la fédération. Si vous choisissez de créer un nouveau rôle IAM à l'aide de la CloudTrail console, CloudTrail fournit toutes les autorisations nécessaires pour le rôle.

Autorisations IAM pour fédérer un magasin de données d’événement

Lorsque vous activez la fédération, vous pouvez créer un nouveau rôle IAM ou utiliser un rôle IAM existant. Lorsque vous choisissez un nouveau rôle IAM, vous CloudTrail créez un rôle IAM avec les autorisations requises et aucune autre action n'est requise de votre part.

Si vous choisissez un rôle existant, assurez-vous que les politiques du rôle IAM fournissent les autorisations requises pour activer la fédération. Cette section fournit des exemples de politiques d’approbation et d’autorisation requises du rôle IAM.

L’exemple suivant fournit la politique d’autorisation pour le rôle de fédération. Pour la première instruction, fournissez l’ARN complet de votre magasin de données d’événement pour le paramètre Resource.

La deuxième instruction de cette politique permet à Lake Formation de déchiffrer les données d’un magasin de données d’événement chiffré à l’aide d’une clé KMS. Remplacez key-region, account-id et key-id par les valeurs de votre clé KMS. Vous pouvez omettre cette instruction si votre magasin de données d’événement n’utilise pas de clé KMS pour le chiffrement.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "LakeFederationEDSDataAccess", "Effect": "Allow", "Action": "cloudtrail:GetEventDataStoreData", "Resource": "arn:aws:cloudtrail:eds-region:account-id:eventdatastore/eds-id" }, { "Sid": "LakeFederationKMSDecryptAccess", "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "arn:aws:kms:key-region:account-id:key/key-id" } ] }

L’exemple suivant fournit la politique d’approbation IAM, qui permet à AWS Lake Formation d’endosser un rôle IAM pour gérer les autorisations pour le magasin de données d’événement fédéré.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "lakeformation.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

Autorisations requises pour activer la fédération

L’exemple de politique suivant fournit les autorisations minimales requises pour activer la fédération sur un magasin de données d’événement. Cette politique permet d' CloudTrail activer la fédération sur le magasin de données d'événements, AWS Glue de créer les ressources fédérées dans le catalogue de AWS Glue données et de AWS Lake Formation gérer l'enregistrement des ressources.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Allow CloudTrail to enable federation on the event data store", "Effect": "Allow", "Action": "cloudtrail:EnableFederation", "Resource": "arn:aws:cloudtrail:region:account-id:eventdatastore/eds-id" }, { "Sid": "Allow access to the federation role", "Effect": "Allow", "Action": [ "iam:PassRole", "iam:GetRole" ], "Resource": "arn:aws:iam::region:role/federation-role-name" }, { "Sid": "Allow AWS Glue to create the federated resources in the Data Catalog", "Effect": "Allow", "Action": [ "glue:CreateDatabase", "glue:CreateTable", "glue:PassConnection" ], "Resource": [ "arn:aws:glue:region:account-id:catalog", "arn:aws:glue:region:account-id:database/aws:cloudtrail", "arn:aws:glue:region:account-id:table/aws:cloudtrail/eds-id", "arn:aws:glue:region:account-id:connection/aws:cloudtrail" ] }, { "Sid": "Allow Lake Formation to manage resource registration", "Effect": "Allow", "Action": [ "lakeformation:RegisterResource", "lakeformation:DeregisterResource" ], "Resource": "arn:aws:lakeformation:region:account-id:catalog:account-id" } ] }

Autorisations nécessaires pour désactiver la fédération

L’exemple de politique suivant fournit les ressources minimales requises pour désactiver la fédération dans un magasin de données d’événement. Cette politique permet de CloudTrail désactiver la fédération sur le magasin de données d'événements, de AWS Glue supprimer la table fédérée gérée dans le catalogue de AWS Glue données et de Lake Formation de désenregistrer la ressource fédérée.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Allow CloudTrail to disable federation on the event data store", "Effect": "Allow", "Action": "cloudtrail:DisableFederation", "Resource": "arn:aws:cloudtrail:region:account-id:eventdatastore/eds-id" }, { "Sid": "Allow AWS Glue to delete the managed federated table from the AWS Glue Data Catalog", "Effect": "Allow", "Action": "glue:DeleteTable", "Resource": [ "arn:aws:glue:region:account-id:catalog", "arn:aws:glue:region:account-id:database/aws:cloudtrail", "arn:aws:glue:region:account-id:table/aws:cloudtrail/eds-id" ] }, { "Sid": "Allow Lake Formation to deregister the resource", "Effect": "Allow", "Action": "lakeformation:DeregisterResource", "Resource": "arn:aws:lakeformation:region:account-id:catalog:account-id" } ] }