Amazon DEA-C01: Sécurité, gouvernance et conformité des données — Guide d'étude
Fait partie du Amazon Data Engineer Associate DEA-C01 — Guide d’étude. Entraînez-vous avec des réponses vérifiées dans le centre d’examens Amazon, ou passez des tests chronométrés sur ExamRoll.io.
Ce domaine couvre les contrôles, les services et les modèles opérationnels qui maintiennent les données protégées, auditables et conformes, tout en permettant l’analytique. Les ingénieurs de données doivent concevoir le chiffrement, le contrôle d’accès, la découverte et le masquage afin que les flux de travail analytiques s’exécutent sans exposer de PII (informations d’identification personnelle) ou interrompre les intégrations de services. La section ci-dessous se concentre sur des services et configurations AWS concrets — le chiffrement S3/Redshift, KMS, les politiques IAM et de ressources, l’accès granulaire de Lake Formation, la découverte avec Macie et les contrôles réseau tels que les points de terminaison VPC — ainsi que sur les critères de décision que vous utiliserez lors de la conception de pipelines.
Chiffrement au repos et en transit pour les services de données
Chiffrez les données en transit à l’aide de TLS pour tous les points de terminaison de service AWS et les SDK clients ; appliquez cette mesure avec les points de terminaison de service, les ALB, API Gateway et en exigeant HTTPS dans les politiques de compartiment S3. Pour le chiffrement au repos dans S3, choisissez parmi SSE-S3, SSE-KMS, SSE-C ou le chiffrement côté client avec les compromis et les modèles de CLI/console suivants :
- SSE-S3 (AES-256 géré par AWS) : le plus simple ; activez par défaut sur un compartiment avec aws s3api put-bucket-encryption –bucket my-bucket –server-side-encryption-configuration ‘{“Rules”:[{“ApplyServerSideEncryptionByDefault”:{“SSEAlgorithm”:“AES256”}}]}’.
- SSE-KMS (clés AWS KMS) : prend en charge la rotation des clés, les politiques IAM et de clé KMS, et l’audit via CloudTrail ; définissez la valeur par défaut du compartiment avec SSE-KMS et spécifiez –sse-kms-key-id. Nécessite d’accorder aux services et aux principaux à la fois les autorisations IAM et l’accès à la politique de clé KMS (voir la note sur la politique de clé KMS ci-dessous).
- SSE-C (clés fournies par le client) : le client fournit la clé à chaque requête ; aucune utilisation de KMS ; complexité opérationnelle pour le transfert de clés et la gestion de la compromission des clés.
- Chiffrement côté client : chiffrez avant le chargement à l’aide du SDK de chiffrement AWS ou des bibliothèques clientes pour le chiffrement d’enveloppe ; les clés sont gérées par le client ou via une utilisation personnalisée de KMS. À utiliser lorsque vous devez conserver un contrôle total sur le matériel de clé en clair.
Critères de décision :
- Utilisez SSE-S3 pour une faible charge opérationnelle et l’absence de clés gérées par le client.
- Utilisez SSE-KMS pour l’auditabilité, la rotation des clés et lors du partage de snapshots chiffrés entre comptes ou services.
- Utilisez SSE-C ou le chiffrement côté client lorsque vous devez vous assurer qu’AWS n’a jamais accès au texte en clair ou au matériel de clé.
Chiffrement Redshift : activez le chiffrement lors de la création du cluster en spécifiant –encrypted et –kms-key-id ou via la console. Le chiffrement ne peut pas être activé sur place sur un cluster non chiffré ; pour chiffrer un snapshot de cluster existant et le restaurer sur un cluster chiffré, utilisez aws redshift create-cluster ou le flux de travail RestoreFromClusterSnapshot avec –kms-key-id. La politique de clé KMS doit autoriser explicitement Redshift à utiliser la clé (kms:Encrypt, kms:Decrypt, kms:GenerateDataKey).
Pour tous les services s’appuyant sur KMS, assurez-vous d’utiliser TLS en transit et limitez l’exposition du texte en clair dans les journaux et les snapshots.
Politiques IAM et politiques basées sur les ressources pour l’accès aux données
Les politiques d’identité IAM et les politiques basées sur les ressources (politiques de compartiment S3, politiques de clé KMS, politiques de point de terminaison VPC) déterminent ensemble l’accès. Une approche spécifique :
- Utilisez des rôles IAM pour les principaux de calcul/service (EMR, Glue, Redshift, Lambda) et attachez des politiques de moindre privilège autorisant les actions S3, Glue, Redshift et KMS nécessaires.
- Utilisez des politiques basées sur les ressources pour restreindre les principaux ou les points de terminaison VPC pouvant accéder aux compartiments S3 ou aux API ; appliquez les déclarations Deny explicites avec précaution car Deny l’emporte sur Allow.
- Pour un accès restreint au VPC, créez un point de terminaison VPC de type passerelle (gateway) pour S3 et des points de terminaison d’interface pour Glue, KMS, Secrets Manager, et contrôlez l’accès avec des politiques de point de terminaison.
Modèles de CLI/console :
- Créer un point de terminaison de type passerelle : aws ec2 create-vpc-endpoint –vpc-id vpc-123 –service-name com.amazonaws.us-east-1.s3 –route-table-ids rtb-123
- Créer un point de terminaison d’interface pour Glue : aws ec2 create-vpc-endpoint –vpc-id vpc-123 –service-name com.amazonaws.us-east-1.glue –subnet-ids subnet-1 subnet-2 –security-group-ids sg-1
Critères de décision :
- Utilisez les politiques de ressources pour appliquer des contraintes inter-comptes ou pour exiger que le trafic provienne de points de terminaison VPC spécifiques.
- Utilisez IAM pour les autorisations centrées sur l’identité et les politiques de clé KMS pour autoriser les services à utiliser les clés — IAM seul est insuffisant pour permettre l’utilisation de KMS.
Autorisations granulaires de Lake Formation
Lake Formation centralise le contrôle d’accès au lac de données par-dessus le Glue Data Catalog et fournit une sécurité au niveau des colonnes et des lignes pour les tâches Athena et Glue. Modèles clés :
- Enregistrez les emplacements S3 en tant qu’emplacements de lac de données dans Lake Formation et accordez DATA_LOCATION_ACCESS au rôle qui lit/écrit dans ces emplacements.
- Accordez des autorisations au niveau de la table et de la colonne via la console Lake Formation ou aws lakeformation grant-permissions ; les autorisations au niveau de la colonne utilisent un paramètre de liste de colonnes et affectent les requêtes Athena et Glue qui utilisent le Data Catalog.
- Pour la sécurité au niveau des lignes, définissez des LF-tags ou des filtres de lignes sur les tables et attachez des politiques qui appliquent des prédicats aux données renvoyées par Athena. Les filtres au niveau des lignes sont évalués par le service Lake Formation lors de la planification de la requête.
Détails opérationnels :
- Les autorisations Lake Formation et les autorisations IAM sont toutes deux évaluées ; le résultat le plus restrictif s’applique. Assurez-vous que les tâches disposent à la fois de l’accès S3 via le rôle IAM et des autorisations Lake Formation.
- Lorsque vous utilisez Athena, définissez le groupe de travail pour qu’il utilise le Glue Data Catalog et configurez l’emplacement S3 des résultats de requête avec l’accès LF approprié.
Critères de décision :
- Utilisez les contrôles au niveau des colonnes de Lake Formation lorsque vous devez masquer des colonnes sensibles aux analystes en aval.
- Utilisez des politiques au niveau des lignes pour les ensembles de données multi-locataires où des prédicats de ligne doivent restreindre la visibilité par principal.
- Continuez à utiliser les politiques IAM et de compartiment S3 pour une application à granularité grossière (niveau compartiment/objet) et Lake Formation pour une application à granularité fine pilotée par le catalogue.
Masquage de données, tokenisation et gestion des PII
Détectez les PII (informations d’identification personnelle) à l’aide d’Amazon Macie pour analyser les buckets S3 et exécuter des tâches de classification avec des identifiants de données gérés. Macie fournit une découverte et des alertes automatisées pour les PII, et les résultats peuvent être acheminés vers Security Hub ou CloudWatch Events pour des workflows en aval. Configurez les tâches Macie via la console ou aws macie2 create-classification-job, sélectionnez la portée du bucket S3 et choisissez les identifiants gérés.
Pour le masquage et la tokenisation :
- Utilisez les transformations AWS Glue (Glue ETL PySpark) ou AWS Lambda pour appliquer un masquage/une tokenisation déterministe ou préservant le format lors de l’ingestion. Envisagez d’utiliser les signets de tâche (job bookmarks) et les paramètres de tâche (job parameters) d’AWS Glue Studio pour un traitement cohérent.
- Pour la tokenisation où les jetons doivent être réversibles, utilisez un HSM adossé à KMS ou un service de tokenisation tiers ; stockez les mappages de jetons dans une table DynamoDB sécurisée, chiffrée avec KMS, et restreignez l’accès aux services autorisés.
- Pour le masquage irréversible, appliquez un hachage unidirectionnel (salé) avec des sels sécurisés provenant de Secrets Manager et effectuez une rotation prudente des sels pour éviter de casser les jointures.
Réseau et trafic privé :
- Utilisez des points de terminaison de passerelle S3 et des points de terminaison d’interface pour Glue et Secrets Manager afin de maintenir le trafic de données au sein du réseau AWS et d’éviter toute exposition à l’internet public. Combinez les politiques de point de terminaison VPC avec les politiques de bucket S3 pour restreindre l’accès au trafic provenant des principaux de point de terminaison.
Pièges courants et critères de décision
- Le chiffrement Redshift ne peut pas être activé sur un cluster non chiffré existant ; restaurez à partir d’un snapshot dans un nouveau cluster avec
--kms-key-idpour créer un cluster chiffré. - Les politiques de clé KMS doivent accorder explicitement au principal de service des données AWS (par exemple,
glue.amazonaws.com,redshift.amazonaws.com) l’autorisation pourGenerateDataKey/Decrypt; les autorisations de rôle IAM seules sont insuffisantes. - Les autorisations Lake Formation et IAM sont toutes deux évaluées — si l’une ou l’autre refuse l’accès ou ne dispose pas des autorisations requises, l’accès sera bloqué ; accordez à la fois l’accès S3 au rôle IAM et les droits sur les tables/colonnes dans Lake Formation.
- Les politiques de bucket S3 avec un
Denyexplicite prévalent sur lesAllowIAM ; auditez les politiques de bucket pour détecter les déclarationsDenyqui bloquent involontairement les rôles de service ou l’accès inter-comptes. - Les politiques de point de terminaison VPC ou une mauvaise configuration du point de terminaison peuvent bloquer silencieusement le trafic de service ; validez le principal du point de terminaison et les associations de table de routage pour les points de terminaison de passerelle, ainsi que les groupes de sécurité pour les points de terminaison d’interface.
- Macie nécessite un accès en lecture à S3 et des politiques de bucket appropriées ; assurez-vous que le principal de service de Macie est autorisé ou exécutez les analyses à partir d’un rôle disposant des autorisations nécessaires.
Problème pratique : Scénario d’utilisation
Acme Health Analytics stocke des fichiers CSV de patients dans un data lake S3 et doit fournir aux analystes un accès à des champs dépersonnalisés tout en conservant la capacité d’exécuter des requêtes agrégées ; le trafic ne doit jamais transiter par l’internet public.
- Enregistrez les emplacements du data lake S3 dans Lake Formation et créez un rôle d’administrateur de data lake dédié.
- Configurez le chiffrement par défaut du bucket avec SSE-KMS et créez une clé KMS dont la politique de clé accorde explicitement l’accès aux principaux de service de Glue, Athena et Redshift ainsi qu’aux rôles IAM des analystes.
- Utilisez Lake Formation pour accorder un
SELECTau niveau de la table aux analystes, mais appliquez des refus (denies) au niveau des colonnes pour les colonnes contenant des PII et créez des filtres au niveau des lignes si une segmentation multi-tenant est requise. - Exécutez des tâches de classification Macie pour découvrir toute PII restante dans les buckets et y remédier par masquage/tokenisation dans les tâches ETL de Glue ; utilisez des modèles de chiffrement côté client ou de tokenisation pour les jetons réversibles et le hachage pour le masquage irréversible.
- Créez un point de terminaison de passerelle VPC S3 et des points de terminaison d’interface pour Glue et Secrets Manager ; appliquez des politiques de point de terminaison pour restreindre l’accès au trafic VPC et ajustez les politiques de bucket S3 pour n’autoriser que le principal du point de terminaison.
Justification de la bonne pratique AWS : combinez le chiffrement adossé à KMS, les contrôles de catalogue affinés de Lake Formation et les points de terminaison VPC privés pour appliquer une défense en profondeur — le chiffrement protège les données au repos, Lake Formation contrôle quelles colonnes/lignes sont visibles, et les points de terminaison VPC évitent l’exposition au réseau public, tandis que les politiques KMS garantissent que les services peuvent réellement déchiffrer les données.
← Requêtage et analyse des données · Tous les domaines · Surveillance et dépannage des pipelines de données →
Entraînez-vous sur ces questions → · Tests chronométrés sur ExamRoll.io →
Pass the whole exam — not just this question
You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.
Réussissez votre examen →