🍀

AWS Cognito+Spring Security 이용한 회원가입_(3)

작성일자
May 27, 2023
태그
DIARY_DEVELOP
프로젝트
NOI
책 종류
사용자 풀을 모두 생성했다면, 이제 백엔드에서는 Cognito의 관련 API를 호출할 수 있도록 설정해보자. 예를 들어 AWS SDK 또는 Cognito API를 사용하여 사용자 인증, 등록, 그룹 관리 등을 처리할 수 있다. 이때, 가장 먼저 클라이언트 보안키가 필요하다. 사용자 풀을 생성하는 법과 보안키를 확인하는 법은 지난 번 TIL에 정리되어 있다.
🍀
AWS Cognito 사용자 풀 생성, 앱클라이언트 보안키 확인_(2)

Cognito + Spring Security 연동

이 과정은 지난 번에 미리 해두었다. 지난 번 TIL 내용에 보충 설명을 더해 아래 작성한다.
🍀
AWS Cognito+Spring Security 통합 설정_(1)
  • build.gradle에 아래 코드 추가
    • 버전을 꼭 붙이자,,,,! 나는 버전을 안붙였다가 인식이 안되는 문제가 있어 한참 해맸다.
  • application.yml에 아래 코드 추가
    • clientId, clientSecret, clientName은 풀을 생성하며 만든 앱클라이언트 정보를 의미한다. 콘솔창에서 앱클라이언트 정보를 확인해 입력하자.
    • issuerUri는 Cognito ID 풀(Cognito Identity Pool)의 발행자 URI를 나타냅니다.
      • 콘솔에서 "사용자 풀" 섹션으로 이동하고 해당하는 풀을 선택한 후, 사용자 풀 개요를 보면 풀 ID를 찾을 수 있다.
      • region은 Cognito ID 풀이 있는 AWS 리전을 나타낸다. arn에 나와있으니 그걸 참고해도 좋다.
    • user-name-attribute는 Cognito 사용자 풀(Cognito User Pool)의 사용자 이름 속성을 지정한다. 일반적으로 기본값인 "cognito:username"을 사용하며, 이는 Cognito 사용자 풀의 사용자 이름 속성을 나타낸다. Cognito 사용자 풀의 사용자 특성 설정에서 확인할 수 있다. AWS Cognito 콘솔에서 사용자 풀 섹션으로 이동하고 해당하는 풀을 선택한 후, 속성 탭으로 이동하면 사용자 이름 속성을 확인할 수 있다.
  • Security 구성 클래스 추가

    Cognito+Spring Security 이용한 회원가입 구현

    • MemberSaveRequestDto
      • MemberSaveResponseDto
        • MemberController

          참고

          amazon-cognito-developer-authentication-sample
          aws-samplesUpdated Mar 31, 2024
          cognitoAuthentication
          ihuaylupoUpdated Jun 5, 2024
           
          AWS Cognito+Spring Security 이용한 회원가입_(3)