Amazon Cognito
Abhishek Mishra · 2019
Amazon Cognito is Amazon's cloud-based, OAuth 2.0–compliant identity management solution. Developers can use Amazon Cognito to manage a database of users, allow external web and mobile applications to authenticate users against this database, and authorize access to external APIs and AWS resources. Amazon Cognito consists of two different components: Amazon Cognito user pools, and Amazon Cognito identity pools. This chapter talks about these components and how to use them together to provide secure access to developers' AWS resources. It describes some of the key concepts developers will encounter when working with Amazon Cognito: authentication, authorization, identity provider, client, OAuth 2.0, OpenID Connect, Amazon Cognito user pool, and Amazon Cognito Federated Identities. The chapter also explains how to use the Amazon Cognito management console to create S3 user pools and identity pools, and configure identity pools to issue federated identities for users who present a valid access token issued by an Amazon Cognito user pool.