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.
Autorisation des expéditeurs à l'aide de l'API Amazon SES et de la version 3 AWS SDK for PHP
Pour permettre à un autreCompte AWS, à un AWS Identity and Access Management utilisateur ou à un AWS service d'envoyer des e-mails via Amazon Simple Email Service (Amazon SES) en votre nom, vous devez créer une politique d'autorisation d'envoi. Il s’agit d’un document JSON que vous attachez à une identité dont vous êtes propriétaire.
La stratégie mentionne expressément les entités que vous autorisez à effectuer des envois pour cette identité, ainsi que les conditions associées. Tous les expéditeurs, autres que vous et les entités auxquelles vous accordez explicitement des autorisations dans la stratégie, ne sont pas autorisés à envoyer des e-mails. Une identité peut avoir zéro, une ou plusieurs stratégies attachées. Une stratégie peut également contenir plusieurs instructions pour produire l'effet de plusieurs stratégies.
Pour plus d’informations, consultez la page Utilisation de l’autorisation d’envoi avec Amazon SES.
Les exemples suivants montrent comment :
-
Créez un expéditeur autorisé à l'aide de PutIdentityPolicy.
-
Récupérez les politiques d'un expéditeur autorisé à l'aide de GetIdentityPolicies.
-
Répertoriez les expéditeurs autorisés à l'aide de ListIdentityPolicies.
-
Révoquer l'autorisation accordée à un expéditeur autorisé à utiliser DeleteIdentityPolicy.
Tous les exemples de code pour le AWS SDK for PHP sont disponibles ici GitHub
Informations d’identification
Avant d'exécuter l'exemple de code, configurez vos AWS informations d'identification, comme décrit dansInformations d'identification. Importez ensuite leAWS SDK for PHP, comme décrit dansUtilisation de base.
Pour plus d'informations sur l'utilisation d'Amazon SES, consultez le manuel du développeur Amazon SES.
Création d'un expéditeur autorisé
Pour autoriser une autre Compte AWS personne à envoyer des e-mails en votre nom, utilisez une politique d'identité pour ajouter ou mettre à jour l'autorisation d'envoyer des e-mails à partir de vos adresses e-mail ou domaines vérifiés. Pour créer une politique d'identité, utilisez l'PutIdentityPolicyopération.
Importations
require 'vendor/autoload.php'; use Aws\Exception\AwsException; use Aws\Ses\SesClient;
Exemple de code
$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"; }
Récupérez les politiques d'un expéditeur autorisé
Renvoyez les stratégies d’autorisation d’envoi associées à une identité d’e-mail spécifique ou à une identité de domaine. Pour obtenir l'autorisation d'envoi pour une adresse e-mail ou un domaine donné, utilisez l'GetIdentityPolicyopération.
Importations
require 'vendor/autoload.php'; use Aws\Exception\AwsException; use Aws\Ses\SesClient;
Exemple de code
$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"; }
Répertorier les expéditeurs autorisés
Pour répertorier les politiques d'autorisation d'envoi associées à une identité e-mail ou à une identité de domaine spécifique dans la AWS région actuelle, utilisez l'ListIdentityPoliciesopération.
Importations
require 'vendor/autoload.php'; use Aws\Exception\AwsException; use Aws\Ses\SesClient;
Exemple de code
$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"; }
Révoquer l'autorisation d'un expéditeur autorisé
Supprimez l'autorisation d'envoi permettant Compte AWS à une autre personne d'envoyer des e-mails avec une identité e-mail ou une identité de domaine en supprimant la politique d'identité associée à l'DeleteIdentityPolicyopération.
Importations
require 'vendor/autoload.php'; use Aws\Exception\AwsException; use Aws\Ses\SesClient;
Exemple de code
$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"; }