Mes clients utilisent d'anciennes versions de TLS. Je souhaite appliquer l'utilisation d'une version récente de TLS lorsqu'ils accèdent à du contenu stocké dans mes compartiments Amazon Simple Storage Service (Amazon S3). Comment appliquer le protocole TLS 1.2 ou supérieur à mes compartiments Amazon S3 ?
Brève description
Il est recommandé d'utiliser des protocoles de chiffrement modernes pour les données en transit. Vous pouvez appliquer le protocole TLS 1.2 ou supérieur pour les connexions à Amazon S3 en mettant à jour la politique de sécurité de votre compartiment.
Remarque : si vos clients n'utilisent pas le protocole TLS 1.2 ou supérieur, ils ne peuvent pas accéder au contenu stocké dans vos compartiments S3.
Solution
Vous pouvez appliquer le protocole TLS 1.2 ou supérieur à toutes les connexions à vos compartiments S3 en utilisant une politique basée sur les ressources attachée à votre compartiment.
Pour définir une politique de compartiment qui nécessite la version 1.2 ou supérieure de TLS, procédez comme suit :
- Accédez à la console S3.
- Sélectionnez le compartiment dans la liste.
- Accédez à l'onglet Autorisations.
- Sous Bucket Policy, sélectionnez Modifier.
- Ajoutez une politique pour refuser l'accès aux protocoles de chiffrement que vous souhaitez empêcher. Par exemple, utilisez la politique suivante pour refuser toutes les requêtes HTTPS qui utilisent des versions TLS inférieures à 1.2 :
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "EnforceTLSv12orHigher",
"Principal": {
"AWS": "*"
},
"Action": ["s3:*"],
"Effect": "Deny",
"Resource": [
"arn:aws:s3:::DOC-EXAMPLE-BUCKET/*",
"arn:aws:s3:::DOC-EXAMPLE-BUCKET"
],
"Condition": {
"NumericLessThan": {
"s3:TlsVersion": 1.2
}
}
}
]
}
Vérifiez que vous utilisez des protocoles de chiffrement modernes pour S3
Pour tester votre nouvelle politique, utilisez l'exemple de commande curl suivant pour effectuer des requêtes HTTPS à l'aide d'un ancien protocole spécifique :
curl https://${BUCKET_NAME}.s3.us-east-1.amazonaws.com/image.png -v --tlsv1.0 --tls-max 1.0
L'exemple de commande curl renvoie Accès refusé lorsqu'Amazon S3 détecte que votre demande n'utilise pas le protocole TLS 1.2 ou supérieur.
Il est recommandé d'utiliser AWS CloudTrail Lake pour identifier les anciennes connexions TLS aux points de terminaison des services AWS. Vous pouvez configurer le magasin de données d'événements de CloudTrail Lake pour capturer les événements de gestion ou les événements de données. L'événement CloudTrail correspondant dans CloudTrail Lake affiche une version TLS de 1.2, confirmant que vos clients utilisent une politique de sécurité moderne pour se connecter à Amazon S3.