Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

AWS Cognito: Email verification with Link

I'm using Cognito for User Management, and everything seems to work fine apart from email verification process.

I would like to build user journey similar to all other website: 1) Fill registration form with user details 2) Receive an email with email verification link 3) Verify email address by clicking on the link

So far, I can only verify email by making user manually input verification code. This is slightly unusual. And some users find it easier to just click on the link.

On "Message customisation" page, there is a possibility to use "link" for message verification. But it is using "Amazon Cognito domain", which is exposing underlying technology to the end user. Ideally I would like to use my own domain.

I'm trying to "Use own domain" at "App integration->Domain Name" tab, but getting "We didn’t find any AWS managed certificates for this region."

But I have added "AWS managed certificates" for my domain and verified it via DNS. It is appearing in "Certificate Manager" with status "Issued".

Have someone successfully managed to use "Your own domain" for email verification? What am I missing?

Thanks, OM

like image 580
user606621 Avatar asked Sep 13 '18 09:09

user606621


People also ask

How do I verify my email address with Cognito?

Amazon Cognito can automatically verify email addresses or phone numbers. To do this verification, Amazon Cognito sends a verification code or a verification link. For email addresses, Amazon Cognito can send a code or a link in an email message. For phone numbers, Amazon Cognito sends a code in an SMS text message.

How can I verify my Cognito account?

When a user updates their email address or phone number in your app, Amazon Cognito immediately sends a message with a verification code to a user if you configured your user pool to automatically verify that attribute. The user must then provide the code from the verification message to your app.

What is callback URL in Cognito?

A callback URL indicates where the user will be redirected after a successful sign-in. Enter Sign out URL(s). A sign-out URL indicates where your user will be redirected after signing out. Select Authorization code grant to return an authorization code that is then exchanged for user pool tokens.


2 Answers

OK, I found what the problem was. Thanks Mukti Arip, for pointing to documentation.

Documentation says, that Certificate needs to be registered in US East (N. Virginia), no matter where your Cognito user pool is located.

As soon as I registered certificate in N. Virginia it appeared in my Domain configuration.

like image 108
user606621 Avatar answered Sep 19 '22 21:09

user606621


You can send verification email using your own domain if you have an SES verified identity. See in this link: http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-addresses-and-domains.html

like image 34
Mukti Arip Avatar answered Sep 20 '22 21:09

Mukti Arip