Sélectionner vos préférences de cookies

Nous utilisons des cookies essentiels et des outils similaires qui sont nécessaires au fonctionnement de notre site et à la fourniture de nos services. Nous utilisons des cookies de performance pour collecter des statistiques anonymes afin de comprendre comment les clients utilisent notre site et d’apporter des améliorations. Les cookies essentiels ne peuvent pas être désactivés, mais vous pouvez cliquer sur « Personnaliser » ou « Refuser » pour refuser les cookies de performance.

Si vous êtes d’accord, AWS et les tiers approuvés utiliseront également des cookies pour fournir des fonctionnalités utiles au site, mémoriser vos préférences et afficher du contenu pertinent, y compris des publicités pertinentes. Pour accepter ou refuser tous les cookies non essentiels, cliquez sur « Accepter » ou « Refuser ». Pour effectuer des choix plus détaillés, cliquez sur « Personnaliser ».

Utilisation de politiques basées sur l'identité avec Amazon SNS

Mode de mise au point
Utilisation de politiques basées sur l'identité avec 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.

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.

Amazon Simple Notification Service s'intègre à AWS Identity and Access Management (IAM) afin que vous puissiez spécifier les actions Amazon SNS qu'un de Compte AWS vos utilisateurs peut effectuer avec les ressources Amazon SNS. Vous pouvez indiquer une rubrique particulière dans la politique. Par exemple, vous pouvez utiliser des variables lorsque vous créez une politique IAM qui autorise certains utilisateurs de votre organisation à utiliser l'action Publish avec des rubriques spécifiques dans votre Compte AWS. Pour plus d'informations, consultez la section Variables de politique dans le guide Utilisation d'IAM.

Important

L'utilisation d'Amazon SNS avec IAM ne modifie pas l'utilisation d'Amazon SNS. Aucun changement n'est apporté aux actions Amazon SNS et aucune nouvelle action Amazon SNS associée aux utilisateurs et au contrôle d'accès n'est ajoutée.

Pour obtenir des exemples de politiques couvrant les actions et ressources Amazon SNS, consultez Exemples de politiques pour Amazon SNS.

politiques IAM et Amazon SNS ensemble

Vous utilisez une politique IAM pour limiter l'accès de vos utilisateurs aux actions et rubriques Amazon SNS. Une politique IAM peut restreindre l'accès uniquement aux utilisateurs de votre AWS compte, pas aux autres Comptes AWS utilisateurs.

Vous utilisez une politique Amazon SNS avec une rubrique particulière pour limiter les personnes autorisées à travailler avec cette rubrique (par exemple, qui peut y publier des messages, qui peut s'y abonner, etc.). Les politiques Amazon SNS peuvent accorder l'accès à d'autres Comptes AWS utilisateurs ou à des utilisateurs appartenant aux vôtres. Compte AWS

Pour accorder à vos utilisateurs des autorisations d'accès à vos rubriques Amazon SNS, vous pouvez utiliser des politiques IAM, des politiques Amazon SNS, ou les deux. Dans l'ensemble, vous obtenez les mêmes résultats avec l'un ou l'autre. Par exemple, le schéma suivant illustre une politique IAM et une politique Amazon SNS équivalentes. La politique IAM autorise l'action Amazon Subscribe SNS pour le sujet intitulé topic_xyz dans Compte AWS votre. La politique IAM est attachée aux utilisateurs Bob et Susan (ce qui signifie que Bob et Susan disposent des autorisations indiquées dans la politique). La politique Amazon SNS donne également à Bob et Susan l'autorisation d'accéder à Subscribe pour la rubrique topic_xyz.

Compare une politique IAM et une politique Amazon SNS, en montrant que les deux politiques accordent des autorisations équivalentes à deux utilisateurs, Bob et Susan, leur permettant de s'abonner à une rubrique Amazon SNS spécifique au sein d'un. Compte AWS La principale différence mise en évidence est que les politiques Amazon SNS peuvent accorder des autorisations aux utilisateurs de différentes manières Comptes AWS, alors que les politiques IAM ne le peuvent pas.
Note

L'exemple précédent montre des politiques simples, sans conditions. Vous pouvez spécifier une condition particulière dans l'une ou l'autre des politiques et aboutir au même résultat.

Il existe une différence entre les politiques AWS IAM et Amazon SNS : le système de politique Amazon SNS vous permet d'accorder des autorisations à Comptes AWS d'autres personnes, contrairement à la politique IAM.

Il vous incombe de décider si vous voulez utiliser les deux systèmes conjointement pour gérer vos autorisations, en fonction de vos besoins. Les exemples suivants illustrent la façon dont les deux systèmes de politique interagissent.

Exemple 1

Dans cet exemple, une politique IAM et une politique Amazon SNS s'appliquent toutes deux à Bob. La politique IAM lui accorde l'autorisation d'utiliser n'importe quel Subscribe sujet, tandis que la politique Amazon SNS lui accorde l'autorisation d'Publishutiliser un sujet spécifique (topic_xyz). Compte AWS Le diagramme suivant illustre le concept.

Montre comment une politique IAM et une politique Amazon SNS s'appliquent à l'utilisateur Bob, la politique IAM lui permettant de s'abonner à n'importe quel sujet Compte AWS du, et la politique Amazon SNS lui accordant l'autorisation de publier des messages sur un sujet spécifique nommé « topic_xyz ». Le diagramme met en évidence la distinction entre les autorisations générales accordées par la politique IAM et les autorisations spécifiques accordées par la politique Amazon SNS pour un sujet particulier.

Si Bob envoyait une demande d'abonnement à n'importe quel sujet du AWS compte, la politique IAM autoriserait cette action. Si Bob était sur le point d'envoyer une demande de publication d'un message dans la rubrique topic_xyz, la politique Amazon SNS autoriserait l'action.

Exemple 2

Dans ce cas, nous nous appuyons sur l'exemple 1 (où deux politiques s'appliquent à Bob). Disons que Bob publie des messages dans la rubrique topic_xyz, ce qu'il ne devrait pas être autorisé à faire. Vous voulez complètement supprimer cette possibilité de publication dans des rubriques. La meilleure chose à faire consiste à ajouter une politique IAM qui lui refuse l'accès à l'action Publish sur toutes les rubriques. Cette troisième politique remplace la politique Amazon SNS qui lui donnait initialement l'autorisation d'effectuer une publication dans la rubrique topic_xyz, car un refus explicite remplace toujours une autorisation (pour plus d'informations sur la logique d'évaluation de politique, consultez Logique d'évaluation). Le diagramme suivant illustre le concept.

Illustration de la façon dont l'ajout d'une politique IAM qui refuse l'action « Publier » pour tous les sujets peut annuler une politique Amazon SNS existante qui autorisait l'utilisateur Bob à publier sur un sujet spécifique, « topic_xyz ». La politique de refus IAM a priorité sur la politique Amazon SNS, empêchant ainsi Bob de publier sur n'importe quel sujet, y compris « topic_xyz ».

Pour obtenir des exemples de politiques couvrant les actions et ressources Amazon SNS, consultez Exemples de politiques pour Amazon SNS.

Format ARN des ressources Amazon SNS

Pour Amazon SNS, les rubriques sont le seul type de ressource que vous pouvez spécifier dans une politique. Vous trouverez ci-dessous le format Amazon Resource Name (ARN) pour les rubriques.

arn:aws:sns:region:account_ID:topic_name

Pour plus d'informations ARNs, consultez le Guide ARNsde l'utilisateur IAM.

Ce qui suit est un ARN pour une rubrique nommée MyTopic dans la région us-east-2, appartenant à 123456789012. Compte AWS

arn:aws:sns:us-east-2:123456789012:MyTopic

Si un sujet était nommé MyTopic dans chacune des différentes régions prises en charge par Amazon SNS, vous pourriez le spécifier avec l'ARN suivant.

arn:aws:sns:*:123456789012:MyTopic

Vous pouvez utiliser les caractères génériques * et ? dans le nom de la rubrique. Par exemple, la ligne suivante peut faire référence à toutes les rubriques créées par Bob, auxquelles il a ajouté le préfixe bob_.

arn:aws:sns:*:123456789012:bob_*

Pour vous faciliter les choses, lorsque vous créez une rubrique, Amazon SNS renvoie l'ARN de la rubrique dans la réponse.

Actions d'API Amazon SNS

Dans une politique IAM, vous pouvez spécifier les actions qu'Amazon SNS propose. Toutefois, les actions ConfirmSubscription et Unsubscribe ne nécessitent pas d'authentification, ce qui signifie que même si vous spécifiez ces actions dans une politique, IAM ne limitera pas l'accès des utilisateurs à ces actions.

Chaque action que vous spécifiez dans une politique doit être précédée de la chaîne en minuscules sns:. Pour spécifier toutes les actions Amazon SNS, par exemple, vous utiliseriez sns:*. Pour obtenir la liste des actions, consultez la Référence de l'API Amazon Simple Notification Service.

Clés de politique Amazon SNS

Amazon SNS implémente les clés de politique générales AWS suivantes, ainsi que certaines clés spécifiques aux services.

Pour obtenir la liste des clés de condition prises en charge par chacune d'entre elles Service AWS, voir Actions, ressources et clés de condition Services AWS dans le guide de l'utilisateur IAM. Pour obtenir une liste des clés de condition qui peuvent être utilisées à plusieurs reprises Services AWS, voir les clés contextuelles de condition AWS globales dans le guide de l'utilisateur IAM.

Amazon SNS utilise les clés spécifiques au service suivantes. Utilisez ces clés dans les politiques limitant l'accès aux demandes Subscribe.

  • sns:endpoint – URL, adresse e-mail ou ARN provenant d'une demande Subscribe ou d'un abonnement confirmé au préalable. Il convient de l'utiliser avec des conditions de chaîne (consultez la section Exemples de politiques pour Amazon SNS) pour limiter l'accès à des points de terminaison spécifiques (par exemple, *@yourcompany.com).

  • sns:protocol – valeur protocol provenant d'une demande Subscribe ou d'un abonnement confirmé au préalable. Il convient de l'utiliser avec des conditions de chaîne (consultez la section Exemples de politiques pour Amazon SNS) pour limiter la publication à des protocoles de diffusion spécifiques (par exemple, https).

Exemples de politiques pour Amazon SNS

Cette section illustre plusieurs exemples simples de politique pour contrôler l'accès utilisateur à Amazon SNS.

Note

À l'avenir, il se peut qu'Amazon SNS ajoute de nouvelles actions qui devraient être logiquement incluses dans l'une des politiques suivantes, en fonction des objectifs établis de la politique.

Exemple 1 : Autoriser un groupe à créer et gérer des rubriques

Dans cet exemple, nous créons une politique qui permet d'accéder à CreateTopic, ListTopics, SetTopicAttributes et DeleteTopic.

{ "Statement": [{ "Effect": "Allow", "Action": ["sns:CreateTopic", "sns:ListTopics", "sns:SetTopicAttributes", "sns:DeleteTopic"], "Resource": "*" }] }
Exemple 2 : Autoriser le groupe informatique à publier des messages dans une rubrique particulière

Dans cet exemple, nous créons un groupe pour l'informatique et affectons une politique qui permet d'accéder à Publish sur le sujet qui vous intéresse spécifiquement.

{ "Statement": [{ "Effect": "Allow", "Action": "sns:Publish", "Resource": "arn:aws:sns:*:123456789012:MyTopic" }] }
Exemple 3 : Donnez aux utilisateurs la Compte AWS possibilité de s'abonner à des sujets

Dans cet exemple, nous créons une politique qui permet d'accéder à l'action Subscribe, avec des conditions de correspondance de chaîne pour les clés de politique sns:Protocol et sns:Endpoint.

{ "Statement": [{ "Effect": "Allow", "Action": ["sns:Subscribe"], "Resource": "*", "Condition": { "StringLike": { "sns:Endpoint": "*@example.com" }, "StringEquals": { "sns:Protocol": "email" } } }] }
Exemple 4 : Autoriser un partenaire à publier des messages dans une rubrique particulière

Vous pouvez utiliser une politique Amazon SNS ou une politique IAM pour autoriser un partenaire à effectuer une publication dans une rubrique spécifique. Si votre partenaire dispose d'une politique Amazon SNS Compte AWS, il peut être plus facile d'utiliser une politique Amazon SNS. Cependant, toute personne de l'entreprise du partenaire possédant les informations AWS de sécurité peut publier des messages sur le sujet. Cet exemple part du principe que vous voulez limiter l'accès à une personne (ou application) spécifique. Pour ce faire, vous devez traiter le partenaire comme un utilisateur au sein de votre propre entreprise et utiliser une politique IAM au lieu d'une politique Amazon SNS.

Dans cet exemple, nous créons un groupe appelé WidgetCo qui représente l'entreprise partenaire ; nous créons un utilisateur pour la personne (ou l'application) spécifique de l'entreprise partenaire qui a besoin d'un accès ; puis nous plaçons l'utilisateur dans le groupe.

Nous joignons ensuite une politique qui accorde au groupe l'Publishaccès au sujet spécifique nommé WidgetPartnerTopic.

Nous voulons également empêcher le WidgetCo groupe de faire quoi que ce soit d'autre avec les sujets. Nous avons donc ajouté une déclaration refusant l'autorisation d'effectuer des actions Amazon SNS autres que celles portant Publish sur des sujets autres que. WidgetPartnerTopic Cette opération est nécessaire uniquement s'il existe une politique large ailleurs dans le système, qui donne aux utilisateurs un large accès à Amazon SNS.

{ "Statement": [{ "Effect": "Allow", "Action": "sns:Publish", "Resource": "arn:aws:sns:*:123456789012:WidgetPartnerTopic" }, { "Effect": "Deny", "NotAction": "sns:Publish", "NotResource": "arn:aws:sns:*:123456789012:WidgetPartnerTopic" } ] }
ConfidentialitéConditions d'utilisation du sitePréférences de cookies
© 2025, Amazon Web Services, Inc. ou ses affiliés. Tous droits réservés.