IAMruolo per l'esportazione di endpoint o segmenti - Amazon Pinpoint

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

IAMruolo per l'esportazione di endpoint o segmenti

È possibile ottenere un elenco di endpoint creando un processo di esportazione. Quando crei un processo di esportazione, devi specificare un ID progetto e, facoltativamente, un ID segmento. Amazon Pinpoint esporta quindi un elenco degli endpoint associati al progetto o al segmento in un bucket Amazon Simple Storage Service (Amazon S3). Il file risultante contiene un elenco in JSON formato elettronico di endpoint e relativi attributi, come canale, indirizzo, stato di opt-in/opt-out, data di creazione e ID dell'endpoint.

Per creare un processo di esportazione, devi configurare un IAM ruolo che consenta ad Amazon Pinpoint di scrivere su un bucket Amazon S3. Il processo di configurazione del ruolo prevede due fasi:

  1. Crea una IAM policy che consenta a un'entità (in questo caso, Amazon Pinpoint) di scrivere su un bucket Amazon S3 specifico.

  2. Crea un IAM ruolo e associa la policy ad esso.

Questo argomento contiene le procedure per completare entrambe le fasi. Queste procedure presuppongono che sia già stato creato un bucket Amazon S3, con una cartella al suo interno, per archiviare i segmenti esportati. Per ulteriori informazioni sulla creazione di un bucket, consulta Creazione di un bucket nella Guida per l'utente di Amazon Simple Storage Service.

Queste procedure si basano anche sul presupposto che l' AWS Command Line Interface (AWS CLI) sia già stata installata e configurata. Per informazioni sulla configurazione di AWS CLI, vedere Installazione di AWS CLI nella Guida per l'AWS Command Line Interface utente.

Fase 1: creazione della policy IAM

Una IAM policy definisce le autorizzazioni per un'entità, ad esempio un'identità o una risorsa. Per creare un ruolo per l'esportazione di endpoint Amazon Pinpoint, devi creare una policy che conceda le autorizzazioni di scrittura per una determinata cartella in un determinato bucket Amazon S3. Il seguente esempio di policy segue la pratica di sicurezza che prevede la concessione del privilegio minimo, ovvero concede solo le autorizzazioni necessarie per eseguire una singola attività.

Per creare la policy IAM
  1. In un editor di testo, crea un nuovo file. Incolla il codice seguente nel file:

    { "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:::amzn-s3-demo-bucket-example-bucket" ], "Condition": { "StringEquals": { "s3:delimiter": [ "/" ], "s3:prefix": [ "", "Exports/" ] } } }, { "Sid": "AllowListingOfUserFolder", "Action": [ "s3:ListBucket" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket-example-bucket" ], "Condition": { "StringLike": { "s3:prefix": [ "Exports/*" ] } } }, { "Sid": "AllowAllS3ActionsInUserFolder", "Action": [ "s3:*" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket-example-bucket/Exports/*" ] } ] }

    Nel codice precedente, sostituite tutte le istanze di amzn-s3-demo-bucket-example-bucket con il nome del bucket Amazon S3 che contiene la cartella in cui desideri esportare le informazioni sul segmento. Inoltre, sostituisci tutte le istanze di Exports con il nome della cartella stessa.

    Al termine, salva il file come s3policy.json.

  2. Utilizzando AWS CLI, accedete alla directory in cui si trova il s3policy.json file. Immetti il comando seguente per creare la policy:

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

    Se la creazione della policy è andata a buon fine, verrà visualizzato un output simile al seguente:

    { "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": "/" } }

    Copia l'Amazon Resource Name (ARN) della policy (arn:aws:iam::123456789012:policy/s3ExportPolicynell'esempio precedente). Nella sezione successiva, devi fornirlo ARN quando crei il ruolo.

    Nota

    Se vedi un messaggio che indica che il tuo account non è autorizzato a eseguire l'CreatePolicyoperazione, devi allegare all'utente una politica che ti consenta di creare nuove IAM politiche e ruoli. Per ulteriori informazioni, consulta Aggiungere e rimuovere le autorizzazioni di IAM identità nella Guida per l'IAMutente.

Fase 2: creazione del ruolo IAM

Ora che hai creato una IAM policy, puoi creare un ruolo e allegare la policy ad essa. Ogni IAM ruolo contiene una politica di fiducia, un insieme di regole che specifica quali entità sono autorizzate ad assumere il ruolo. In questa sezione viene creata una policy di attendibilità che consente ad Amazon Pinpoint di assumere il ruolo. In seguito si creerà il ruolo stesso e vi si collegherà la policy creata nella sezione precedente.

Per creare il ruolo IAM
  1. In un editor di testo, crea un nuovo file. Incolla il codice seguente nel file:

    { "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" } } } ] }

    Salva il file con nome trustpolicy.json.

  2. Utilizzando AWS CLI, accedete alla directory in cui si trova il trustpolicy.json file. Immetti il comando seguente per creare un nuovo ruolo:

    aws iam create-role --role-name s3ExportRole --assume-role-policy-document file://trustpolicy.json
  3. Nella riga di comando immetti il comando seguente per collegare la policy creata nella sezione precedente al ruolo che hai appena creato:

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

    Nel comando precedente, sostituisci arn:aws:iam::123456789012:policy/s3ExportPolicy con ARN la politica che hai creato nella sezione precedente.