사용자 가져오기 .csv 파일 생성 - Amazon Cognito

사용자 가져오기 .csv 파일 생성

기존 사용자를 사용자 풀로 가져오려면 먼저 입력으로 사용할 .csv 파일을 생성해야 합니다. 이렇게 하려면 사용자 가져오기 .csv 헤더 정보를 다운로드한 다음, .csv 파일 포맷에 설명된 포맷 요구 사항에 맞게 파일을 편집합니다.

.csv 파일 헤더 다운로드(콘솔)

  1. Amazon Cognito 콘솔로 이동하여 [사용자 풀 관리(Manage User Pools)]를 선택한 다음, 사용자를 가져올 사용자 풀을 선택합니다.

  2. 사용자(Users) 탭을 선택합니다.

  3. 사용자 가져오기(Import users)를 선택합니다.

  4. [CSV 헤더 다운로드(Download CSV header)]를 선택하여 .csv 파일에 포함해야 하는 헤더 행이 포함된 .csv 파일을 가져옵니다.

.csv 파일 헤더 다운로드(AWS CLI)

올바른 헤더 목록을 보려면 다음 CLI 명령을 실행합니다. 여기서 USER_POOL_ID는 사용자를 가져올 사용자 풀의 사용자 풀 식별자입니다.

aws cognito-idp get-csv-header --user-pool-id "USER_POOL_ID"

샘플 응답:

{ "CSVHeader": [ "name", "given_name", "family_name", "middle_name", "nickname", "preferred_username", "profile", "picture", "website", "email", "email_verified", "gender", "birthdate", "zoneinfo", "locale", "phone_number", "phone_number_verified", "address", "updated_at", "cognito:mfa_enabled", "cognito:username" ], "UserPoolId": "USER_POOL_ID" }

.csv 파일 포맷

다운로드한 사용자 가져오기 .csv 헤더 파일은 다음과 같습니다.

cognito:username,name,given_name,family_name,middle_name,nickname,preferred_username,profile,picture,website,email,email_verified,gender,birthdate,zoneinfo,locale,phone_number,phone_number_verified,address,updated_at,cognito:mfa_enabled

.csv 파일에 이 헤더와 사용자의 속성 값이 포함되고 다음 규칙에 따라 포맷되도록 편집해야 합니다.

참고

전화 번호의 올바른 형식 등, 속성 값에 대한 자세한 내용은 사용자 풀 속성 섹션을 참조하세요.

  • 파일의 첫 번째 행은 사용자 속성 이름을 포함하는 다운로드된 헤더 행입니다.

  • .csv 파일에서 열 순서는 중요하지 않습니다.

  • 첫 번째 행 뒤의 각 행에는 사용자의 속성 값이 포함됩니다.

  • 헤더의 모든 열이 있어야 하지만 모든 열에 값을 제공할 필요는 없습니다.

  • 다음과 같은 속성이 필요합니다.

    • cognito:username

    • cognito:mfa_enabled

    • email_verified 또는 phone_number_verified

    • email(email_verifiedtrue인 경우)

    • phone_number(phone_number_verifiedtrue인 경우)

    • 사용자 풀을 생성할 때 필수 속성으로 표시한 모든 속성

  • 사용자 풀에는 하나 이상의 자동 확인 속성(email_verified 또는 phone_number_verified)이 있어야 합니다. 각 사용자의 자동 확인 속성 중 하나 이상이 true이어야 합니다. 사용자 풀에 자동 확인된 속성이 없으면 가져오기 작업이 시작되지 않습니다. 사용자 풀에 자동 확인 속성이 하나만 있는 경우 각 사용자에 대해 해당 속성을 확인해야 합니다. 예를 들어 사용자 풀에 phone_number만 자동 검증 속성으로 설정되어 있는 경우 각 사용자의 phone_number_verified 값이 true이어야 합니다.

    참고

    사용자가 암호를 재설정하려면 확인된 이메일 또는 전화 번호가 있어야 합니다. Amazon Cognito는 .csv 파일에 지정된 이메일 또는 전화 번호로 암호 재설정 코드가 포함된 메시지를 보냅니다. 전화 번호로 메시지를 전송하는 경우 SMS 메시지를 통해 전송됩니다.

  • 문자열 속성 값은 인용 부호로 묶여 있지 않아야 합니다.

  • 속성 값에 쉼표가 포함된 경우 쉼표 앞에 백슬래시(\)를 넣어야 합니다. .csv 파일의 필드가 쉼표로 구분되어 있기 때문입니다.

  • .csv 파일 내용은 바이트 순서 표시가 없는 UTF-8 포맷이어야 합니다.

  • cognito:username 필드는 필수이며 사용자 풀 내에서 고유해야 합니다. 유니 코드 문자열일 수 있습니다. 단, 공백 또는 탭을 포함할 수 없습니다.

  • birthdate 값이 있는 경우 이 값은 mm/dd/yyyy 포맷이어야 합니다. 즉, 예를 들어 생년월일 1985년 2월 1일은 02/01/1985로 인코딩되어야 합니다.

  • cognito:mfa_enabled 필드는 필수입니다. 사용자 풀에서 멀티 팩터 인증(MFA)을 필수로 적용하도록 설정한 경우 이 필드는 모든 사용자에 대해 true이어야 합니다. MFA를 해제하도록 설정한 경우 이 필드는 모든 사용자에 대해 false이어야 합니다. MFA를 선택 사항으로 설정한 경우 이 필드는 true 또는 false일 수 있지만 비워 둘 수는 없습니다.

  • 최대 행 길이는 16,000자입니다.

  • 최대 .csv 파일 크기는 100MB입니다.

  • 파일의 최대 행(사용자) 수는 500,000개입니다. 헤더 행은 이 최대값에 포함되지 않습니다.

  • updated_at 필드 값은 초 단위의 Epoch 시간이어야 합니다(예: 1471453471).

  • 속성 값의 선행 또는 후행 공백은 잘립니다.

전체 샘플 사용자 가져오기 .csv 파일은 다음과 같습니다.

cognito:username,name,given_name,family_name,middle_name,nickname,preferred_username,profile,picture,website,email,email_verified,gender,birthdate,zoneinfo,locale,phone_number,phone_number_verified,address,updated_at,cognito:mfa_enabled John,,John,Doe,,,,,,,johndoe@example.com,TRUE,,02/01/1985,,,+12345550100,TRUE,123 Any Street,,FALSE Jane,,Jane,Roe,,,,,,,janeroe@example.com,TRUE,,01/01/1985,,,+12345550199,TRUE,100 Main Street,,FALSE