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à.
Identity and Access Management in Amazon SES
Puoi utilizzare AWS Identity and Access Management (IAM) con Amazon Simple Email Service (Amazon SES) per specificare quali azioni API SES possono eseguire un utente, un gruppo o un ruolo. In questo argomento queste entità vengono indicate collettivamente con il termine utente. Puoi anche determinare quali indirizzi e-mail possono essere utilizzati dall'utente per gli indirizzi "From", "To" e "Return-Path" delle e-mail.
Ad esempio, puoi creare una policy IAM che consente agli utenti nell'organizzazione di inviare e-mail ma non di eseguire operazioni amministrative, come controllare le statistiche di invio. Come altro esempio, puoi scrivere una policy che consente a un utente di inviare e-mail tramite SES dal tuo account, ma solo se utilizza un determinato indirizzo "From".
Per utilizzare IAM, devi definire una policy IAM, ossia un documento che definisce in modo esplicito le autorizzazioni, e collegare la policy a un utente. Per informazioni su come creare policy IAM, consulta la Guida per l'utente IAM. Salvo per l'applicazione delle limitazioni impostate nella policy, non ci sono variazioni nelle modalità con cui gli utenti interagiscono con SES o con cui SES esegue le richieste.
Nota
-
Se il tuo account è ancora nella sandbox SES, le sue restrizioni impediscono l'implementazione di alcune di queste policy - vedi Richiesta dell'accesso di produzione.
-
Puoi inoltre controllare l'accesso a SES utilizzando policy di autorizzazione all'invio. Mentre le policy IAM limitano le operazioni dei singoli utenti, le policy di autorizzazione di invio limitano il modo in cui le singole identità verificate possono essere utilizzate. Inoltre, solo le policy di autorizzazione all'invio possono concedere l'accesso multiaccount. Per ulteriori informazioni sull'autorizzazione all'invio, consulta Uso dell'autorizzazione di invio con Amazon SES.
Se cerchi informazioni su come generare le credenziali SMTP SES per un utente esistente, consulta Ottenere le SES SMTP credenziali Amazon.
Creazione di policy IAM per l'accesso a SES
Questa sezione spiega in che modo puoi utilizzare le policy IAM specificamente con SES. Per informazioni su come creare policy IAM in generale, consulta la Guida per l'utente IAM.
Esistono tre possibili motivi per utilizzare IAM con SES:
-
per limitare l'operazione di invio di e-mail;
-
per limitare gli indirizzi "From", "To" e "Return-Path" delle e-mail che l'utente invia;
-
per controllare gli aspetti generali di utilizzo delle API, ad esempio il periodo di tempo durante il quale un utente può chiamare le API che è autorizzato a utilizzare.
Limitazione delle operazioni
Per determinare quali operazioni SES possono essere eseguite da un utente, devi utilizzare l'elemento Action
di una policy IAM. Puoi impostare l'elemento Action
su qualsiasi operazione dell'API SES anteponendo al nome dell'API la stringa minuscola ses:
come prefisso. Ad esempio, puoi impostare Action
su ses:SendEmail
, ses:GetSendStatistics
o ses:*
(per tutte le operazioni).
Quindi, a seconda di Action
, specifica l'elemento Resource
come segue:
Se l'elemento Action
consente l'accesso solo alle API di invio di e-mail (cioè ses:SendEmail
e/o ses:SendRawEmail
):
-
Per consentire all'utente di inviare messaggi da qualsiasi identità del tuo account Account AWS, imposta
Resource
su* -
Per limitare le identità da cui un utente può inviare, imposta
Resource
sugli ARN delle identità che stai permettendo all'utente di utilizzare.
Se l'elemento Action
consente l'accesso a tutte le API:
-
Se non vuoi limitare le identità da cui l'utente può inviare, imposta
Resource
su *. -
Se desideri limitare le identità da cui un utente può inviare, è necessario creare due policy (o due istruzioni all'interno di una policy):
-
Uno
Action
impostato su un elenco esplicito delle non-email-sending API consentite eResource
impostato su* -
una in cui
Action
è impostato su una delle API di invio di e-mail (ses:SendEmail
e/oses:SendRawEmail
) eResource
è impostato sugli ARN delle identità il cui uso vuoi consentire all'utente.
-
Per un elenco delle operazioni di Amazon SES disponibili, consulta la Documentazione di riferimento dell'API Amazon Simple Email Service. Se l'utente utilizzerà l'interfaccia SMTP, devi consentire l'accesso almeno a ses:SendRawEmail
.
Limitazione degli indirizzi e-mail
Se desideri limitare l'utente a specifici indirizzi e-mail, puoi utilizzare un blocco Condition
. Nel blocco Condition
devi specificare le condizioni utilizzando chiavi di condizione come descritto nella Guida per l'utente IAM. Le chiavi di condizione consentono di controllare i seguenti indirizzi e-mail:
Nota
Queste chiavi di condizione per indirizzi e-mail sono valide solo per le API indicate nella seguente tabella.
Chiave di condizione |
Descrizione |
API |
---|---|---|
|
Limita gli indirizzi del destinatario, che includono gli indirizzi "A", "CC" e "CCN". |
|
|
Limita l'indirizzo "From". |
|
|
Limita l'indirizzo "From" che viene utilizzato come nome visualizzato. |
|
|
Limita l'indirizzo "Return-Path", che è l'indirizzo a cui mancati recapiti e reclami ti possono essere inviati tramite l'inoltro di feedback via e-mail. Per informazioni sull'inoltro di feedback via e-mail, consulta Ricezione delle notifiche Amazon SES tramite e-mail. |
|
Limitazione per versione API SES
Usando la chiave ses:ApiVersion
in condizioni, è possibile limitare l'accesso a SES in base alla versione dell'API SES.
Nota
L'interfaccia SMTP SES utilizza l’API SES versione 2 di ses:SendRawEmail
.
Limitazione dell'utilizzo generale delle API
Utilizzando le chiavi AWS-wide in determinate condizioni, è possibile limitare l'accesso a SES in base ad aspetti quali la data e l'ora in cui l'utente può accedere alle API. SES implementa solo le seguenti chiavi di policy a livello di AWS estensione:
-
aws:CurrentTime
-
aws:EpochTime
-
aws:SecureTransport
-
aws:SourceIp
-
aws:SourceVpc
-
aws:SourceVpce
-
aws:UserAgent
-
aws:VpcSourceIp
Per ulteriori informazioni su queste chiavi, consulta la Guida per l'utente IAM.
Esempi di policy IAM per SES
Questo argomento fornisce esempi di policy che consentono a un utente di accedere a SES, ma solo a determinate condizioni.
Esempi di policy riportati in questa sezione:
- Impostazione dell'accesso completo a tutte le operazioni SES
- Consentire l'accesso solo alle API SES versione 2
- Impostazione dell'accesso solo a operazioni di invio di e-mail
- Limitazione del periodo di tempo di invio
- Limitazione degli indirizzi del destinatario
- Limitazione dell'indirizzo "From"
- Limitazione del nome visualizzato del mittente dell'e-mail
- Limitazione della destinazione del feedback su mancato recapito e reclamo
Impostazione dell'accesso completo a tutte le operazioni SES
La policy seguente permette a un utente di chiamare qualsiasi operazione SES.
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:*" ], "Resource":"*" } ] }
Consentire l'accesso solo alle API SES versione 2
La policy seguente permette a un utente di chiamare solo le operazioni SES dell'API versione 2.
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:*" ], "Resource":"*", "Condition": { "StringEquals" : { "ses:ApiVersion" : "2" } } } ] }
Impostazione dell'accesso solo a operazioni di invio di e-mail
La policy seguente consente a un utente di inviare e-mail utilizzando SES, ma non di eseguire altre operazioni di livello amministrativo, ad esempio accedere alle statistiche di invio SES.
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Resource":"*" } ] }
Limitazione del periodo di tempo di invio
La policy seguente consente a un utente di chiamare le API di invio di e-mail SES soltanto durante il mese di settembre 2018.
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Resource":"*", "Condition":{ "DateGreaterThan":{ "aws:CurrentTime":"2018-08-31T12:00Z" }, "DateLessThan":{ "aws:CurrentTime":"2018-10-01T12:00Z" } } } ] }
Limitazione degli indirizzi del destinatario
La policy seguente consente a un utente di richiamare le API di invio di e-mail SES, ma solo per gli indirizzi dei destinatari nel dominio example.com (StringLike
fa distinzione tra maiuscole e minuscole).
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Resource":"*", "Condition":{ "ForAllValues:StringLike":{ "ses:Recipients":[ "*@example.com" ] } } } ] }
Limitazione dell'indirizzo "From"
La policy seguente consente a un utente di chiamare le API di invio di e-mail SES, ma solo se l'indirizzo "From" è marketing@example.com.
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Resource":"*", "Condition":{ "StringEquals":{ "ses:FromAddress":"marketing@example.com" } } } ] }
La seguente politica consente a un utente di chiamare l'SendBounceAPI, ma solo se l'indirizzo «Da» è bounce@example.com.
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:SendBounce" ], "Resource":"*", "Condition":{ "StringEquals":{ "ses:FromAddress":"bounce@example.com" } } } ] }
Limitazione del nome visualizzato del mittente dell'e-mail
La policy seguente consente a un utente di richiamare le API di invio di e-mail SES, ma solo se il nome visualizzato dell'indirizzo "From" include Marketing (StringLike
fa distinzione tra maiuscole e minuscole).
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Resource":"*", "Condition":{ "StringLike":{ "ses:FromDisplayName":"Marketing" } } } ] }
Limitazione della destinazione del feedback su mancato recapito e reclamo
La policy seguente consente a un utente di chiamare le API di invio di e-mail SES, ma solo se "Return-Path" nell'e-mail è impostato su feedback@example.com.
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ses:SendEmail", "ses:SendRawEmail" ], "Resource":"*", "Condition":{ "StringEquals":{ "ses:FeedbackAddress":"feedback@example.com" } } } ] }