View a markdown version of this page

인증 흐름 구현 - Amazon Cognito

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

인증 흐름 구현

인증용 AWS SDK를 사용하여 관리형 로그인을 구현하든 사용자 지정 구축 애플리케이션 프런트엔드를 구현하든 관계없이 구현하려는 인증 유형에 맞게 앱 클라이언트를 구성해야 합니다. 다음 정보는 앱 클라이언트 및 애플리케이션의 인증 흐름 설정을 설명합니다.

App client supported flows

Amazon Cognito 콘솔 또는 AWS SDK의 API를 사용하여 앱 클라이언트에 지원되는 흐름을 구성할 수 있습니다. 이러한 흐름을 지원하도록 앱 클라이언트를 구성한 후 애플리케이션에 배포할 수 있습니다.

다음 절차에서는 Amazon Cognito 콘솔을 사용하여 앱 클라이언트에 사용할 수 있는 인증 흐름을 구성합니다.

인증 흐름에 맞게 앱 클라이언트를 구성하는 방법(콘솔)
  1. 에 로그인 AWS 하고 Amazon Cognito 사용자 풀 콘솔로 이동합니다. 사용자 풀을 선택하거나 새로운 사용자 풀을 생성합니다.

  2. 사용자 풀 구성에서 앱 클라이언트 메뉴를 선택합니다. 앱 클라이언트를 선택하거나 새 앱 클라이언트를 생성합니다.

  3. 앱 클라이언트 정보에서 편집을 선택합니다.

  4. 앱 클라이언트 흐름에서 지원하려는 인증 흐름을 선택합니다.

인증 흐름에 대한 앱 클라이언트를 구성하는 방법(API/SDK)

Amazon Cognito API를 사용하여 앱 클라이언트에 사용할 수 있는 인증 흐름을 구성하려면 CreateUserPoolClient 또는 UpdateUserPoolClient 요청에서 ExplicitAuthFlows 값을 설정합니다. 다음은 클라이언트에 보안 원격 암호(SRP) 및 선택 기반 인증을 프로비저닝하는 예입니다.

"ExplicitAuthFlows": [ "ALLOW_USER_AUTH", "ALLOW_USER_SRP_AUTH" ]

앱 클라이언트 지원 흐름을 구성할 때 다음 옵션과 API 값을 지정할 수 있습니다.

앱 클라이언트 흐름 지원
인증 흐름 호환성 콘솔 API
선택 기반 인증 서버 측, 클라이언트 측 로그인 시 인증 유형 선택 ALLOW_USER_AUTH
영구 암호로 로그인 클라이언트 측 사용자 이름과 암호로 로그인 ALLOW_USER_PASSWORD_AUTH
영구 암호 및 보안 페이로드로 로그인 서버 측, 클라이언트 측 보안 원격 암호(SRP)로 로그인 ALLOW_USER_SRP_AUTH
토큰 새로 고침 서버 측, 클라이언트 측 기존의 인증된 세션에서 새 사용자 토큰 가져오기 ALLOW_REFRESH_TOKEN_AUTH
서버 측 인증 서버 측 서버 측 관리 자격 증명으로 로그인 ALLOW_ADMIN_USER_PASSWORD_AUTH
사용자 지정 인증 서버 측과 클라이언트 측 맞춤형 애플리케이션. 관리형 로그인과 호환되지 않습니다. Lambda 트리거의 사용자 지정 인증 흐름으로 로그인 ALLOW_CUSTOM_AUTH
Implement flows in your application

관리형 로그인을 사용하면 구성된 인증 옵션을 로그인 페이지에서 자동으로 사용할 수 있습니다. 사용자 지정 빌드 애플리케이션에서 초기 흐름 선언으로 인증을 시작합니다.

  • 사용자의 흐름 옵션 목록에서 선택하려면 USER_AUTH 흐름으로 선택 기반 인증을 선언합니다. 이 흐름에는 패스키 및 암호 없는 인증과 같이 클라이언트 기반 인증 흐름에서 사용할 수 없는 사용 가능한 인증 방법이 있습니다.

  • 인증 흐름을 미리 선택하려면 앱 클라이언트에서 사용할 수 있는 다른 흐름으로 클라이언트 기반 인증을 선언합니다.

사용자를 로그인할 때 InitiateAuth 또는 AdminInitiateAuth 요청 본문에 AuthFlow 파라미터가 포함되어야 합니다.

선택 기반 인증:

"AuthFlow": "USER_AUTH"

SRP를 사용한 클라이언트 기반 인증:

"AuthFlow": "USER_SRP_AUTH"