Amazon Cognito 사용자 풀에서 LinkedIn을 소셜 ID 제공업체로 설정하려면 어떻게 해야 하나요?

5분 분량
0

사용자가 LinkedIn을 통해 로그인할 수 있도록 Amazon Cognito 사용자 풀에서 LinkedIn을 소셜 ID 제공업체(IdP)로 구성하고 싶습니다.

해결 방법

LinkedIn에서는 openID connect를 통해 사용자를 인증할 수 있습니다. Amazon Cognito 사용자 풀에 LinkedIn을 OIDC 제공업체로 추가합니다.

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

이러한 사전 조건을 만드는 방법에 대한 자세한 내용은 다음 리소스를 참조하세요.

LinkedIn 앱 생성

  1. LinkedIn에서 개발자 제품군을 연 다음 앱 만들기를 선택합니다.
  2. 앱 만들기 페이지에서 모든 필수 및 기본 필드를 작성하여 LinkedIn 앱을 커스터마이징합니다. 그 뒤, 앱 만들기를 선택합니다.
  3. 인증 탭을 선택합니다. 목록에 openid, 프로필이메일 범위가 포함되어 있는지 확인합니다. 이러한 권한을 통해 필요한 LinkedIn 사용자 정보에 액세스할 수 있습니다.
    참고: openid, 프로필이메일 범위가 표시되지 않는 경우 애플리케이션에 OpenID Connect를 사용하여 LinkedIn에 로그인 제품을 추가하세요. 이는 LinkedIn 개발자 페이지의 제품 탭에 있습니다.
  4. 인증 탭의 애플리케이션 보안 인증 정보에서 클라이언트 ID클라이언트 암호를 찾은 다음 복사합니다. 이 두 값 모두가 사용자 풀에 LinkedIn을 ID 제공업체로 추가할 때 모두 필요합니다.
  5. OAuth 2.0 설정리다이렉트 URL: 옆의 연필 아이콘을 선택합니다. 그 뒤, + 리다이렉트 URL 추가를 선택합니다.
  6. 리다이렉트 URL: 아래에 https://YourDomainPrefix.auth.region.amazoncognito.com/oauth2/idpresponse를 입력합니다.
    참고: YourDomainPrefix리전을 사용자 풀에 해당하는 값으로 바꿉니다. 사용자 풀의 앱 통합 탭에 있는 Amazon Cognito 콘솔에서 해당하는 값을 찾습니다.

사용자 풀에 OIDC 제공업체 추가하기

  1. Amazon Cognito 콘솔을 엽니다.
  2. 사용자 풀을 선택합니다. 로그인 환경 탭에서 ID 제공업체 추가를 선택합니다.
  3. OpenID 연결을 선택합니다.
  4. OIDC 제공업체 세부 정보에 LinkedIn 앱의 세부 정보를 입력합니다.
    제공업체 이름에 이름을 입력합니다(예: LinkedIn). 이 이름이 Amazon Cognito에 호스팅된 웹 UI에 표시됩니다.
    참고: 제공업체를 생성한 후에는 이 필드를 변경할 수 없습니다.
    클라이언트 ID에 이전에 LinkedIn 애플리케이션에서 복사한 클라이언트 ID를 입력합니다.
    클라이언트 암호에 이전에 LinkedIn 애플리케이션에서 복사한 클라이언트 암호를 입력합니다.
    속성 요청 방법에 설정 GET을 유지합니다.
    인증 범위openid 프로필 이메일을 입력합니다.
    발급자에 https://www.linkedin.com을 입력합니다.
    엔드포인트 정보를 수동으로 입력해야 하는 경우 LinkedIn 웹 사이트에서 LinkedIn 검색을 참조하세요.
  5. 제공업체 생성을 선택합니다.

자세한 내용은 사용자 풀에 OIDC IdP 추가하기를 참조하세요.

OIDC 제공업체의 속성을 사용자 풀에 매핑하기

  1. Amazon Cognito 콘솔을 엽니다.
  2. 사용자 풀을 선택합니다.
  3. 로그인 경험 탭에서 생성한 LinkedIn OIDC 제공업체를 선택합니다.
  4. 속성 매핑에서 userpool 이메일 속성을 OpenID Connect 속성 이메일과 매핑합니다.
  5. OIDC 속성 sub가 사용자 풀 속성 사용자 이름에 매핑되는지 확인합니다.
  6. (선택 사항) LinkedIn에서 함께 전달할 OIDC 속성을 추가합니다. 예를 들어 given_namefamily_name을 해당 Amazon Cognito 사용자 풀 속성에 매핑할 수 있습니다.

자세한 내용은 사용자 풀에 대한 ID 제공업체 속성 매핑 지정하기를 참조하세요.

사용자 풀의 앱 클라이언트 설정 변경하기

  1. Amazon Cognito 콘솔을 엽니다.
  2. 사용자 풀을 선택합니다.
  3. 앱 통합에서 앱 클라이언트를 선택합니다.
  4. 앱 클라이언트 페이지에서 다음 필드를 작성합니다.
    콜백 URL에 사용자가 로그인한 후 리다이렉션할 URL을 입력합니다. 테스트용으로 https://example.com/ 같은 아무 유효한 URL을 입력할 수 있습니다.
    로그아웃 URL의 경우 사용자가 로그아웃한 후 리다이렉션할 URL을 입력합니다. 테스트용으로 https://example.com/ 같은 아무 유효한 URL을 입력할 수 있습니다.
    호스팅된 UI 섹션을 편집하고 생성한 OIDC 제공업체(예: LinkedIn)를 ID 제공업체로 추가합니다.
    OAuth 2.0 부여 유형에서 인증 코드 부여 또는 암시적 부여 확인란 중 하나 혹은 둘 다를 선택합니다.
    참고: OAuth 2.0 부여 유형에 따라 엔드포인트 URL의 response_type 매개변수에 사용할 수 있는 값(코드 또는 토큰)이 결정됩니다.
    OpenID 연결 범위에서 이메일, 프로필 및 openid 확인란을 선택합니다.
  5. 변경 내용 저장을 선택합니다.

자세한 내용은 앱 클라이언트 설정 용어를 참조하세요.

엔드포인트 URL 구성

자신의 설정 값을 사용하여 다음 엔드포인트 URL을 구성합니다.

https://YourDomainPrefix.auth.region.amazoncognito.com/oauth2/authorize?response_type=code&client_id=YourClientId&redirect_uri=redirectUrl

설정을 위한 URL을 사용자 지정합니다.

  • YourDomainPrefix리전을 사용자 풀의 값으로 바꿉니다. 사용자 풀의 앱 통합 탭에 있는 Amazon Cognito 콘솔에서 해당하는 값을 찾습니다.
  • 이전에 허용된 OAuth 흐름암시적 부여 플로우만 선택했다면 response_type=coderesponse_type=token으로 변경합니다.
  • YourClientId를 앱 클라이언트의 ID로 바꾸고, redirectUrl를 앱 클라이언트의 콜백 URL로 바꿉니다. 사용자 풀의 앱 통합 탭에 있는 Amazon Cognito 콘솔에서 이를 찾을 수 있습니다.

자세한 내용은 Amazon Cognito용 호스팅된 웹 UI를 구성하려면 어떻게 하나요?엔드포인트 인증을 참조하세요.

엔드포인트 URL 테스트

  1. 웹 브라우저에 구성된 엔드포인트 URL을 입력합니다.
  2. OIDC 제공업체 이름(예: LinkedIn)을 선택합니다.
  3. LinkedIn으로 로그인을 선택합니다. 그러면 LinkedIn 로그인 페이지로 리다이렉션됩니다.

참고: URL이 Amazon Cognito 앱 클라이언트의 콜백 URL로 리다이렉션되면 이미 LinkedIn에 로그인되어 있는 것입니다.

  1. LinkedIn 로그인 페이지에서 LinkedIn 계정의 이메일 주소(또는 휴대폰 번호)와 비밀번호를 입력합니다.
  2. 로그인을 선택합니다.

로그인에 성공하면 앱 클라이언트의 콜백 URL로 리다이렉션됩니다. 인증 코드 또는 사용자 풀 토큰은 웹 브라우저의 주소 표시줄에 있는 URL에 표시됩니다.

(선택 사항) Amazon Cognito 호스팅 UI 건너뛰기

사용자가 앱에 로그인할 때 Amazon Cognito 웹 UI를 건너뛰도록 하려면 엔드포인트 URL로 다음 URL을 사용합니다.

https://YourDomainPrefix.auth.region.amazoncognito.com/oauth2/authorize?response_type=code&identity_provider=oidcProviderName&client_id=yourClientId&redirect_uri=redirectUrl&scope=allowedOauthScopes

설정에 맞게 URL을 사용자 지정하려면 다음 단계를 따릅니다.

  • YourDomainPrefix리전을 사용자 풀의 값으로 바꿉니다. 사용자 풀의 앱 통합 탭에 있는 Amazon Cognito 콘솔에서 이를 찾을 수 있습니다.
  • 이전에 허용된 OAuth 흐름암시적 부여 플로우만 선택했다면 response_type=coderesponse_type=token으로 변경합니다.
  • oidcProviderName을 사용자 풀에 있는 OIDC 제공업체의 이름(예: LinkedIn)으로 바꿉니다.
  • (선택 사항) Identifiers 필드에 OIDC 제공업체의 식별자를 추가한 경우 identity_provider=oidcProviderName**idp_identifier=**idpIdentifier로 바꿉니다. idpIdentifier를 사용자 지정 식별자 문자열로 바꿉니다.
  • yourClientId를 앱 클라이언트의 ID로 바꾸고, redirectUrl를 앱 클라이언트의 콜백 URL로 바꿉니다. 사용자 풀의 앱 통합 탭에 있는 Amazon Cognito 콘솔에서 이를 찾을 수 있습니다.
  • allowedOauthScopes를 사용자의 Amazon Cognito 앱 클라이언트가 요청하려고 하는 특정 범위로 바꿉니다.
AWS 공식
AWS 공식업데이트됨 6달 전