상세 컨텐츠

본문 제목

AWS Amplify로 Android 로그인 회원가입 10분만에 구현하기 - 1

안드로이드 프로젝트 함께하기

by yebon.kim 2020. 10. 15. 00:13

본문

반응형

 

아래 과정을 진행하기 위해서는 AWS계정과 안드로이드 개발 환경이 준비되어 있어야 합니다.

 

대부분의 앱에 들어가있는 회원가입과 로그인은 필요에 따라 조금씩은 달라지겠지만 항상 같은 기능인데 매번 구현해주어야 하는 귀찮음이 있습니다.

(특히 해커톤같이 급하게 만들어야 할 땐 생략해버리곤 했어요! 😙🎶)

 

해커톤과 같이 기능을 빨리 구현해야 할 때,

개인앱 등을 만들 때,

또는 서버 개발자가 없을 때 편하게 사용할 수 있는 AWS 서비스가 있어서 구현방법과 장단점을 알아보려고 합니다.🥳

(장단점은 2번 째 포스트를 참고해주세요)

 

전체 구현 프로젝트는 깃헙 링크 에서 확인할 수 있습니다.

 


Amplify 설치

먼저 npm을 통해 amplify를 설치해줍니다.

(npm이 설치 되어 있지 않다면 링크 를 통해 npm을 설치해 주세요.)

 

npm install -g @aws-amplify/cli -update

 

 

설치가 성공적으로 완료되면 아래와 같은 화면을 볼 수 있습니다.

 

 


 

Amplify 초기화

Android 프로젝트의 루트 디렉토리에서 Amplify를 초기화해 줍니다.

아래 주황색 박스가 쳐진 부분들을 입력해줍니다. 이 부분들은 자동입력이 되니 cli에 회색으로 나온 예시를 그대로 입력해주면 됩니다.

프로젝트 이름 amplifyloginandroid 만 본인의 프로젝트 이름으로 변경해주세요.

 

 

다음은 AWS credential을 설정해 주어야 합니다.

이전에 AWS를 cli로 이용한 적이 없다면, 아래 주황색 박스처럼 aws region을 설정해주고 프로젝트에서 사용할 IAM 유저의 이름을 입력해주면 해당 IAM을 설정하는 AWS 콘솔 웹이 열리게 됩니다.

선호하는 aws region과 IAM 유저 이름이 있다면 원하는대로 설정해주세요.

 

이미 profile이 있으신 경우 사용할 profile을 선택하고 accessKeyId 입력 부분부터 함께해 주세요.

 

위와 같이 설정을 하고 나면 아래와 같은 AWS console이 뜨게 됩니다. 사용자 이름은 이미 설정되어 있으니 아래 주황색 박스처럼 설정을 완료한 뒤 하단의 [다음 : 권한] 버튼을 눌러줍니다.

 

 

그 다음 화면에서도 주황색 박스를 선택하고 [다음:태그] 버튼을 눌러 진행해주세요.

주의❗️ : 현재 부여한 권한은 모든 리소스를 참조할 수 있는 위험한 권한입니다. 이 프로젝트 테스트를 한 이후에 해당 IAM을 삭제하시길 권장드립니다. 삭제 방법은 다음 포스트를 참고해주세요.

 

그 다음 화면에서는 별도의 추가 작업 없이 [다음:검토] 버튼을 눌러주세요.

 

 

그 다음 화면에서도 설정된 내용을 다시 한 번 확인한 후 [사용자 만들기] 버튼을 눌러주세요.

 

IAM 유저가 생성되었습니다! 아래 [.csv 다운로드] 버튼을 통해 꼭 데이터를 저장해주세요. 이 페이지를 나가면 더이상 해당 정보를 조회할 수 없습니다.

 

 

과정을 모두 완료하고 다시 cli에 돌아오면 생성한 유저의 정보를 입력해야합니다.

csv파일을 열어 accessKeyId, secretAccessKey, 프로필 이름을 입력해줍니다.

 

 

이후에는 생성된 프로필을 사용할 수 있습니다. 위에서 프로필 이름을 [default]로 지었기 때문에 default profile을 선택해줍니다.

 

 

위를 끝으로 amplify 초기화가 완료되었습니다! 설정이 완료되면 cli에서 아래와 같은 문구를 볼 수 있습니다.

 

 


 

Auth 추가

회원가입, 로그인 기능을 제공하기 위해서 사용자의 데이터를 어떻게 관리할 것인지 amplify에 설정을 해주어야 합니다.

이와 관련된 기능이 auth이며 역시 cli를 통해 추가할 수 있습니다. auth기능은 AWS의 congito서비스를 이용하게 됩니다.

아래 명령어를 입력하여 auth 기능을 추가해주세요.

amplify add auth

 

후에 나오는 선택지에서 아래와 같이 선택해줍니다. 저는 2번째 선택지를 [username]으로 골랐습니다. 기

본 선택지 중에 각자가 원하는 것을 고르면 됩니다.

예를 들어 이메일을 고르게 될 경우 회원가입 로그인 시에 이메일 형식만 입력할 수 있도록 기능이 제공되어 편리합니다.

 

 

위와 같이 설정을 하면 auth 기능을 간단하게 추가할 수 있습니다!

 

마지막으로 amplify는 github처럼 로컬과 클라우드 리소스가 분리되어 있기 때문에 아래 명령을 통해 클라우드에도 이를 추가해주어야 합니다.

추가해주기 전에 아래 명령으로 auth가 잘 생성되었는지 확인해보겠습니다.

amplify status

 

Operation을 통해 Auth기능이 생성되었다는 것을 확인할 수 있습니다.

 

 

확인 후 아래 명령을 통해 클라우드에 이를 반영할 수 있습니다.

amplify push

 

이후에 다시 아래 명령을 통해 변경사항을 확인할 수 있습니다.

amplify status

 

operation 상태가 변한 것을 알 수 있습니다.

 

위 과정을 통해서 드디어 cli 작업이 완료되었습니다.🎉🎉

AWS Amplify를 통해 AWS cognito설정과 AWS IAM 설정을 빠르고 쉽게 완료할 수 있었습니다.

 

그럼 이제 본격적으로 안드로이드 프로젝트를 세팅하겠습니다! 다음 글을 확인해주세요.😊

 

2020/10/23 - [안드로이드 프로젝트 함께하기] - AWS Amplify로 Android 로그인 회원가입 10분만에 구현하기 - 2

 

AWS Amplify로 Android 로그인 회원가입 10분만에 구현하기 - 2

아래 과정을 진행하기 위해서는 AWS계정과 안드로이드 개발 환경이 준비되어 있어야 합니다. 이 전 포스트에 이어 Android 앱에 aws amplify를 적용하는 과정을 보여드리겠습니다.👩‍🔧 이 포스트

yebon-kim.tistory.com

 

반응형

관련글 더보기

댓글 영역