Identifiez et alertez lorsque les ressources Amazon Data Firehose ne sont pas chiffrées à l'aide d'une clé AWS KMS - Recommandations AWS

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.

Identifiez et alertez lorsque les ressources Amazon Data Firehose ne sont pas chiffrées à l'aide d'une clé AWS KMS

Créée par Ram Kandaswamy (AWS)

Environnement : Production

Technologies : gestion et gouvernance ; analyse ; mégadonnées CloudNative ; infrastructure ; sécurité, identité, conformité

Services AWS : AWS CloudTrail ; Amazon CloudWatch ; AWS Identity and Access Management ; Amazon Kinesis ; AWS Lambda ; Amazon SNS

Récapitulatif

Pour des raisons de conformité, certaines entreprises doivent activer le chiffrement sur les ressources de diffusion de données telles qu'Amazon Data Firehose. Ce modèle montre un moyen de surveiller, de détecter et de notifier lorsque les ressources ne sont pas conformes.

Pour respecter les exigences de chiffrement, ce modèle peut être utilisé sur Amazon Web Services (AWS) pour surveiller et détecter automatiquement les ressources de diffusion de Firehose qui ne sont pas chiffrées avec la clé AWS Key Management Service (AWS KMS). La solution envoie des notifications d'alerte et peut être étendue pour effectuer une correction automatique. Cette solution peut être appliquée à un compte individuel ou à un environnement à comptes multiples, tel qu'un environnement utilisant AWS Landing Zone ou AWS Control Tower.

Conditions préalables et limitations

Prérequis

  • Flux de diffusion Firehose

  • Autorisations suffisantes et connaissance d'AWS CloudFormation, qui est utilisé dans le cadre de cette automatisation de l'infrastructure

Limites

La solution n'est pas en temps réel car elle utilise les CloudTrail événements AWS pour la détection, et il existe un délai entre le moment où une ressource non chiffrée est créée et celui où la notification est envoyée.

Architecture

Pile technologique cible

La solution utilise la technologie sans serveur et les services suivants :

  • AWS CloudTrail

  • Amazon CloudWatch

  • Interface de ligne de commande AWS (AWS CLI)

  • AWS Identity and Access Management (IAM)

  • Amazon Data Firehose

  • AWS Lambda

  • Amazon Simple Notification Service (Amazon SNS)

Architecture cible

Schéma illustrant les cinq étapes du processus.
  1. Un utilisateur crée ou modifie Firehose.

  2. Un CloudTrail événement est détecté et mis en correspondance.

  3. Lambda est invoqué.

  4. Les ressources non conformes sont identifiées.

  5. Une notification par e-mail est envoyée.

Automatisation et mise à l'échelle

Grâce à AWS CloudFormation StackSets, vous pouvez appliquer cette solution à plusieurs régions ou comptes AWS à l'aide d'une seule commande.

Outils

  • AWS CloudTrail — AWS CloudTrail est un service AWS qui vous aide à activer la gouvernance, la conformité, ainsi que l'audit opérationnel et des risques de votre compte AWS. Les actions entreprises par un utilisateur, un rôle ou un service AWS sont enregistrées sous forme d'événements dans CloudTrail. Les événements incluent les actions entreprises dans la console de gestion AWS, l'interface de ligne de commande AWS, les SDK AWS et les opérations d'API.

  • Amazon CloudWatch Events — Amazon CloudWatch Events fournit un near-real-time flux d'événements système décrivant les modifications apportées aux ressources AWS.

  • AWS CLI — AWS Command Line Interface (AWS CLI) est un outil open source qui vous permet d'interagir avec les services AWS à l'aide de commandes dans votre shell de ligne de commande. 

  • IAM — AWS Identity and Access Management (IAM) est un service Web qui vous permet de contrôler en toute sécurité l'accès aux ressources AWS. Vous pouvez utiliser IAM pour contrôler les personnes qui s’authentifient (sont connectées) et sont autorisées (disposent d’autorisations) à utiliser des ressources. 

  • Amazon Data Firehose — Amazon Data Firehose est un service entièrement géré permettant de diffuser des données en temps réel. Avec Firehose, vous n'avez pas besoin d'écrire d'applications ou de gérer des ressources. Vous configurez vos producteurs de données pour qu'ils envoient des données à Firehose, qui les livre automatiquement à la destination que vous avez spécifiée.

  • AWS Lambda — AWS Lambda est un service de calcul qui prend en charge l'exécution de code sans provisionner ni gérer de serveurs. Lambda exécute le code uniquement lorsque cela est nécessaire et se met à l'échelle automatiquement, qu'il s'agisse de quelques requêtes par jour ou de milliers de requêtes par seconde. Vous payez uniquement le temps de calcul que vous utilisez. Vous n'exposez aucuns frais quand votre code n'est pas exécuté. 

  • Amazon SNS — Amazon Simple Notification Service (Amazon SNS) est un service géré qui permet aux éditeurs de transmettre des messages aux abonnés (également appelés producteurs et consommateurs).

Épopées

TâcheDescriptionCompétences requises

Déployez AWS CloudFormation StackSets.

Dans l'AWS CLI, utilisez le firehose-encryption-checker.yaml modèle (joint) pour créer le stack set en exécutant la commande suivante.  Indiquez une rubrique Amazon SNS valide (Amazon Resource Name) pour le paramètre. Le déploiement doit réussir à créer CloudWatch des règles d'événements, la fonction Lambda et un rôle IAM avec les autorisations nécessaires, comme décrit dans le modèle.

aws cloudformation create-stack-set    --stack-set-name my-stack-set   --template-body file://firehose-encryption-checker.yaml 

Architecte cloud, administrateur système

Créez des instances de pile.

Les piles doivent être créées dans les régions AWS de votre choix ainsi que dans un ou plusieurs comptes.  Pour créer des instances de pile, exécutez la commande suivante en remplaçant le nom de la pile, les numéros de compte et les régions par les vôtres.

aws cloudformation create-stack-instances     --stack-set-name my-stack-set    --accounts 123456789012 223456789012   --regions us-east-1 us-east-2 us-west-1 us-west-2     --operation-preferences FailureToleranceCount=1 

Architecte cloud, administrateur système

Ressources connexes

Informations supplémentaires

AWS Config ne prend pas en charge le type de ressource de flux de diffusion Firehose, une règle AWS Config ne peut donc pas être utilisée dans la solution.

Pièces jointes

Pour accéder au contenu supplémentaire associé à ce document, décompressez le fichier suivant : attachment.zip