У меня есть следующий шаблон облачной информации (он является частью шаблона serverless.yml) для создания Cognito UserPool, который отправляет электронные письма с помощью SES.
Я развертываю свой бессерверный проект на ap-southeast- 2, и я хотел использовать тот же регион для отправки электронных писем. Я предварительно проверил в ap-southeast-2 учетную запись в шаблоне в SES, но если я заменю SourceArn в шаблоне ниже (последняя строка) на область ap-southeast-2
(или бессерверную псевдопеременную #{AWS::Region}
), I получить ошибку:
An error occurred: CognitoUserPool - Unable to send email message, please try again (Service: AWSCognitoIdentityProviderService; Status Code: 400; Error Code: InvalidParameterException; Request ID: ...).
Когда я заменяю регион на us-west-2
(как в шаблоне ниже), он работает. Почему ap-southeast-2
не поддерживается, если он позволяет мне использовать SES из этого региона?
CognitoUserPool:
Type: AWS::Cognito::UserPool
Properties:
# Generate a name based on the stage
UserPoolName: ${self:provider.stage}-user-pool
# Set email as an alias
AutoVerifiedAttributes:
- email
# UsernameAttributes and AliasAttributes are mutually exclusive configuration options
AliasAttributes: # instead of UsernameAttributes:
- preferred_username
- email
UsernameConfiguration:
CaseSensitive: false
AccountRecoverySetting:
RecoveryMechanisms:
- Name: verified_email
Priority: 1
AdminCreateUserConfig:
UnusedAccountValidityDays: 5
AllowAdminCreateUserOnly: false
Policies:
PasswordPolicy:
MinimumLength: 10
RequireLowercase: true
RequireNumbers: true
RequireSymbols: true
RequireUppercase: true
Schema:
- Name: membershipType
Required: false
Mutable: true
AttributeDataType: String
VerificationMessageTemplate:
DefaultEmailOption: CONFIRM_WITH_LINK
EmailMessageByLink: "Please click on the following link to verify: {##Verify Email##}"
EmailSubjectByLink: Please confirm your registration
EmailConfiguration:
EmailSendingAccount: DEVELOPER
From: my@email.com
ReplyToEmailAddress: my@email.com
SourceArn: arn:aws:ses:us-west-2:#{AWS::AccountId}:identity/my@email.com