BLOG

AWS Single Sign-On과 Amazon Connect을 활용한 연동 작업 수행
작성일: 2019년 7월 18일

여러분의 contact 서비스에 SAML 2.0 호환 IdP(자격 증명 공급자)가 없다면, 신규로 새로운 IdP를 설정할 때 많은 노력을 들여야 할 수 있습니다. Amazon Connect싱글 사인온(SSO)을 위한 SAML 2.0 호환 IdP를 지원합니다. AWS SSO를 사용하면 여러 AWS 계정 및 비즈니스 응용 프로그램에 대한 SSO 액세스를 중앙에서 쉽게 관리 할 수 ​​있습니다. 또한 AWS기관의 모든 계정에 대해 SSO 액세스 및 사용자 권한을 중앙 집중식으로 쉽게 관리 할 수 ​​있습니다.

 

이번 포스팅에서는 AWS SSO 및 Amazon Connect를 사용해 SAML 2.0 연동을 수행하는 단계를 보여드리겠습니다. 이렇게 하면 Amazon Connect와 SSO 환경이 단순해집니다.

 

 

솔루션 개요

 

단계는 다음과 같습니다.

  1. SAML 2.0 기반의 인증을 사용하여 Amazon Connect 인스턴스를 생성합니다.
  2. Amazon Connect 인스턴스에 연결할 AWS SSO 애플리케이션을 만듭니다.
  3. IAM ID 공급자, IAM 정책 및 IAM 역할을 만듭니다.
  4. AWS SSO 애플리케이션 구성을 마칩니다.
  5. 사용자를 생성하고 Amazon Connect로 가져옵니다.
  6. Amazon Connect에서 AWS SSO를 사용하여 SSO를 테스트합니다.

 

 

전제 조건

 

위의 단계들을 수행하기 위해선 먼저 다음 과정을 완료해야 합니다.

오늘 다뤄볼 예제에서는 us-east-1 Region을 사용했습니다.

 

 

 

1단계: SAML 2.0 기반 인증을 사용하여 Amazon Connect 인스턴스 생성하기

 

Amazon Connect 콘솔에서 신규 Amazon Connect 인스턴스를 만듭니다. 자세한 내용은 ‘Amazon Connect에서 Identity Management용 SAML 구성하기’를 참고해 주십시오.  아래 2가지 사항을 제외하고는 기본 옵션을 수락해줍니다.

  • 관리자 계정 – 이름은 Connect-Admin입니다.
  • 전화 통신 옵션 – 수신 및 발신 통화 옵션을 모두 선택합니다.

해당 인스턴스 설정은 추후 보기 및 업데이트가 가능합니다.

 

 

 

2단계: Amazon Connect 인스턴스에 연결할 AWS SSO 애플리케이션 만들기

 

 AWS SSO 콘솔에서 Amazon Connect에 대한 새로운 애플리케이션을 만듭니다. 다음 사항을 제외하고는 기본값을 수락해 주십시오.

 

  • Relay state에는 Relay state URL을 추가해 줍니다.
    • https : // region-id .console.aws.amazon.com / connect / federate / instance-id

 

이 단계를 실행하기 위해 Amazon Connect 콘솔을 대상으로 사용하십시오. Relay state에 대한 Amazon CCP(Connect Control Panel) 링크를 지정할 수 있습니다. 더 자세한 내용은 ‘릴레이 상태 URL에서 대상 사용하기’를 참고해 주십시오.

 

리전 ID는 Amazon Connect 인스턴스 ARN의 일부로 포함됩니다. 자세한 내용은 ‘어떻게 Amazon Connect 인스턴스를 찾을 수 있나요?’ 페이지를 확인해 주십시오. ARN 사용에 다시 필요하기 때문에 기억해 두십시오.

 

새로운 IAM IdP를 만들 때 AWS SSO 메타 데이터가 필요합니다. Configuration 탭에서 AWS SSO metadata 아래에 있는 Download metadata file을 선택해 줍니다. 그 후 로컬 컴퓨터에 저장합니다.

 

이 구성은 관련 디렉토리에서 사용자를 인증 할 수 있는 권한을 AWS SSO에 부여해 줍니다. 또한 해당 사용자가 Amazon Connect에 로그인하는 데 사용할 수 있는 SAML 2.0 토큰을 제공합니다.

 

 

 

3단계: IAM IdP, IAM 정책 및 IAM 역할 만들기

 

사용자를 연합하려면 IAM IdP, IAM 정책 및 IAM 역할을 생성해야 합니다. IAM ID 공급자는 AWS SSO를 SAML 2.0 연합에 대한 IdP로 구성하는 데 사용됩니다. IAM 정책 및 역할은 디렉토리 사용자가 IAM 역할을 맡고 Amazon Connect 인스턴스에 액세스하는 데 사용됩니다.

 

IAM 콘솔에서, 공급자 유형의 SAML과 새로운 IdP를 생성합니다. 이름을 Connect-SSO 또는 최대 128자의 영숫자와 ‘._-‘자로 된 다른 이름으로 지정하십시오. 그런 다음 AWS SSO 애플리케이션 메타 데이터를 업로드 해줍니다.

 

보기 방식을 JSON view로 변경 하고 다음 정책 템플릿을 사용하여 IAM 정책을 만드십시오. 이름은 Connect-SSO-Policy로 지정하고, <connect instance ARN>을 Amazon Connect 인스턴스 ARN으로 바꿉니다. GetFederationToken을 사용하면 연동된 사용자가 연동을 위한 토큰을 검색 할 수 있습니다.

Json

{

    “Version”: “2012-10-17”,

    “Statement”: [

        {

            “Sid”: “Statement1”,

            “Effect”: “Allow”,

            “Action”: “connect:GetFederationToken”,

            “Resource”: [

                “<connect instance ARN>”

            ]

        }

    ]

}

 

다음으로 새로 생성된 Amazon Connect 인스턴스에 액세스 할 수 있도록 연동된 사용자에 대한 IAM 역할을 만듭니다. 이것은 사용자가 담당하는 역할입니다. 자세한 내용은 ‘Amazon Connect에서 Identity Management 용 SAML 구성하기’를 참고해 주십시오.

 

다음을 제외하고 기본값을 수락합니다.

  • SAML provider로는 Connect-SSO을 입력합니다. .
  • Allow programmatic and AWS Management Console access을 선택합니다.
  • Policy으로는 Connect-SSO-Policy를 선택합니다.
  • Name으로는 Connect-SSO를 선택합니다.

 

IAM role ARN을 기록해 주십시오. 이는 나중에 AWS SSO 응용 프로그램을 구성할 때 사용됩니다.

arn:aws:iam::<account id without hyphen>:role/Connect-SSO

 

 

 

4단계 : AWS SSO 애플리케이션 구성 완료하기

 

이제 속성값 을 매핑하여 AWS SSO 응용 프로그램 구성을 마칩니다. 다음의 속성 및 값을 추가해 줍니다.

  • 속성: Subject
    • 값: ${user:email}
  • 속성: https://aws.amazon.com/SAML/Attributes/RoleSessionName
    • 값: ${user:email}
  • 속성:  https://aws.amazon.com/SAML/Attributes/Role
    • 값: <IAM role ARN>,<IAM identity provider ARN>
  • 값 예시: arn:aws:iam::123456789012: role/Connect-SSO,arn:aws:iam::123456789012:saml-provider/Connect-SSO

 

이번 포스팅의 경우 이메일 속성을 역할 세션 이름과 Amazon Connect의 사용자 이름으로 사용하겠습니다. AWS SSO의 $ {user : email} 값은 기본적으로 연결된 디렉토리의 $ {dir : windowsUpn}에 매핑됩니다. 자세한 내용은 속성 매핑을 참고해 주십시오.

그 후 사용자 또는 그룹을 애플리케이션에 할당합니다.

 

 

 

5단계: Amazon Connect에 사용자 추가하기

 

AWS SSO 애플리케이션을 구성한 후 Amazon Connect에서 사용자를 추가하십시오. 이때 로그인 이름은 사용자의 윈도우 사용자 이름과 동일해야 합니다. 로그인 이름은 대소 문자를 구분합니다.

 

 

6단계: Amazon Connect에서 AWS SSO를 사용하여 SSO 테스트하기

 

이제 마지막 단계입니다. AWS SSO에 로그인한 후 SAML 2.0 기반 SSO를 통해 Amazon Connect 포털에 대한 액세스를 테스트 할 수 있습니다. AWS SSO에서 Amazon Connect 애플리케이션에 할당한 사용자의 자격 증명으로 로그인합니다.

 

 

 

글을 마치며

 

지금까지 AWS SSO 및 SAML 2.0 연동을 통해 새로 생성된 Amazon Connect 인스턴스에 성공적으로 로그인 해보았습니다. AWS SSO로 등록된 디렉토리에는 더 많은 사용자를 추가하실 수 있습니다.

 

AWS SSO를 사용하면 IdP를 위해 Amazon EC2 인스턴스 또는 서버를 유지 및 관리 할 필요가 없습니다. 이는 모두 AWS에서 관리하기 때문입니다. 그로 인해 또한 Amazon Connect에서 사용자를 쉽게 연결할 수 있습니다.

 

이러한 Amazon Connect 솔루션에 대해 더욱 자세히 알고 싶으시다면 AWS Contact Center 블로그에 방문해 주세요.

 

 

원문 URL: https://aws.amazon.com/ko/blogs/contact-center/enabling-federation-with-aws-single-sign-on-and-amazon-connect/

** 메가존 클라우드 TechBlog는 AWS BLOG 영문 게재글중에서 한국 사용자들에게 유용한 정보 및 콘텐츠를 우선적으로 번역하여 내부 엔지니어 검수를 받아서, 정기적으로 게재하고 있습니다. 추가로 번역및 게재를 희망하는 글에 대해서 관리자에게 메일 또는 SNS 페이지에 댓글을 남겨주시면, 우선적으로 번역해서 전달해드리도록 하겠습니다.