Amazon Cognito를 사용하면 대고객 애플리케이션, 웹 포털 또는 디지털 서비스에 대한 고객 액세스를 지원하는 데 사용되는 고객 자격 증명 및 액세스 관리(CIAM) 기능을 설정할 수 있습니다.
이 페이지에서는 코드 샘플을 사용해 특정 작업을 수행하는 방법이 설명된 기술 자료를 제공합니다. 이러한 코드 샘플을 자체 앱에서 재사용할 수 있습니다. 아래 첫 번째 가이드 세트에는 Amazon Cognito 사용자 풀, Amazon Cognito 자격 증명 풀 및 AWS AppSync 개발에 대한 기본 사항이 설명되어 있습니다.
시작하기
Amazon Cognito 사용자 풀
Amazon Cognito 사용자 풀은 사용자 디렉터리를 생성 및 유지 관리하고, 등록(사용자 온보딩)을 추가하고, 웹 애플리케이션에 로그인하여 인증 받고, 권한 부여 받고, 리소스를 액세스 및 제어하는 작업을 용이하게 해줍니다.
- Amazon Cognito 사용자 풀 시작하기
- 샘플 앱 설정: iOS | Android | JavaScript(Angular 2)
Amazon Cognito ID 풀
Amazon Cognito ID 풀을 사용하여 고유한 ID를 생성하고 사용자에게 권한을 할당할 수 있습니다. 또한 Facebook, Google 또는 Apple과 같은 소셜 ID 공급자나 SAML 또는 OIDC를 지원하는 회사 ID 공급자를 통한 사용자 로그인을 지원하고 백엔드 리소스에 대한 액세스를 제어할 수 있습니다.
AWS AppSync
Amazon Cognito Sync가 처음인 경우 AWS AppSync를 사용합니다. Amazon Cognito Sync와 마찬가지로 AWS AppSync는 애플리케이션 데이터를 디바이스 전체에 동기화할 수 있는 서비스입니다.
앱 기본 설정 또는 게임 상태와 같은 사용자 데이터를 동기화할 수 있습니다. 또한 공유 데이터를 기반으로 한 여러 사용자의 실시간 동기화 및 협업을 허용하여 이러한 기능을 확장할 수 있습니다.
AWS AppSync는 하나 이상의 데이터 원본에서 데이터를 안전하게 액세스, 조작 및 결합하기 위한 유연한 API를 생성할 수 있도록 하여 애플리케이션 개발을 간소화합니다. AppSync는 GraphQL을 사용하여 애플리케이션이 필요한 데이터를 정확하게 가져올 수 있도록 하는 관리형 서비스입니다.
- AWS AppSync - 플랫폼에서 시작하기
- Cognito Sync의 기존 사용자는 Amazon Cognito Sync 시작하기를 참조하세요.
워크숍
Amazon Cognito 워크숍
이 워크숍에서는 Cognito를 자세히 살펴보고 샘플 소매점용 인증 솔루션을 구축합니다. 또한 호스팅 UI, AWS Amplify를 사용한 Amazon Cognito 사용자 풀 SDK 및 Amazon Cognito 자격 증명 풀 SDK의 API 인증을 위한 Amazon Cognito 사용자 풀 작업을 수행합니다.
샘플 애플리케이션
펫 스토어 애플리케이션 샘플
이 샘플 웹 애플리케이션은 가상 펫 스토어 웹 애플리케이션의 다양한 사용자 유형에 대한 인증 및 정책 기반 권한 부여를 보여줍니다. 이 애플리케이션은 인증에 Amazon Cognito를 사용하고 정책 기반 권한 부여에 Amazon Verified Permissions를 사용합니다. 이 애플리케이션은 AWS Amplify 플랫폼을 사용하여 백엔드 리소스의 배포 및 프로비저닝을 가속화합니다.
Amazon Cognito를 사용하여 암호 없는 인증 구현
암호 없는 인증은 보안을 개선하고 마찰을 줄이며 고객 대상 애플리케이션의 최종 사용자에게 더 나은 사용자 경험을 제공합니다. Amazon Cognito는 사용자 지정 인증 흐름을 구현하는 기능을 제공합니다. 이 기능을 사용하면 애플리케이션의 인증 요소를 확장할 수 있습니다.
이 솔루션은 암호 없는 인증을 지원하는 몇 가지 패턴을 보여주고 이러한 방법에 대한 참조 구현을 제공합니다.
- FIDO2: 일명 WebAuthn, 얼굴, 터치, YubiKey 등을 사용하여 로그인합니다.
- 매직 링크 로그인: 이메일로 전송되는 일회용 비밀 링크로 로그인합니다(여러 브라우저에서 작동).
- SMS 기반 단계별 인증: 이미 로그인한 사용자가 암호를 입력하지 않아도 SMS One-Time-Password(OTP)를 통해 ID를 다시 확인할 수 있습니다.
이러한 각 인증 방법의 참조 구현에는 여러 AWS가 사용됩니다. 이 솔루션에는 개발 작업 시 웹, React 및 React Native에서 사용하여 필요한 구성 요소를 이해하고 필요에 따라 솔루션을 확장 및 조정하는 데 도움이 되는 프런트 엔드 코드(TypeScript)와 백엔드용 CDK 코드(TypeScript)가 모두 포함되어 있습니다.
개요 동영상
설명서
설명된 단계에 따라 Amazon Cognito 콘솔에서 처음으로 사용자 풀을 설정하고 구성
샘플 앱 설정: iOS | Android | JavaScript(Angular 2)
Amazon Cognito ID 풀의 개요와 ID 생성을 위한 단계 또는 페더레이션된 소셜 또는 SAML 기반 ID 공급자를 통한 사용자 인증 설정을 위한 단계를 제공합니다.
샘플 앱 설정: iOS | Android
사용자 및 앱을 다른 AWS 서비스에 연결합니다.
Amazon Cognito Sync가 처음인 경우 AWS AppSync를 사용합니다. AWS AppSync는 애플리케이션 데이터를 디바이스 전체에 동기화할 수 있는 서비스입니다. 앱 기본 설정 또는 게임 상태와 같은 사용자 데이터를 동기화할 수 있습니다. 또한 공유 데이터를 기반으로 한 여러 사용자의 실시간 동기화 및 협업을 허용하여 이러한 기능을 확장할 수 있습니다. Cognito Sync의 기존 사용자는 Amazon Cognito Sync 시작하기를 참조하세요.
Amazon Cognito에 대한 AWS Support 지식 센터 질문
자주 묻는 질문에 대한 답변을 얻고 유용한 문서를 사용하여 계정 복구, OIDC 토큰, 보안 설정 등과 같은 Amazon Cognito 기능 문제를 해결할 수 있습니다.
새로운 소식
개발자 도구 및 SDK
Amazon Cognito 사용자 풀: