Déchargement de fichiers de données chiffrés - Amazon Redshift

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.

Déchargement de fichiers de données chiffrés

UNLOADcrée automatiquement des fichiers à l'aide du chiffrement côté serveur Amazon S3 avec AWS clés de chiffrement gérées (SSE-S3). Vous pouvez également spécifier le chiffrement côté serveur à l'aide d'un AWS Key Management Service clé (SSE-KMS) ou chiffrement côté client avec une clé gérée par le client. UNLOADne prend pas en charge le chiffrement côté serveur Amazon S3 à l'aide d'une clé gérée par le client. Pour plus d'informations, consultez Protection des données à l'aide du chiffrement côté serveur.

Pour effectuer un déchargement vers Amazon S3 à l'aide d'un chiffrement côté serveur à l'aide d'un AWS KMS key, utilisez le paramètre KMS _ KEY _ID pour fournir l'ID de la clé, comme indiqué dans l'exemple suivant.

unload ('select venuename, venuecity from venue') to 's3://amzn-s3-demo-bucket/encrypted/venue_' iam_role 'arn:aws:iam::0123456789012:role/MyRedshiftRole' KMS_KEY_ID '1234abcd-12ab-34cd-56ef-1234567890ab' encrypted;

Si vous souhaitez fournir votre propre clé de chiffrement, vous pouvez créer des fichiers de données chiffrés côté client dans Amazon S3 en utilisant la UNLOAD commande associée à l'option. ENCRYPTED UNLOADutilise le même processus de chiffrement d'enveloppe que celui utilisé par le chiffrement côté client Amazon S3. Vous pouvez ensuite utiliser la COPY commande avec l'ENCRYPTEDoption permettant de charger les fichiers chiffrés.

Voici comment cela fonctionne :

  1. Vous créez une clé 256 bits codée en base64 que vous utiliserez comme AES clé de chiffrement privée, ou clé symétrique racine.

  2. Vous émettez une UNLOAD commande qui inclut votre clé symétrique racine et l'ENCRYPTEDoption.

  3. UNLOADgénère une clé one-time-use symétrique (appelée clé symétrique d'enveloppe) et un vecteur d'initialisation (IV), qu'il utilise pour chiffrer vos données.

  4. UNLOADchiffre la clé symétrique de l'enveloppe à l'aide de votre clé symétrique racine.

  5. UNLOADstocke ensuite les fichiers de données chiffrés dans Amazon S3 et stocke la clé d'enveloppe chiffrée et l'IV sous forme de métadonnées d'objet avec chaque fichier. La clé d'enveloppe chiffrée est stockée comme métadonnées objet x-amz-meta-x-amz-key et le vecteur d'initialisation est stocké comme métadonnées objet x-amz-meta-x-amz-iv.

Pour plus d'informations sur le processus de chiffrement des enveloppes, voir le chiffrement des données côté client avec AWS SDKpour l'article sur Java et Amazon S3.

Pour décharger des fichiers de données chiffrés, ajoutez la valeur de la clé racine à la chaîne d'informations d'identification et incluez l'ENCRYPTEDoption. Si vous utilisez MANIFEST cette option, le fichier manifeste est également chiffré.

unload ('select venuename, venuecity from venue') to 's3://amzn-s3-demo-bucket/encrypted/venue_' iam_role 'arn:aws:iam::0123456789012:role/MyRedshiftRole' master_symmetric_key '<root_key>' manifest encrypted;

Pour décharger les fichiers de données chiffrés GZIP compressés, incluez l'GZIPoption ainsi que la valeur de la clé racine et l'ENCRYPTEDoption.

unload ('select venuename, venuecity from venue') to 's3://amzn-s3-demo-bucket/encrypted/venue_' iam_role 'arn:aws:iam::0123456789012:role/MyRedshiftRole' master_symmetric_key '<root_key>' encrypted gzip;

Pour charger les fichiers de données chiffrés, ajoutez le KEY paramètre MASTER SYMMETRIC _ _ avec la même valeur de clé racine et incluez l'ENCRYPTEDoption.

copy venue from 's3://amzn-s3-demo-bucket/encrypted/venue_' iam_role 'arn:aws:iam::0123456789012:role/MyRedshiftRole' master_symmetric_key '<root_key>' encrypted;