Rôle IAM pour l'exportation de points de terminaison ou de segments - Amazon Pinpoint

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.

Rôle IAM pour l'exportation de points de terminaison ou de segments

Vous pouvez obtenir une liste des points de terminaison en créant une tâche d'exportation. Lorsque vous créez une tâche d'exportation, vous devez spécifier un ID de projet et vous pouvez, si vous le souhaitez, spécifier un ID de segment. Amazon Pinpoint exporte ensuite la liste des points de terminaison associés au projet ou au segment vers un compartiment Amazon Simple Storage Service (Amazon S3). Le fichier obtenu contient la liste au format JSON des points de terminaison et de leurs attributs (le canal, l'adresse, la possibilité d'accepter ou de refuser le statut, la date de création et l'ID de point de terminaison, par exemple).

Pour créer une tâche d'exportation, vous devez configurer un rôle IAM qui autorise Amazon Pinpoint à écrire dans un compartiment Amazon S3. Le processus de configuration du rôle se compose de deux étapes :

  1. Créez une politique IAM qui autorise une entité (dans le cas présent, Amazon Pinpoint) à écrire dans un compartiment Amazon S3 spécifique.

  2. Créez un rôle IAM et attachez-lui la stratégie.

Cette rubrique contient les procédures de réalisation de ces deux étapes. Ces procédures supposent que vous avez déjà créé un compartiment Amazon S3 et un dossier au sein de ce compartiment pour stocker les segments exportés. Pour plus d'informations sur la création de compartiments, consultez Création d'un compartiment dans le Guide de l'utilisateur Amazon Simple Storage Service.

Ces procédures supposent aussi que vous avez déjà installé et configuré l' AWS Command Line Interface (AWS CLI). Pour plus d'informations sur la configuration du AWS CLI, reportez-vous à la section Installation du AWS CLI dans le guide de AWS Command Line Interface l'utilisateur.

Étape 1 : créer la politique IAM

Une politique IAM définit les autorisations d'une entité, telle qu'une identité ou une ressource. Pour créer un rôle pour exporter les points de terminaison Amazon Pinpoint, vous devez créer une politique qui accorde l'autorisation d'écrire dans un dossier spécifique d'un compartiment Amazon S3 donné. L'exemple de stratégie suivant respecte la pratique en matière de sécurité d'octroi du moindre privilège, autrement dit elle n'accorde que les autorisations requises pour exécuter une seule tâche.

Pour créer la stratégie IAM
  1. Dans un éditeur de texte, créez un fichier. Collez le code suivant dans le fichier :

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowUserToSeeBucketListInTheConsole", "Action": [ "s3:ListAllMyBuckets", "s3:GetBucketLocation" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::*" ] }, { "Sid": "AllowRootAndHomeListingOfBucket", "Action": [ "s3:ListBucket" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::example-bucket" ], "Condition": { "StringEquals": { "s3:delimiter": [ "/" ], "s3:prefix": [ "", "Exports/" ] } } }, { "Sid": "AllowListingOfUserFolder", "Action": [ "s3:ListBucket" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::example-bucket" ], "Condition": { "StringLike": { "s3:prefix": [ "Exports/*" ] } } }, { "Sid": "AllowAllS3ActionsInUserFolder", "Action": [ "s3:*" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::example-bucket/Exports/*" ] } ] }

    Dans le code précédent, remplacez toutes les instances d'example-bucket par le nom du compartiment Amazon S3 qui contient le dossier vers lequel vous souhaitez exporter les informations du segment. En outre, remplacez l'instance d'Exports par le nom du dossier lui-même.

    Lorsque vous avez terminé, enregistrez le fichier sous s3policy.json.

  2. À l'aide de AWS CLI, naviguez jusqu'au répertoire dans lequel se trouve le s3policy.json fichier. Ensuite, entrez la commande suivante pour créer la stratégie :

    aws iam create-policy --policy-name s3ExportPolicy --policy-document file://s3policy.json

    Si la stratégie a été créée avec succès, vous obtenez une sortie similaire à ce qui suit :

    { "Policy": { "CreateDate": "2018-04-11T18:44:34.805Z", "IsAttachable": true, "DefaultVersionId": "v1", "AttachmentCount": 0, "PolicyId": "ANPAJ2YJQRJCG3EXAMPLE", "UpdateDate": "2018-04-11T18:44:34.805Z", "Arn": "arn:aws:iam::123456789012:policy/s3ExportPolicy", "PolicyName": "s3ExportPolicy", "Path": "/" } }

    Copiez l'Amazon Resource Name (ARN) de la stratégie (arn:aws:iam::123456789012:policy/s3ExportPolicy dans l'exemple précédent). Dans la section suivante, vous devez fournir cet ARN lorsque vous créez le rôle.

    Note

    Si vous voyez un message indiquant que votre compte n'est pas autorisé à effectuer l'opération CreatePolicy, vous devez attacher une politique à votre utilisateur vous permettant de créer des politiques et des rôles IAM. Pour plus d’informations, consultez la rubrique Ajout et suppression d’autorisations basées sur l’identité IAM du Guide de l’utilisateur IAM.

Étape 2 : création du rôle IAM

Maintenant que vous avez créé une politique IAM, vous pouvez créer un rôle et lui attacher la politique. Chaque rôle IAM contient une stratégie d'approbation, à savoir un ensemble de règles qui spécifie les entités autorisées à endosser le rôle. Dans cette section, vous allez créer une stratégie d'approbation qui autorise Amazon Pinpoint à assumer le rôle. Ensuite, vous créez le rôle lui-même, puis attachez la stratégie que vous avez créée dans la section précédente.

Pour créer le rôle IAM
  1. Dans un éditeur de texte, créez un fichier. Collez le code suivant dans le fichier :

    { "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Principal":{ "Service":"pinpoint.amazonaws.com" }, "Action":"sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "accountId" }, "ArnLike": { "aws:SourceArn": "arn:aws:mobiletargeting:region:accountId:apps/applicationId" } } } ] }

    Enregistrez le fichier sous le nom trustpolicy.json.

  2. À l'aide de AWS CLI, naviguez jusqu'au répertoire dans lequel se trouve le trustpolicy.json fichier. Entrez la commande suivante pour créer un nouveau rôle :

    aws iam create-role --role-name s3ExportRole --assume-role-policy-document file://trustpolicy.json
  3. Sur la ligne de commande, entrez la commande suivante pour attacher la stratégie que vous avez créée dans la section précédente au rôle que vous venez de créer :

    aws iam attach-role-policy --policy-arn arn:aws:iam::123456789012:policy/s3ExportPolicy --role-name s3ExportRole

    Dans la commande précédente, remplacez arn:aws:iam : :123456789012:policy/s3 par l'ARN de la politique que vous avez créée dans la section précédente. ExportPolicy