Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Erstellen und Verwalten von E-Mail-Regeln mit der Amazon SES-API und der AWS SDK for PHP Version 3
Zusätzlich zum Senden von E-Mails können Sie auch E-Mails mit Amazon Simple Email Service (Amazon SES) erhalten. Mithilfe von Empfangsregeln können Sie angeben, wie Amazon SES mit E-Mails vorgeht, die es für die E-Mail-Adressen oder Domänen erhält, die Sie besitzen. Eine Regel kann E-Mails an andere -AWSServices senden, einschließlich, aber nicht beschränkt auf Amazon S3, Amazon SNS oder AWS Lambda.
Weitere Informationen finden Sie unter Verwalten von Empfangsregelsätzen für den Amazon SES-E-Mail-Empfang und Verwalten von Empfangsregeln für den Amazon SES-E-Mail-Empfang.
In den nachstehenden Beispielen wird Folgendes veranschaulicht:
-
Erstellen Sie einen Empfangsregelsatz mit CreateReceiptRuleSet.
-
Erstellen Sie eine Empfangsregel mit CreateReceiptRule.
-
Beschreiben Sie einen Empfangsregelsatz mit DescribeReceiptRuleSet.
-
Beschreiben Sie eine Empfangsregel mit DescribeReceiptRule.
-
Listen Sie alle Empfangsregelsätze mit aufListReceiptRuleSets.
-
Aktualisieren Sie eine Empfangsregel mit UpdateReceiptRule.
-
Entfernen Sie eine Empfangsregel mit DeleteReceiptRule.
-
Entfernen Sie einen Empfangsregelsatz mit DeleteReceiptRuleSet.
Der gesamte Beispielcode für die AWS SDK for PHP ist hier auf GitHub
Anmeldeinformationen
Bevor Sie den Beispielcode ausführen, konfigurieren Sie Ihre AWS Anmeldeinformationen, wie unter beschriebenAnmeldeinformationen. Importieren Sie dann die AWS SDK for PHP, wie unter beschriebenGrundlegende Verwendung.
Weitere Informationen zur Verwendung von Amazon SES finden Sie im Amazon SES-Entwicklerhandbuch.
Erstellen eines Empfangsregelsatzes
Ein Empfangsregelsatz enthält eine Sammlung von Empfangsregeln. Sie müssen mindestens einen Empfangsregelsatz mit Ihrem Konto verknüpft haben, bevor Sie eine Empfangsregel erstellen können. Um einen Empfangsregelsatz zu erstellen, geben Sie einen eindeutigen an RuleSetName und verwenden Sie die -CreateReceiptRuleSetOperation.
Importe
require 'vendor/autoload.php'; use Aws\Exception\AwsException;
Beispiel-Code
$SesClient = new Aws\Ses\SesClient([ 'profile' => 'default', 'version' => '2010-12-01', 'region' => 'us-east-2' ]); $name = 'Rule_Set_Name'; try { $result = $SesClient->createReceiptRuleSet([ 'RuleSetName' => $name, ]); var_dump($result); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }
Erstellen einer Empfangsregel
Kontrollieren Sie Ihre eingehenden E-Mails durch Hinzufügen einer Empfangsregel zu einem vorhandenen Empfangsregelsatz. Dieses Beispiel zeigt Ihnen, wie Sie eine Empfangsregel erstellen, die eingehende Nachrichten an einen Amazon S3-Bucket sendet, aber Sie können auch Nachrichten an Amazon SNS und sendenAWS Lambda. Um eine Empfangsregel RuleSetName zu erstellen, geben Sie eine Regel und die für die -CreateReceiptRuleOperation an.
Importe
require 'vendor/autoload.php'; use Aws\Exception\AwsException;
Beispiel-Code
$SesClient = new Aws\Ses\SesClient([ 'profile' => 'default', 'version' => '2010-12-01', 'region' => 'us-east-2' ]); $rule_name = 'Rule_Name'; $rule_set_name = 'Rule_Set_Name'; $s3_bucket = 'Bucket_Name'; try { $result = $SesClient->createReceiptRule([ 'Rule' => [ 'Actions' => [ [ 'S3Action' => [ 'BucketName' => $s3_bucket, ], ], ], 'Name' => $rule_name, 'ScanEnabled' => true, 'TlsPolicy' => 'Optional', 'Recipients' => ['<string>'] ], 'RuleSetName' => $rule_set_name, ]); var_dump($result); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }
Beschreiben eines Empfangsregelsatzes
Die Details des angegebenen Empfangsregelsatzes werden einmal pro Sekunde zurückgegeben. Um die -DescribeReceiptRuleSetOperation zu verwenden, geben Sie die an RuleSetName.
Importe
require 'vendor/autoload.php'; use Aws\Exception\AwsException;
Beispiel-Code
$SesClient = new Aws\Ses\SesClient([ 'profile' => 'default', 'version' => '2010-12-01', 'region' => 'us-east-2' ]); $name = 'Rule_Set_Name'; try { $result = $SesClient->describeReceiptRuleSet([ 'RuleSetName' => $name, ]); var_dump($result); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }
Beschreiben einer Empfangsregel
Die Details einer angegebenen Empfangsregel werden zurückgegeben. Um die -DescribeReceiptRuleOperation zu verwenden, geben Sie die RuleName und an RuleSetName.
Importe
require 'vendor/autoload.php'; use Aws\Exception\AwsException;
Beispiel-Code
$SesClient = new Aws\Ses\SesClient([ 'profile' => 'default', 'version' => '2010-12-01', 'region' => 'us-east-2' ]); $rule_name = 'Rule_Name'; $rule_set_name = 'Rule_Set_Name'; try { $result = $SesClient->describeReceiptRule([ 'RuleName' => $rule_name, 'RuleSetName' => $rule_set_name, ]); var_dump($result); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }
Auflisten aller Empfangsregelsätze
Um die Empfangsregelsätze aufzulisten, die unter Ihrem AWS-Konto in der aktuellen AWS Region vorhanden sind, verwenden Sie die -ListReceiptRuleSetsOperation.
Importe
require 'vendor/autoload.php'; use Aws\Exception\AwsException;
Beispiel-Code
$SesClient = new Aws\Ses\SesClient([ 'profile' => 'default', 'version' => '2010-12-01', 'region' => 'us-east-2' ]); try { $result = $SesClient->listReceiptRuleSets(); var_dump($result); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }
Aktualisieren einer Empfangsregel
Dieses Beispiel zeigt Ihnen, wie Sie eine Empfangsregel aktualisieren, die eingehende Nachrichten an eine -AWS LambdaFunktion sendet, aber Sie können auch Nachrichten an Amazon SNS und Amazon S3 senden. Um die -UpdateReceiptRuleOperation zu verwenden, geben Sie die neue Empfangsregel und die an RuleSetName.
Importe
require 'vendor/autoload.php'; use Aws\Exception\AwsException;
Beispiel-Code
$SesClient = new Aws\Ses\SesClient([ 'profile' => 'default', 'version' => '2010-12-01', 'region' => 'us-east-2' ]); $rule_name = 'Rule_Name'; $rule_set_name = 'Rule_Set_Name'; $lambda_arn = 'Amazon Resource Name (ARN) of the AWS Lambda function'; $sns_topic_arn = 'Amazon Resource Name (ARN) of the Amazon SNS topic'; try { $result = $SesClient->updateReceiptRule([ 'Rule' => [ 'Actions' => [ 'LambdaAction' => [ 'FunctionArn' => $lambda_arn, 'TopicArn' => $sns_topic_arn, ], ], 'Enabled' => true, 'Name' => $rule_name, 'ScanEnabled' => false, 'TlsPolicy' => 'Require', ], 'RuleSetName' => $rule_set_name, ]); var_dump($result); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }
Löschen eines Empfangsregelsatzes
Entfernen Sie einen bestimmten Empfangsregelsatz, der derzeit nicht deaktiviert ist. Mit diesem Vorgang werden auch alle darin enthaltenen Empfangsregeln gelöscht. Um einen Empfangsregelsatz RuleSetName zu löschen, geben Sie die für die -DeleteReceiptRuleSetOperation an.
Importe
require 'vendor/autoload.php'; use Aws\Exception\AwsException;
Beispiel-Code
$SesClient = new Aws\Ses\SesClient([ 'profile' => 'default', 'version' => '2010-12-01', 'region' => 'us-east-2' ]); $name = 'Rule_Set_Name'; try { $result = $SesClient->deleteReceiptRuleSet([ 'RuleSetName' => $name, ]); var_dump($result); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }
Löschen einer Empfangsregel
Um eine angegebene Empfangsregel RuleName RuleSetName zu löschen, geben Sie und für die -DeleteReceiptRuleOperation an.
Importe
require 'vendor/autoload.php'; use Aws\Exception\AwsException;
Beispiel-Code
$SesClient = new Aws\Ses\SesClient([ 'profile' => 'default', 'version' => '2010-12-01', 'region' => 'us-east-2' ]); $rule_name = 'Rule_Name'; $rule_set_name = 'Rule_Set_Name'; try { $result = $SesClient->deleteReceiptRule([ 'RuleName' => $rule_name, 'RuleSetName' => $rule_set_name, ]); var_dump($result); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }