개발자
안녕하세요 리액트 네이티브로 카카오 로그인과 AWS Cognito 사용자 풀을 연동하려고 합니다. 먼저 카카오 OIDC로 사용자 풀을 생성하였습니다 웹의 경우 코그니토에서 제공하는 로그인 엔드포인트로 카카오 로그인 페이지로 이동하여 코그니토 idresponse 리다이렉트와 함께 코드와 토큰을 받고 있습니다. 이후 사용자 풀에 유저가 생성됩니다. 하지만 모바일 환경의 경우에는 카카오 로그인을 하려면 SDK로 먼저 로그인을 해야하는데, 로그인 후 다시 앱으로 돌아오면, 웹과 달리 리다이렉트가 이루어지지 않아 유저가 생성되지 않습니다. 현재는 카카오 로그인을 통해 받은 이메일과 랜덤한 패스워드를 생성하여 코그니토에 회원가입을 하고 있습니다. 현재 모든 인증은 클라이언트에서 하고 있습니다. 위와 같은 방법이는 맞는걸까요?? 모바일 환경에서 로그인 sdk와 함께 코그니토에 유저를 생성하는 방법에는 어떤 것들이 있는지 궁금합니다!
답변 0
첫 답변을 기다리고 있어요.
지금 가입하면 모든 질문의 답변을 볼 수 있어요!
현직자들의 명쾌한 답변을 얻을 수 있어요.
이미 회원이신가요?
커리어리 AI 봇
GPT가 달아주는 답변입니다.
2024년 01월 27일
모바일 환경에서 카카오 로그인 SDK와 함께 AWS Cognito에 사용자를 생성하는 접근 방법으로는 아래의 방법들을 고려해볼 수 있습니다: 1. **AWS Amplify**: AWS Amplify는 싱글 사인온(SSO) 서비스 연동을 지원하며, Cognito 및 OIDC (OpenID Connect) 등의 기능을 제공합니다. 카카오 로그인 후에 받은 토큰을 이용해 Amplify를 통해 Cognito 사용자 풀에 직접 사용자를 생성할 수 있습니다. 2. **서버 사이드 인증 처리**: 클라이언트에서 직접 인증 처리를 하는 대신, 서버와 클라이언트의 역할을 분리하고 서버 사이드에서 인증 처리를 하는 것도 한 가지 방법입니다. 즉, 카카오 SDK를 이용해서 로그인한 뒤 얻은 토큰을 백엔드로 보내서 백엔드에서 이를 확인하고, 그 결과값을 다시 클라이언트로 전송하는 방식입니다. 이때 서버쪽에서는 액세스 토큰과 리프레시 토큰 모두 관리될 수 있어야 합니다. 3. **Custom Authentication Flow**: Cognito는 Custom Authentication Flow라는 기능도 제공합니다. 여기서는 Lambda Triggers(사용자 정의 인증 플로우를 구현하는데 사용되는 AWS Lambda 함수)를 구축하여 카카오와 같은 제3의 인증을 다룰 수 있습니다. 4. **Federation with Cognito**: 핵심적으로, 이 작업은 Cognito Identity Pool을 사용하여 Federated Identity 기능을 활용하는 것입니다. 이 방식에서는 카카오 로그인 SDK를 통해 로그인한 후에 받은 토큰을 Identity Pool에 제공하고, 그러면 AWS Cognito가 임시 AWS 자격 증명을 생성하는 방식입니다. 이 중에서 가장 적합한 방법은 앱의 요구 사항과 개발환경에 따라 달라집니다. 보안 관련 고려 사항도 염두에 두어야 하며, 각 서비스의 문서를 꼭 확인하시기 바랍니다.
지금 가입하면 모든 질문의 답변을 볼 수 있어요!