Bonnes pratiques de sécurité pour Amazon SNS - Amazon Simple Notification Service

Bonnes pratiques de sécurité pour Amazon SNS

AWS offre de nombreuses fonctionnalités de sécurité pour Amazon SNS. Déterminez en quoi ces fonctionnalités de sécurité peuvent être utiles dans le contexte de votre propre stratégie de sécurité.

Note

Les instructions relatives à ces fonctionnalités de sécurité s'appliquent aux cas d'utilisation et aux implémentations courants. Nous vous suggérons de consulter ces bonnes pratiques dans le contexte de votre cas d'utilisation, de votre architecture et de votre modèle spécifique de lutte contre les menaces.

Bonnes pratiques en matière de prévention

Voici les bonnes pratiques de sécurité préventive pour Amazon SNS.

Vérification que les rubriques ne sont pas accessibles publiquement

À moins que vous n'ayez explicitement demandé que quiconque sur Internet puisse lire ou écrire dans votre rubrique Amazon SNS, vous devez vous assurer que celle-ci n'est pas accessible publiquement (accessible par tout le monde ou par tout utilisateur AWS authentifié).

  • Évitez de créer des stratégies avec Principal défini sur "".

  • Évitez d'utiliser un caractère générique (*). Nommez plutôt un ou plusieurs utilisateurs spécifiques.

Implémentation d'un accès sur la base du moindre privilège

Lorsque vous accordez des autorisations, vous décidez qui les reçoit, à quelles rubriques celles-ci sont destinées et quelles actions d'API spécifiques vous souhaitez autoriser pour ces rubriques. La mise en œuvre du principe du moindre privilège est cruciale pour réduire les risques en matière de sécurité. Elle contribue également à réduire l'effet négatif des erreurs ou des intentions malveillantes.

Suivez les conseils de sécurité standard pour accorder le moindre privilège. Autrement dit, accordez uniquement les autorisations requises pour effectuer une tâche spécifique. Vous pouvez implémenter le moindre privilège en utilisant une combinaison de stratégies de sécurité relatives à l'accès des utilisateurs.

Amazon SNS utilise le modèle éditeur-abonné, nécessitant trois types d'accès de compte utilisateur :

  • Administrateurs - Accès à la création, à la modification et à la suppression de rubriques. Les administrateurs contrôlent également les stratégies de rubrique.

  • Éditeurs – Accès à l'envoi de messages à des rubriques.

  • Abonnés – Accès à l'abonnement à des rubriques.

Pour plus d'informations, consultez les sections suivantes:

Utilisation de rôles IAM pour les applications et les services AWS nécessitant un accès à Amazon SNS

Pour que des applications ou des services AWS comme Amazon EC2 accèdent à des rubriques Amazon SNS, ceux-ci doivent utiliser des informations d'identification AWS valides dans leurs demandes d'API AWS. Comme ces informations d'identification ne font pas l'objet d'une rotation automatique, vous ne devez pas stocker des informations d'identification AWS directement dans l'application ou l'instance EC2.

Vous devez utiliser un rôle IAM pour gérer des informations d’identification temporaires pour les applications ou services devant accéder à Amazon SNS. Lorsque vous utilisez un rôle, vous n'avez pas à distribuer des informations d'identification à long terme (par exemple, un nom d'utilisateur et un mot de passe, et des clé d'accès) à une instance EC2 ou à un service AWS comme AWS Lambda. À la place, le rôle fournit des autorisations temporaires que les applications peuvent utiliser lors d'appels à d'autres ressources AWS.

Pour de plus amples informations, veuillez consulter Rôles IAMet Scénarios courants pour les rôles : utilisateurs, applications et services dans le guide de l’utilisateur.

Mise en œuvre du chiffrement côté serveur

Pour atténuer les problèmes de fuite de données, utilisez le chiffrement au repos pour chiffrer vos messages à l'aide d'une clé stockée dans un emplacement différent de celui où les messages sont stockés. Le chiffrement côté serveur (SSE) fournit le chiffrement des données au repos. Amazon SNS chiffre vos données au niveau des messages lorsqu'il les stocke et déchiffre les messages pour vous lorsque vous y accédez. SSE utilise des clés gérées dans AWS Key Management Service. Tant que vous authentifiez votre demande et que vous avez des autorisations d'accès, il n'y a aucune différence entre l'accès aux rubriques chiffrées et aux rubriques déchiffrées.

Pour de plus amples informations, veuillez consulter Chiffrement au repos et Gestion des clés.

Application du chiffrement des données en transit

Il est possible, mais non recommandé, de publier des messages qui ne sont pas chiffrés pendant le transit en utilisant HTTP. Cependant, vous ne pouvez pas utiliser HTTP lors de la publication dans une rubrique SNS chiffrée.

AWS recommande d'utiliser HTTPS au lieu de HTTP. Lorsque vous utilisez HTTPS, les messages sont automatiquement chiffrés pendant le transit, même si la rubrique SNS elle-même n'est pas chiffrée. Sans HTTPS, un pirate sur le réseau peut écouter le trafic réseau ou le manipuler, en utilisant une attaque telle qu'une attaque de l'homme du milieu.

Pour appliquer uniquement les connexions chiffrées via HTTPS, ajoutez la condition aws:SecureTransport dans la politique IAM attachée aux rubriques SNS non chiffrées. Cela force les éditeurs de messages à utiliser HTTPS au lieu de HTTP. Vous pouvez utiliser l'exemple de politique suivant à titre de guide :

{ "Id": "ExamplePolicy", "Version": "2012-10-17", "Statement": [ { "Sid": "AllowPublishThroughSSLOnly", "Action": "SNS:Publish", "Effect": "Deny", "Resource": [ "arn:aws:sns:us-east-1:1234567890:test-topic" ], "Condition": { "Bool": { "aws:SecureTransport": "false" } }, "Principal": "*" } ] }

Réflexion sur l'utilisation des points de terminaison de VPC pour accéder à Amazon SNS

Si vous avez des rubriques avec lesquelles vous devez pouvoir interagir mais qui ne doivent absolument pas être exposées à Internet, utilisez des points de terminaison de VPC afin d'en limiter l'accès aux seuls hôtes qui font partie de ce VPC. Vous pouvez utiliser des stratégies de rubrique pour contrôler l'accès aux rubriques à partir de points de terminaison Amazon point de terminaison d'un VPC ou de VPC spécifiques.

Les points de terminaison Amazon SNS VPC offrent deux façons de contrôler l'accès à vos messages :

  • Vous pouvez contrôler les demandes, les utilisateurs ou les groupes autorisés à traverser un point de terminaison d'un VPC spécifique.

  • Vous pouvez contrôler quels VPC ou points de terminaison de VPC ont accès à votre rubrique à l'aide d'une stratégie de rubrique.

Pour de plus amples informations, veuillez consulter Création du point de terminaison et Création d'une politique de point de terminaison d'Amazon VPC pour Amazon SNS.

Assurez-vous que les abonnements ne sont pas configurés pour être livrés aux points de terminaison http bruts

Évitez de configurer les abonnements pour effectuer une livraison à des points de terminaison http bruts. Ayez toujours des abonnements livrés au nom de domaine d’un de point de terminaison. Par exemple, un abonnement configuré pour effectuer une livraison à un point de terminaison, http://1.2.3.4/my-path, doit être remplacé par http://my.domain.name/my-path.