Amazon Cognito is an Amazon Web Services (AWS) product that controls user authentication and authorization for mobile applications on internet-connected devices. The service saves and synchronizes enduser data, which allows an application developer to focus on writing code instead of building and managing the back-end infrastructure. This can accelerate the mobile application development process.

Cognito is designed for a variety of application usage scenarios. Cognito can be used for client-side authentication of mobile devices, client-side web applications (using JavaScript) and for server-side authentication The Cognito infrastructure can even provide web pages for the various authentication tasks.


Cognito can have one or more user pools. Each pool contains the login and user information for a group of users which will manage user sign-up, sign-in, password policies.

Unique identifiers are created for an end user, generated either from public identity providers, an OpenID Connect-compatible provider or on a custom user identity system. Unauthorized guest users are supported and can be added to the system at a later date if the guest chooses to create a profile.

Amazon Cognito acknowledges Amazon, Facebook, Twitter, Digits and Google as public identity providers. An end user can be authenticated from the identity provider, which then passes an OAuth or OpenID Connect token to Amazon Cognito.

How we can set up AWS Cognito to Authenticate The User?

  • Need to configure user pool as per client’s specific requirement.
  • There are several ways how do we want to verify end user and we went with Username and Password.
  • A User can simply create a new account, once created, the user has to verify Email or Phone number based on a predefined attribute.
  • Once everything is up and running, the user will able to access react frontend.
  • With Cognito, the overhead of writing code for authentication has become less and management of different groups of users has been much simpler.
Comments are closed