2015-08-16 2 views
2

Je souhaite activer SSE-S3 sur Amazon S3. Je clique sur les propriétés et vérifie la boîte de cryptage pour AES-256. Il dit cryptage, puis fait. Mais je peux toujours lire les fichiers sans fournir de clé, et quand je vérifie à nouveau les propriétés, les boutons radio sont décochés. Ai-je fait cela correctement? Est-ce crypté? Si confus.Comment utiliser SSE-S3 sur Amazon S3?

SSE S3

Répondre

2

Vous regardez une vue d'un seau dans la console S3 qui affiche plus d'un fichier, ou ne montre qu'un seul fichier, mais ce fichier n'est pas sélectionné. Les boutons radio vous permettent de définir tous les éléments que vous sélectionnez sur les boutons radio, mais les boutons radio restent vides lorsque plusieurs fichiers sont affichés, car ils ne sont là que pour vous permettre de modifier - de ne pas afficher vous les valeurs de l'objet existant.

Cliquez sur un fichier individuel et affichez ses propriétés et vous verrez que le fichier est stocké avec le chiffrement côté serveur = AES256.

Oui, vous pouvez télécharger le fichier sans avoir besoin de le déchiffrer, car cette fonctionnalité est chiffrement côté serveur de données au repos - les fichiers sont chiffrés par S3 avant le stockage sur le support physique S3 fonctionne sur . Cela est souvent fait à des fins de conformité, lorsque des restrictions réglementaires ou d'autres obligations contractuelles exigent que les données soient chiffrées au repos.

Les clés de chiffrement sont stockées séparément de l'objet par S3 et sont gérées par S3. En fait, les clés de chiffrement sont effectivement stockées, cryptées, par S3. (Ils génèrent une clé pour chaque objet et stockent cette clé sous forme chiffrée à l'aide d'une clé principale).

Le déchiffrement des données cryptées ne nécessite aucun effort de votre part. Lorsque vous GET un objet crypté, nous récupérons et décryptons la clé, puis l'utilisons pour décrypter vos données.

https://aws.amazon.com/blogs/aws/new-amazon-s3-server-side-encryption/

Pour les données en transit, S3 encrypte que chaque fois que vous utilisez HTTPS.

Différent de la fonctionnalité disponible dans la console, S3 also supports server-side AES-256 encryption with keys you manage. Dans ce scénario, appelé SSE-C, vous n'êtes toujours pas responsable du cryptage/décryptage réel, car S3 le fait toujours pour vous. La différence est que S3 ne stocke pas la clé, et vous devez présenter la clé à S3 avec une requête GET afin que S3 récupère l'objet, le décrypte et vous le renvoie. Si vous ne fournissez pas la bonne clé, S3 ne prendra pas la peine de renvoyer l'objet - même pas sous forme cryptée. S3 sait si vous avez envoyé la bonne clé avec une requête GET, car S3 stocke un HMAC salé de la clé avec l'objet, pour la validation de la clé que vous envoyez lorsque vous essayez de récupérer l'objet, plus tard. Cette fonctionnalité - où vous gérez vos propres clés - nécessite HTTPS (sinon vous enverriez votre clé de chiffrement sur Internet non cryptée) et n'est accessible que via l'API, pas la console.

Vous ne pouvez pas utiliser la console Amazon S3 pour télécharger un objet et demander une connexion SSE-C. Vous ne pouvez pas non plus utiliser la console pour mettre à jour (par exemple, modifier la classe de stockage ou ajouter des métadonnées) un objet existant stocké à l'aide de SSE-C.

http://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html

Et, bien sûr, cette méthode - avec des clés des clients gérés - est particulièrement dangereux si vous ne disposez pas d'une infrastructure solide gestion des clés, parce que si vous perdez la clé que vous utilisé pour télécharger un fichier, ce fichier est, à toutes fins utiles, perdu.