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à.
Autorizzazione di mittenti tramite l'API Amazon SES eAWS SDK for PHPVersione 3
Per abilitare un altroAWSconto,AWS Identity and Access Managementutente oAWSper l'invio di e-mail tramite Amazon Simple Email Service (Amazon SES) a tuo nome, è necessario creare una policy di autorizzazione all'invio. Questo è un documento in formato JSON che viene associato a un'identità di proprietà dell'utente.
La policy elenca in modo esplicito gli utenti a cui permetti di inviare e-mail per l'identità e in quali condizioni. A tutti i mittenti, eccetto te e le entità a cui concedi le autorizzazioni in modo esplicito nelle policy, non verrà concesso di inviare e-mail. A un'identità possono essere collegate nessuna, una o più policy. Puoi anche definire un'unica policy con più istruzioni per ottenere l'effetto di più policy.
Per ulteriori informazioni, consulta Utilizzo delle autorizzazioni all'invio con Amazon SES.
Gli esempi seguenti mostrano come:
-
Crea un mittente autorizzato utilizzando PutIdentityPolicy.
-
Recupera le policy per un mittente autorizzato utilizzando GetIdentityPolicies.
-
Elenca i mittenti autorizzati utilizzando ListIdentityPolicies.
-
Revoca l'autorizzazione per un mittente autorizzato utilizzando DeleteIdentityPolicy.
La versione integrale del codice di esempio di AWS SDK for PHP è disponibile qui su GitHub
Credenziali
Prima di eseguire il codice di esempio, configura ilAWScredenziali come descritto inImpostazione delle credenziali . Quindi importaAWS SDK for PHPcome descritto nellaUtilizzo di base.
Per maggiori informazioni sull'utilizzo di Amazon SES, consultaGuida per gli sviluppatori Amazon SES.
Crea un mittente autorizzato
Per autorizzarne un altroAWSper l'invio di e-mail a tuo nome, utilizza una policy di identità per aggiungere o aggiornare l'autorizzazione all'invio di e-mail da indirizzi e-mail o domini verificati. Per creare una policy di identità, utilizza l'operazione PutIdentityPolicy.
Importazioni
require 'vendor/autoload.php'; use Aws\Ses\SesClient; use Aws\Exception\AwsException;
Codice di esempio
$SesClient = new SesClient([ 'profile' => 'default', 'version' => '2010-12-01', 'region' => 'us-east-1' ]); $identity = "arn:aws:ses:us-east-1:123456789012:identity/example.com"; $other_aws_account = "0123456789"; $policy = <<<EOT { "Id":"ExampleAuthorizationPolicy", "Version":"2012-10-17", "Statement":[ { "Sid":"AuthorizeAccount", "Effect":"Allow", "Resource":"$identity", "Principal":{ "AWS":[ "$other_aws_account" ] }, "Action":[ "SES:SendEmail", "SES:SendRawEmail" ] } ] } EOT; $name = "policyName"; try { $result = $SesClient->putIdentityPolicy([ 'Identity' => $identity, 'Policy' => $policy, 'PolicyName' => $name, ]); var_dump($result); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }
Recupera i criteri per un mittente autorizzato
Restituisci le policy di autorizzazione all'invio associate a una specifica identità e-mail o a un'identità di dominio. Per ottenere l'autorizzazione all'invio per un determinato indirizzo e-mail o dominio, utilizza l'operazione GetIdentityPolicy.
Importazioni
require 'vendor/autoload.php'; use Aws\Ses\SesClient; use Aws\Exception\AwsException;
Codice di esempio
$SesClient = new SesClient([ 'profile' => 'default', 'version' => '2010-12-01', 'region' => 'us-east-1' ]); $identity = "arn:aws:ses:us-east-1:123456789012:identity/example.com"; $policies = ["policyName"]; try { $result = $SesClient->getIdentityPolicies([ 'Identity' => $identity, 'PolicyNames' => $policies, ]); var_dump($result); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }
Elenco dei mittenti autorizzati
Per elencare le policy di autorizzazione all'invio associate a una specifica identità e-mail o a un'identità di dominio nella correnteAWSRegion (regione), utilizzaListIdentityPoliciesoperazione.
Importazioni
require 'vendor/autoload.php'; use Aws\Ses\SesClient; use Aws\Exception\AwsException;
Codice di esempio
$SesClient = new SesClient([ 'profile' => 'default', 'version' => '2010-12-01', 'region' => 'us-east-1' ]); $identity = "arn:aws:ses:us-east-1:123456789012:identity/example.com"; try { $result = $SesClient->listIdentityPolicies([ 'Identity' => $identity, ]); var_dump($result); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }
Revoca dell'autorizzazione per un mittente autorizzato
Rimuovi l'autorizzazione di invio per un altroAWSaccount per l'invio di e-mail con un'identità e-mail o dominio eliminando la policy di identità associata conDeleteIdentityPolicyoperazione.
Importazioni
require 'vendor/autoload.php'; use Aws\Ses\SesClient; use Aws\Exception\AwsException;
Codice di esempio
$SesClient = new SesClient([ 'profile' => 'default', 'version' => '2010-12-01', 'region' => 'us-east-1' ]); $identity = "arn:aws:ses:us-east-1:123456789012:identity/example.com"; $name = "policyName"; try { $result = $SesClient->deleteIdentityPolicy([ 'Identity' => $identity, 'PolicyName' => $name, ]); var_dump($result); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }