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

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.

Bonnes pratiques de sécurité pour Amazon SNS

AWS fournit 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 ne demandiez explicitement à quiconque sur Internet de lire ou d'écrire sur votre sujet Amazon SNS, vous devez vous assurer que votre sujet n'est pas accessible au public (accessible par tout le monde dans le monde ou par tout utilisateur authentifié AWS ).

  • É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 :

Utiliser les rôles IAM pour les applications et les AWS services qui nécessitent un accès Amazon SNS

Pour que les applications ou les AWS services, tels qu'Amazon EC2, puissent accéder aux rubriques Amazon SNS, ils doivent utiliser des AWS informations d'identification valides dans leurs demandes d' AWS API. Ces informations d'identification ne faisant pas l'objet d'une rotation automatique, vous ne devez pas les stocker AWS directement dans l'application ou l' EC2 instance.

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 besoin de distribuer des informations d'identification à long terme (telles qu'un nom d'utilisateur, un mot de passe et des clés d'accès) à une EC2 instance ou à un AWS service, tel que AWS Lambda. Le rôle fournit plutôt des autorisations temporaires que les applications peuvent utiliser lorsqu'elles appellent d'autres AWS ressources.

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 plus d’informations, consultez Sécurisation des données Amazon SNS grâce au chiffrement côté serveur et Gestion des clés de chiffrement et des coûts Amazon SNS.

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. Toutefois, lorsqu'un sujet est chiffré au repos à l'aide du protocole HTTPS AWS KMS, il est nécessaire d'utiliser le protocole HTTPS pour publier les messages afin de garantir le chiffrement à la fois au repos et en transit. Bien que le sujet ne rejette pas automatiquement les messages HTTP, l'utilisation du protocole HTTPS est nécessaire pour maintenir les normes de sécurité.

AWS recommande d'utiliser le protocole HTTPS au lieu du protocole 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 attaquant basé sur le réseau peut espionner le trafic réseau ou le manipuler à l'aide d'une attaque telle que. man-in-the-middle

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 les politiques relatives aux sujets pour contrôler l'accès aux sujets depuis des points de terminaison Amazon VPC spécifiques ou depuis des points spécifiques. VPCs

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 points de terminaison VPCs ou quels points de terminaison VPC ont accès à votre sujet à l'aide d'une politique de sujet.

Pour plus d’informations, consultez 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.