AWS Cognito에 대해서 간단하게 알아 봅시다.
AWS Cognito는 User Pool과 Federated Identities 서비스를 제공한다. 이 글에서는 AWS Cognito의 개념을 이해하고, 어떻게 활용하는 것이 좋을지에 대해 간단하게 정리해 본다. 우선 AWS Cognito는 무엇을까? AWS Cognito는 모바일과 앱 앱에 사용자 가입 및 로그인 기능을 손쉽게 제공할 수 있는 기능을 제공한다. Cognito에서는 Facebook, Twitter 또는 Amazon과 같은 소셜 자격 증명 공급자, SAML 자격 증명 솔루션 또는 자체 자격 증명 시스템을 이용하여 사용자를 인증할 수 있는 옵션을 제공한다. 따라서 사용자 관리, 인증 및 디바이스 간 동기화를 처리하는 솔루션의 구축, 보안 및 확장을 AWS Cognito에서 제공 받음으로써 서비스 구현에 집중할 수 있게 된다. 우선 AWS Cognito에서 제공하는 두 가지 기능을 정리해보자. User Pool Amazon Cognito의 User Pool은 개발자가 웹 및 모바일 애플리케이션에 등록 및 로그인 기능을 쉽게 추가 할 수 있게 한다. 또한 사용자 디렉토리를 유지 관리하는 고유 한 ID 공급자 역할을 한다. 사용자 로그인 및 로그인을 지원하고 로그인 한 사용자의 신원 토큰을 프로비저닝한다. Federated Identities(또는 Identity Pool, ID Pool) Cognito Federated Identities를 통해 개발자는 사용자에 대한 고유 ID를 만들고 연합 ID 공급자로 인증할 수 있다. 제휴 ID를 사용하면 임시, 제한된 권한의 AWS 자격증을 획득하여 Amazon DynamoDB, Amazon S3 및 Amazon API Gateway와 같은 다른 AWS 서비스에 안전하게 액세스 할 수 있다. 위에 정의들은 AWS Cognito 웹페이지에서 누구나 볼 수 있을 것 같은데, 문제는 뭔가 서비스를 만들려고 하면 명확하게 이해되지 않을 수 있다.