Concessione delle autorizzazioni ad Amazon SES per la ricezione di e-mail - Amazon Simple Email Service

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à.

Concessione delle autorizzazioni ad Amazon SES per la ricezione di e-mail

Alcune delle attività che puoi eseguire quando ricevi e-mailSES, come l'invio di e-mail a un bucket Amazon Simple Storage Service (Amazon S3) o la chiamata a AWS Lambda una funzione, richiedono autorizzazioni speciali. Questa sezione include gli esempi di policy per diversi casi d'uso comuni.

Configurazione delle autorizzazioni di IAM ruolo per l'azione Deliver to S3 bucket

I seguenti punti sono applicabili a questo IAM ruolo:

Se desideri scrivere su un bucket S3, puoi fornire a un IAM ruolo le autorizzazioni per accedere alle risorse pertinenti per. Operazione di consegna a bucket S3 È inoltre necessario SES autorizzare l'assunzione di quel ruolo per eseguire l'azione tramite una politica di IAM fiducia, come spiegato nella sezione successiva.

Questa politica di autorizzazione deve essere incollata nell'editor delle politiche in linea del IAM ruolo: consulta Operazione di consegna a bucket S3 e segui i passaggi indicati nell'elemento del ruolo. IAM (L'esempio seguente include anche autorizzazioni opzionali nel caso in cui desideri utilizzare la notifica dell'SNSargomento o una chiave gestita dal cliente nell'azione S3.)

{ "Version": "2012-10-17", "Statement": [ // Required: allows SES to write in the bucket { "Sid": "S3Access", "Effect": "Allow", "Action": "s3:PutObject", "Resource": "arn:aws:s3:::my-bucket/*" }, // Optional: use if an SNS topic is used in the S3 action { "Sid": "SNSAccess", "Effect": "Allow", "Action": "sns:Publish", "Resource": "arn:aws:sns:region:111122223333:my-topic" }, // Optional: use if a customer managed key is used in the S3 action { "Sid": "KMSAccess", "Effect": "Allow", "Action": "kms:GenerateDataKey*", "Resource": "arn:aws:kms:region::111122223333:key/key-id" } ] }

Nel precedente esempio di policy, apporta le modifiche seguenti:

  • Replace (Sostituisci) my-bucket con il nome del bucket S3 su cui vuoi scrivere.

  • Replace (Sostituisci) region con il Regione AWS luogo in cui hai creato la regola di ricezione.

  • Replace (Sostituisci) 111122223333 con l'ID AWS del tuo account.

  • Replace (Sostituisci) my-topic con il nome dell'SNSargomento su cui desideri pubblicare le notifiche.

  • Replace (Sostituisci) key-id con l'ID della tua KMS chiave.

Politica di fiducia per il ruolo d'azione IAM di S3

La seguente politica di fiducia deve essere aggiunta alle relazioni di fiducia del IAM ruolo per consentire l'assunzione SES di quel ruolo.

Nota

L'aggiunta manuale di questa politica di fiducia è necessaria solo se non hai creato il tuo IAM ruolo dalla SES console utilizzando i passaggi indicati nell'elemento IAMruolo del Operazione di consegna a bucket S3 flusso di lavoro. Quando si crea il IAM ruolo dalla console, questa politica di attendibilità viene generata automaticamente e applicata al ruolo per cui non è necessario eseguire questo passaggio.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowSESAssume", "Effect": "Allow", "Principal": { "Service": "ses.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "AWS:SourceAccount":"111122223333", "AWS:SourceArn": "arn:aws:ses:region:111122223333:receipt-rule-set/rule_set_name:receipt-rule/receipt_rule_name" } } } ] }

Nel precedente esempio di policy, apporta le modifiche seguenti:

  • Replace (Sostituisci) region con il Regione AWS luogo in cui hai creato la regola di ricezione.

  • Replace (Sostituisci) 111122223333 con l'ID AWS del tuo account.

  • Replace (Sostituisci) rule_set_name con il nome del set di regole che contiene la regola di ricezione che contiene l'azione del bucket Delivery to Amazon S3.

  • Replace (Sostituisci) receipt_rule_name con il nome della regola di ricezione che contiene l'azione del bucket Delivery to Amazon S3.

SESAutorizza la scrittura su un bucket S3

Quando applichi la seguente politica a un bucket S3, SES autorizza la scrittura su quel bucket purché esista in una regione in cui è disponibile la ricezione di SES e-mail. Se desideri scrivere in un bucket al di fuori di una regione di ricezione e-mail, consulta. Configurazione delle autorizzazioni di IAM ruolo per l'azione Deliver to S3 bucket Per ulteriori informazioni sulla creazione di regole di ricezione per il trasferimento di e-mail in entrata ad Amazon S3, consulta Operazione di consegna a bucket S3.

Per maggiori informazioni sulle politiche dei bucket S3, consulta Utilizzo delle policy dei bucket e dell'utente nella Guida per l'utente di Amazon Simple Storage Service.

{ "Version":"2012-10-17", "Statement":[ { "Sid":"AllowSESPuts", "Effect":"Allow", "Principal":{ "Service":"ses.amazonaws.com" }, "Action":"s3:PutObject", "Resource":"arn:aws:s3:::myBucket/*", "Condition":{ "StringEquals":{ "AWS:SourceAccount":"111122223333", "AWS:SourceArn": "arn:aws:ses:region:111122223333:receipt-rule-set/rule_set_name:receipt-rule/receipt_rule_name" } } } ] }

Nel precedente esempio di policy, apporta le modifiche seguenti:

  • Replace (Sostituisci) myBucket con il nome del bucket S3 su cui vuoi scrivere.

  • Replace (Sostituisci) region con la AWS regione in cui hai creato la regola di incasso.

  • Replace (Sostituisci) 111122223333 con l'ID AWS del tuo account.

  • Replace (Sostituisci) rule_set_name con il nome del set di regole che contiene la regola di ricezione che contiene l'azione del bucket Delivery to Amazon S3.

  • Replace (Sostituisci) receipt_rule_name con il nome della regola di ricezione che contiene l'azione del bucket Delivery to Amazon S3.

SESAutorizza l'uso della tua chiave AWS KMS

Per SES crittografare le tue e-mail, deve disporre dell'autorizzazione a utilizzare la AWS KMS chiave che hai specificato quando hai impostato la regola di ricezione. Puoi utilizzare la KMS chiave predefinita (aws/ses) nel tuo account o utilizzare una chiave gestita dal cliente che hai creato. Se utilizzi la KMS chiave predefinita, non è necessario eseguire ulteriori passaggi per SES autorizzare l'utilizzo. Se utilizzi una chiave gestita dal cliente, devi SES autorizzarla a utilizzarla aggiungendo una dichiarazione alla politica della chiave.

Utilizza la seguente dichiarazione politica come politica chiave SES per consentire l'utilizzo della chiave gestita dal cliente quando riceve e-mail sul tuo dominio.

{ "Sid": "AllowSESToEncryptMessagesBelongingToThisAccount", "Effect": "Allow", "Principal": { "Service":"ses.amazonaws.com" }, "Action": [ "kms:GenerateDataKey*" ], "Resource": "*", "Condition":{ "StringEquals":{ "AWS:SourceAccount":"111122223333", "AWS:SourceArn": "arn:aws:ses:region:111122223333:receipt-rule-set/rule_set_name:receipt-rule/receipt_rule_name" } } }

Nel precedente esempio di policy, apporta le modifiche seguenti:

  • Replace (Sostituisci) region con la AWS regione in cui hai creato la regola di ricezione.

  • Replace (Sostituisci) 111122223333 con l'ID AWS del tuo account.

  • Replace (Sostituisci) rule_set_name con il nome del set di regole che contiene la regola di ricezione che hai associato alla ricezione di e-mail.

  • Replace (Sostituisci) receipt_rule_name con il nome della regola di ricezione che hai associato alla ricezione di e-mail.

Se intendi inviare messaggi crittografati a un bucket S3 con crittografia lato server abilitata, devi aggiungere l'azione politica,. AWS KMS "kms:Decrypt" Utilizzando l'esempio precedente, l'aggiunta di questa azione al criterio apparirà come segue:

{ "Sid": "AllowSESToEncryptMessagesBelongingToThisAccount", "Effect": "Allow", "Principal": { "Service":"ses.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey*" ], "Resource": "*", "Condition":{ "StringEquals":{ "AWS:SourceAccount":"111122223333", "AWS:SourceArn": "arn:aws:ses:region:111122223333:receipt-rule-set/rule_set_name:receipt-rule/receipt_rule_name" } } }

Per ulteriori informazioni sull'associazione delle politiche alle AWS KMS chiavi, consulta Using Key Policies nella AWS KMS Developer Guide.AWS Key Management Service

SESAutorizza a richiamare una funzione AWS Lambda

Per abilitare SES la chiamata a una AWS Lambda funzione, puoi scegliere la funzione quando crei una regola di ricezione nella SES console. Quando lo fai, aggiunge SES automaticamente le autorizzazioni necessarie alla funzione.

In alternativa, è possibile utilizzare l'AddPermissionoperazione in AWS Lambda API per associare un criterio a una funzione. La seguente chiamata a AddPermission API dà il SES permesso di richiamare la funzione Lambda. Per ulteriori informazioni su come allegare policy a funzioni Lambda, consulta Autorizzazioni AWS Lambdanella Guida per gli sviluppatori di AWS Lambda .

{ "Action": "lambda:InvokeFunction", "Principal": "ses.amazonaws.com", "SourceAccount": "111122223333", "SourceArn": "arn:aws:ses:region:111122223333:receipt-rule-set/rule_set_name:receipt-rule/receipt_rule_name" "StatementId": "GiveSESPermissionToInvokeFunction" }

Nel precedente esempio di policy, apporta le modifiche seguenti:

  • Replace (Sostituisci) region con la AWS regione in cui hai creato la regola di ricezione.

  • Replace (Sostituisci) 111122223333 con l'ID AWS del tuo account.

  • Replace (Sostituisci) rule_set_name con il nome del set di regole che contiene la regola di ricezione in cui è stata creata la funzione Lambda.

  • Replace (Sostituisci) receipt_rule_name con il nome della regola di ricezione contenente la funzione Lambda.

SESAutorizza la pubblicazione su un SNS argomento Amazon che appartiene a un altro AWS account

Per pubblicare notifiche su un argomento in un AWS account separato, devi allegare una policy all'SNSargomento Amazon. L'SNSargomento deve appartenere alla stessa regione del set di regole di ricezione e dominio.

La seguente politica SES autorizza la pubblicazione su un SNS argomento Amazon in un AWS account separato.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Principal":{ "Service":"ses.amazonaws.com" }, "Action":"SNS:Publish", "Resource":"arn:aws:sns:topic_region:sns_topic_account_id:topic_name", "Condition":{ "StringEquals":{ "AWS:SourceAccount":"aws_account_id", "AWS:SourceArn": "arn:aws:ses:receipt_region:aws_account_id:receipt-rule-set/rule_set_name:receipt-rule/receipt_rule_name" } } } ] }

Nel precedente esempio di policy, apporta le modifiche seguenti:

  • Replace (Sostituisci) topic_region con il Regione AWS quale è stato creato l'SNSargomento Amazon.

  • Replace (Sostituisci) sns_topic_account_id con l'ID dell' AWS account proprietario dell'SNSargomento Amazon.

  • Replace (Sostituisci) topic_name con il nome dell'SNSargomento Amazon su cui desideri pubblicare le notifiche.

  • Replace (Sostituisci) aws_account_id con l'ID dell' AWS account configurato per ricevere e-mail.

  • Replace (Sostituisci) receipt_region con il Regione AWS punto in cui hai creato la regola di ricezione.

  • Replace (Sostituisci) rule_set_name con il nome del set di regole che contiene la regola di ricezione in cui hai creato l'azione SNS tematica di pubblicazione su Amazon.

  • Replace (Sostituisci) receipt_rule_name con il nome della regola di ricezione contenente l'azione SNS tematica di pubblicazione su Amazon.

Se il tuo SNS argomento su Amazon utilizza AWS KMS la crittografia lato server, devi aggiungere le autorizzazioni alla AWS KMS policy chiave. Puoi aggiungere autorizzazioni allegando la seguente politica alla politica chiave: AWS KMS

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowSESToUseKMSKey", "Effect": "Allow", "Principal": { "Service": "ses.amazonaws.com" }, "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "*" } ] }