내용으로 건너뛰기

Auth0을 Amazon Cognito 사용자 풀의 SAML ID 제공업체로 설정하려면 어떻게 해야 합니까?

4분 분량
0

Amazon Cognito 사용자 풀을 사용하여 Auth0을 SAML 2.0 ID 제공업체(IdP)로 설정하려고 합니다.

간략한 설명

앱 클라이언트, 도메인 이름, Auth0 애플리케이션이 있는 Auth0 계정이 포함된 Cognito 사용자 풀이 있어야 합니다. 자세한 내용은 타사 ID 제공업체를 통한 사용자 풀 로그인사용자 풀에 SAML ID 제공업체 사용을 참조하십시오.

해결 방법

앱 클라이언트 및 도메인 이름을 사용하여 Cognito 사용자 풀 생성

자세한 내용은 다음 AWS 문서를 참조하십시오.

Auth0 계정 가입

Auth0 계정이 아직 없는 경우 Auth0 Sign Up 웹사이트에서 계정을 등록합니다.

Auth0 애플리케이션 생성

다음 단계를 완료합니다.

  1. Auth0 Dashboard에서 Applications을 선택한 다음 Create Application을 선택합니다.
  2. Create Application 상자에 애플리케이션 이름(예: My App)을 입력합니다.
  3. Choose an application type에서 Single Page Web Applications를 선택합니다.
  4. Create를 선택합니다.

Auth0 애플리케이션의 테스트 사용자 생성

다음 단계를 완료합니다.

  1. Auth0 Dashboard의 탐색 창에서 User Management를 선택한 다음 Users를 선택합니다.
  2. Create Your First User 또는 Create User를 선택합니다.
  3. Create User 상자에서 테스트 사용자의 이메일과 암호를 입력합니다.
  4. Save를 선택합니다.

애플리케이션의 SAML 설정 구성

다음 단계를 완료합니다.

  1. Auth0 Dashboard의 탐색 창에서 Applications를 선택합니다.
  2. 생성한 애플리케이션의 이름을 선택합니다.
  3. Addons 탭에서 SAML2 Web App을 켭니다.
  4. Addon: SAML2 Web App 상자의 Settings 탭에 있는 Application Callback URL에서 https://yourDomainPrefix.auth.region.amazoncognito.com/saml2/idpresponse를 입력합니다.
    참고: yourDomainPrefixregion을 사용자 도메인 접두사와 사용자 풀의 AWS 리전으로 바꾸십시오. 사용자 풀의 Management 페이지에 있는 Domain name 탭에서 찾아볼 수 있습니다. 또는 https//yourCustomDomain/saml2/idpresponse와 비슷한 사용자 지정 도메인 콜백 URL을 입력합니다.
  5. Settingsaudience에서 주석 구분 기호(//)를 삭제하고 기본값 urn:foourn:amazon:cognito:sp:yourUserPoolId로 바꿉니다.
    참고: yourUserPoolId를 Cognito 사용자 풀 ID로 바꾸십시오. 사용자 풀의 Management 페이지에 있는 General settings 탭에서 ID를 찾아볼 수 있습니다.
  6. mappingsemail의 주석 구분 기호(//)를 삭제합니다. 사용자 풀에 필요한 다른 모든 사용자 속성을 삭제합니다.
  7. nameIdenetifierFormat의 주석 구분 기호(//)를 삭제합니다. 기본값인 urn:oasis:names:tc:SAML:1.1:nameid-format:unspecifiedurn:oasis:names:tc:SAML:2.0:nameid-format:persistent로 바꿉니다.
  8. (선택 사항) Debug를 선택합니다. 구성이 제대로 작동하는지 확인하기 위해 테스트 사용자로 로그인합니다.
  9. Enable을 선택하고 Save를 선택합니다.

Auth0 애플리케이션의 IdP 메타데이터 가져오기

Addon: SAML2 Web App 상자의 Usage 탭에서 Identity Provider Metadata를 찾습니다. Download를 선택하고 URL을 기록해 둡니다. 또는 Download를 선택하여 .xml 메타데이터 파일을 다운로드합니다.

Cognito에서 Auth0을 SAML IdP로 구성

SAML IdP를 생성할 때 Metadata documentIdentity Provider Metadata URL을 입력하거나 .xml 메타데이터 파일을 업로드합니다.

자세한 내용은 사용자 풀에 SAML ID 제공업체 추가 및 관리를 참조하십시오.

IdP 속성에서 사용자 풀 속성으로 이메일 주소 매핑

SAML Attributehttp://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress를 입력합니다. User pool attribute에서 Email을 선택합니다.

자세한 내용은 프로필 및 토큰에 IdP 속성 매핑을 참조하십시오.

Cognito에서 앱 클라이언트 설정 변경

다음 단계를 완료합니다.

  1. Cognito 콘솔을 엽니다.
  2. 사용자 풀을 선택합니다.
  3. 사용자 풀의 관리 페이지에 있는 애플리케이션에서 원하는 앱 클라이언트 선택을 선택합니다.
  4. 로그인 페이지에서 관리되는 로그인 페이지 구성을 편집합니다.
  5. ID 제공업체에서 Auth0Cognito 사용자 풀을 선택합니다.
  6. 허용된 콜백 URL에 로그인한 후 리디렉션될 URL을 입력합니다. https://www.amazon.com과 같은 유효한 URL을 입력하여 인증을 테스트할 수 있습니다.
  7. 허용된 URL 로그아웃에 로그아웃한 후 리디렉션될 URL을 입력합니다. https://www.amazon.com과 같은 유효한 URL을 입력하여 인증을 테스트할 수 있습니다.
  8. 허용된 OAuth 흐름에서 최소한 암시적 부여를 선택합니다.
  9. 허용된 OAuth 범위에서 최소한 이메일openid를 선택합니다.
  10. 변경 사항 저장을 선택합니다.

자세한 내용은 앱 클라이언트 약관을 참조하십시오.

로그인 엔드포인트 테스트

다음 단계를 완료합니다.

  1. 웹 브라우저에 https://.auth..amazoncognito.com/login?response_type=token&client_id=&redirect_uri= URL을 입력합니다.
  2. yourDomainPrefixregion을 사용자 풀 값으로 바꿉니다. 사용자 풀의 관리 페이지의 브랜딩에 있는 도메인 이름 탭에서 찾을 수 있습니다.
  3. yourClientId를 사용자의 앱 클라이언트의 ID로 바꾸고, redirectUrl을 사용자 앱 클라이언트의 콜백 URL로 바꿉니다. 사용자 풀의 관리 페이지의 애플리케이션에 있는 앱 클라이언트 설정 탭에서 확인할 수 있습니다. 자세한 내용은 관리형 로그인 로그인 엔드포인트: /login을 참조하십시오.
  4. Auth0을 선택합니다.
    참고: 사용자의 앱 클라이언트 콜백 URL로 리디렉션된다면, 사용자의 브라우저에서 이미 Auth0 계정에 로그인한 것입니다.
  5. Auth0 애플리케이션의 로그인 페이지에서 테스트 사용자의 이메일과 암호를 입력합니다.
  6. Log in을 선택합니다.

로그인 후에는 앱 클라이언트의 콜백 URL로 리디렉션됩니다. 사용자의 웹 브라우저 주소 표시줄에 있는 URL에 사용자 풀 토큰이 표시됩니다.

관련 정보

사용자 풀 JSON 웹 토큰(JWT) 이해하기

타사 SAML ID 제공업체 구성

Amazon Cognito 사용자 풀을 사용하여 타사 SAML ID 제공업체를 설정하려면 어떻게 해야 합니까?