Sending Amazon SNS messages to an Amazon SQS queue or AWS Lambda function in a different Region
Amazon SNS supports cross-region deliveries, both for Regions that are enabled by default and for opt-in Regions. For the current list of AWS Regions that Amazon SNS supports, including opt-in Regions, see Amazon Simple Notification Service endpoints and quotas in the Amazon Web Services General Reference.
Amazon SNS supports the cross-region delivery of notifications to Amazon SQS queues and to AWS Lambda functions. When one of the Regions is an opt-in Region, you must specify a different Amazon SNS service principal in the subscribed resource's policy.
The Amazon SNS subscription command must be executed in the region where Amazon SNS is hosted, in the corresponding region. For example, if Amazon SNS is in account "A" in the us-east-1 region, and the Lambda function is in account "B" in the us-east-2 region, the subscription CLI command must be executed in account "A" in the us-east-1 region.
Opt-in Regions
Amazon SNS supports the following opt-in Regions:
Region name | Region |
---|---|
Africa (Cape Town) Region |
af-south-1 |
Asia Pacific (Hong Kong) Region |
ap-east-1 |
Asia Pacific (Hyderabad) Region |
ap-south-2 |
Asia Pacific (Jakarta) Region |
ap-southeast-3 |
Asia Pacific (Melbourne) Region |
ap-southeast-4 |
Asia Pacific (Osaka) Region |
ap-northeast-3 |
Europe (Milan) Region |
eu-south-1 |
Europe (Spain) Region |
eu-south-2 |
Europe (Zurich) Region |
eu-central-2 |
Israel (Tel Aviv) Region |
il-central-1 |
Middle East (Bahrain) Region |
me-south-1 |
Middle East (UAE) Region |
me-central-1 |
For information on enabling an opt-in Region, see Managing AWS Regions in the Amazon Web Services General Reference.
When you use Amazon SNS to deliver messages from opt-in Regions to Regions that are enabled
by default, you must alter the resource policy created for the queue. Replace the
principal sns.amazonaws.com
with
sns.<opt-in-region>.amazonaws.com
. For example:
-
To subscribe an Amazon SQS queue in US East (N. Virginia) to an Amazon SNS topic in Asia Pacific (Hong Kong), change the principal in the queue policy to
sns.ap-east-1.amazonaws.com
. Opt-in regions include any regions launched after March 20, 2019, which includes Asia Pacific (Hong Kong), Asia Pacific (Jakarta), Middle East (Bahrain), Europe (Milan), and Africa (Cape Town). Regions launched prior to March 20, 2019 are enabled by default.Cross-region delivery support to Amazon SQS Cross-region delivery type Supported/Not supported Default-enabled Region to opt-in Region Supported using
sns.<opt-in-region>.amazonaws.com
in the service principal for the queueOpt-in Region to default-enabled Region
Supported using
sns.<opt-in-region>.amazonaws.com
in the service principal for the queueOpt-in Region to opt-in Region
Not supported The following is an example of an access policy statement that allows an Amazon SNS topic in an opt-in Region (af-south-1) to deliver to an Amazon SQS queue in an enabled-by-default Region (us-east-1). It contains the necessary regionalized service principal configuration under the path
Statement
/Principal
/Service
.{ "Version": "2008-10-17", "Id": "__default_policy_ID", "Statement": [ { "Sid": "allow_sns_arn:aws:sns:af-south-1:111111111111:source_topic_name", "Effect": "Allow", "Principal": { "Service": "sns.af-south-1.amazonaws.com" }, "Action": "SQS:SendMessage", "Resource": "arn:aws:sqs:us-east-1:111111111111:destination_queue_name", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:sns:af-south-1:111111111111:source_topic_name" } } }, ... ] }
-
To subscribe an AWS Lambda function in US East (N. Virginia) to an Amazon SNS topic in Asia Pacific (Hong Kong), change the principal in the AWS Lambda function policy to
sns.ap-east-1.amazonaws.com
. Opt-in regions include any regions launched after March 20, 2019, which includes Asia Pacific (Hong Kong), Asia Pacific (Jakarta), Middle East (Bahrain), Europe (Milan), and Africa (Cape Town). Regions launched prior to March 20, 2019 are enabled by default.Cross-region delivery support to AWS Lambda Cross-region delivery type Supported/Not supported Default-enabled Region to opt-in Region Not supported Opt-in Region to default-enabled Region
Supported using
sns.<opt-in-region>.amazonaws.com
in the service principal for the Lambda functionOpt-in Region to opt-in Region Not supported