BLOG
IT 리소스에 대한 액세스 보안은 무엇보다 중요합니다. 직원이 사용하는 웹 기반 응용 프로그램의 수가 증가함에 따라 로그인 자격 증명을 기억하기가 어려워집니다. 많은 기업이 리소스에 대한 액세스를 간소화하고 직원의 루틴을 단순화하기 위해 다양한 ID 제공자와 단일 로그인으로 전환했습니다.
Amazon Connect를 사용하면 SAML 2.0 호환 ID 공급자를 사용하여 고객분의 컨택 센터에 대한 자격 증명 액세스를 제공할 수 있습니다.
이 게시물은 Okta를 Amazon Connect의 ID 제공자로 사용하는 데 필요한 단계를 안내합니다.
Okta 는 SAML 2.0 인증을 사용하는 Single Single-On 서비스의 가장 일반적으로 사용되는 공급자 중 하나입니다. Okta를 설정하는 것은 다른 SAML 공급자를 구성하는 것과 거의 동일하지만, 이 게시물에서는 Okta를 사용하는 단계를 구체적으로 설명합니다. 이는 일반 지침인 how to configure SAML for identity management in Amazon Connect을 단순화 합니다.
이 게시물의 사용 목적의 구성사항 :
이 게시물의 단계를 완료하려면 다음이 필요합니다.
- 활성 AWS 계정.
- 새 IAM 역할, 정책 및 사용자를 생성할 수 있는 IAM 권한.
- 새 Amazon Connect 인스턴스를 생성 할 수 있는 IAM 권한.
- Okta 계정. 이 게시물에서는 Okta 개발자 계정을 사용하는 단계를 보여줍니다.
이것은 기능적으로 표준 계정과 다르지 않습니다.
Amazon Connect 인스턴스 생성
Amazon Connect의 경우 인스턴스 생성 시 사용되는 ID 관리 시스템을 정의합니다. 한 번 선택하면 변경할 수 없습니다. 따라서 Okta와 통합하려면 새 Amazon Connect 인스턴스를 생성해야 할 수 있습니다. 이 블로그 게시물의 목적상 Amazon Connect 구성에 대한 대부분의 세부 정보는 설명되지 않습니다. Amazon Connect 인스턴스를 구성하는 방법에 대한 자세한 내용은 Amazon Connect 관리자 안내서 의 Amazon Connect 시작하기 섹션을 참조하십시오.
SAML 2.0 기반 인증을 사용하여 새 Amazon Connect 인스턴스를 생성하기 :
- AWS Management 콘솔에서Amazon Connect 콘솔 을 엽니다 .
- 사용하려는 지역을 선택합니다.
- 다음 중 하나를 수행합니다.
선택한 리전에서 이전에 Amazon Connect 인스턴스를 아직 생성하지 않은 경우 Get Started를 선택합니다 .
이전에 선택한 리전에서 Amazon Connect 인스턴스를 생성한 경우 Add an Instance를 선택합니다.
- 1 단계 : ID 관리에서 SAML 2.0 기반 인증을 선택합니다.
- 액세스 URL에 인스턴스 별칭을 입력하고 다음 단계를 선택합니다
*참고 : 입력한 이름은 AWS Management Console에서 인스턴스 별칭으로 표시되며 Okta를 설정할 때 액세스 URL에서 도메인으로 사용됩니다. 별칭은 전역 적으로 고유해야하며 인스턴스를 만든 후에는 변경할 수 없습니다.
- 2 단계 : 관리자는 인스턴스의 관리자로 사용할 계정의 First Name, Last Name, and Username을 입력하고 다음 단계를 선택합니다. Okta에 이미 존재하는 계정이어야 합니다.
참고 : 입력한 사용자 이름은 대소 문자를 포함하여 Okta의 사용자 이름과 정확히 일치해야 합니다.
- 3 단계 : 전화 통신 옵션에서 기본값을 선택하고 (나중에 변경할 수 있음) Next Step을 선택합니다.
- 4 단계 : 데이터 저장소에서 기본값을 선택한 상태로 유지하고 (나중에 변경할 수 있음) Next Step을선택합니다.
- 5 단계 : 검토 및 생성에서 설정을 검토하고Create instance을선택 합니다 .
인스턴스가 생성된 후Amazon Connect 설명서를 보고 컨택 센터 설정을 완료할 수 있습니다.
이제 Amazon Connect 인스턴스가 생성되었으므로 Okta가 액세스 할 수있는 리소스를 제어하는 AWS Identity and Access Management 정책을 생성합니다.
IAM 정책 생성
SAML 통합이 작동하려면 특정 리소스 및 권한에 대한 액세스 권한을 부여하는 적절한 정책을 만듭니다. 두 개의 필수 정책이 생성됩니다. 첫 번째 정책은 특정 Amazon Connect 인스턴스의 모든 사용자에 대해 연동을 활성화합니다. 두 번째는 Okta가 IAM 역할 및 계정 별칭을 나열하도록 허용합니다.
Amazon Connect Federation 정책을 생성하려면 :
- IAM 콘솔을엽니다 .
- 탐색 창에서Policies를선택합니다 .
- Create policy을선택합니다.
- JSON탭을 선택합니다 .
- 다음 정책을 편집기에 붙여 넣어 기존 콘텐츠를 바꿉니다.
JSON
{
“Version”: “2012-10-17”,
“Statement”: [
{
“Sid”: “Statement1”,
“Effect”: “Allow”,
“Action”: “connect:GetFederationToken”,
“Resource”: [
“**YOUR ARN**/user/${aws:userid}”
]
}
]
}
- ** YOUR ARN **을 인스턴스의 ARN으로 바꿉니다. ARN을 찾으려면 : a. 새 탭을 열고Amazon Connect 콘솔 로 이동합니다. b. 인스턴스 별칭을 선택합니다. c. 인스턴스 ARN의 값을 복사합니다.
- 교체를 확인하고 Review Policy를 선택합니다 .
- 정책 이름을 okta_federation_policy 또는 이와 유사한 이름으로 지정합니다.
- 선택적으로 정책에 대한 설명을 제공합니다.
- Create policy을 선택합니다 .
Okta 액세스 정책을 만들려면 :
- IAM 콘솔을 엽니다 .
- 탐색 창에서 Policies를 선택합니다 .
- Create policy을선택합니다.
- JSON탭을 선택합니다 .
- 다음 정책을 편집기에 붙여 넣어 기존 콘텐츠를 바꿉니다.
content:
JSON
{
“Version”: “2012-10-17”,
“Statement”: [
{
“Effect”: “Allow”,
“Action”: [
“iam:ListRoles”,
“iam:ListAccountAliases”
],
“Resource”: “*”
}
]
}
- 교체를 확인하고 Review Policy를 선택합니다 .
- 정책 이름을 okta_cli_policy 또는 이와 유사한 이름으로 지정합니다.
- 선택적으로 정책에 대한 설명을 제공합니다.
- Create policy을선택합니다 .
정책이 생성되면 AWS 리소스에 프로그래밍 방식으로 액세스 할 수있는 IAM 사용자를 생성합니다. 이렇게하면 Okta가 AWS 계정에서 적절한 리소스를 검색 할 수 있습니다.
사용자를 생성하려면 :
- IAM 콘솔을 엽니다 .
- 탐색 창에서 Users를 선택합니다 .
- Add user를선택합니다 .
- Set user details섹션에서 User name (예 : okta_cli_user)을 제공합니다.
- Select AWS access type섹션에서 Programmatic access를 선택합니다 .
- Next: Permissions을 선택합니다.
- Set permissions섹션에서Attach existing policies directly을 선택 합니다 .
- 검색 필드에okta를입력합니다 . 사용 가능한 정책 필터입니다.
- 이전에 생성 한 정책을 선택합니다.
- Next: Tags를 선택합니다.
- 선택적으로 태그를 추가하고 Next: Review를 선택합니다 .
- Create user을 선택합니다 .
- 성공 페이지에서 사용자 자격 증명이 포함된 credentials.csv 파일을 다운로드합니다.
사용자가 생성되었으므로 Okta에 Amazon Web Services 앱을 추가하고 동시에 IAM 자격 증명 공급자를 구축합니다. 이는 각각이 서로의 정보에 의존하기 때문에 필요합니다. Okta Amazon Web Services 앱으로 시작합니다.
Okta에 Amazon Web Services 애플리케이션을 추가하고 자격 증명 공급자를 생성하려면 :
- Okta 관리자 계정에 로그인합니다.
- 개발자 대시 보드에있는 경우오른쪽 상단의 드롭 다운에서Classic UI를 선택하여 Classic UI로 전환합니다.
- Applications을 선택합니다 .
- Add Application를 선택합니다.
- 검색 창에Amazon Web Services를입력합니다.
- Amazon Web Services 애플리케이션 옆에있는Add를 선택합니다 .
- Application 레이블에Amazon Connect Administrator를입력 합니다 .
- Your AWS Login URL에https://console.aws.amazon.com/을입력 합니다.
- 다른 모든 상자에 대해서는 기본값을 유지하고 Next를 선택합니다 .
- Sign-On Options페이지의 Sign On Methods 섹션에서 SAML 2.0을 선택 합니다 .SAML 2.0 섹션에서Default Relay State에 다음과 같이 URL을 입력합니다.
- https://region-id.console.aws.amazon.com/connect/federate/instance-id region-id를 Amazon Connect 인스턴스를 생성한 리전 이름으로 바꿉니다 (예 : 미국 동부 (버지니아 북부)의 경우 us-east-1). instance-id를 인스턴스의 인스턴스 ID로 바꿉니다.인스턴스 ID를 찾으려면 :
- 새 탭을 열고Amazon Connect 콘솔 로 이동합니다 .
- 인스턴스 별칭을 선택합니다.
- 인스턴스 ID는 인스턴스 ARN에서 마지막 / 이후의 모든 항목입니다. 예를 들면 :
arn : aws : connect : us-west-2 : 123456789 : instance / 00aa11b2-c333-4d55-e6f7-888g9999hh0
- Identity Provider metadata를마우스 오른쪽 단추로 클릭하고 대상 파일을 metadata.xml로 컴퓨터에 저장합니다.
- 이 탭을 닫지 마십시오. 곧 설정을 계속해야합니다.
- 새 탭을 열고 IAM 콘솔로 이동합니다 .
- 탐색 창에서Identity Providers를선택합니다 .
- Create provider을 선택합니다.
- 공급자 유형으로SAML 을 선택 합니다 .
- Provider Name에 Okta_Connect_Admin을 입력 합니다 .
- Metadata Document섹션에서 12 단계에서 저장 한 metadata.xml 문서를 선택합니다.
- Next step를선택합니다 .
- 공급자 정보를 검증하고 Create을 선택합니다 .
- 생성이 완료되면 Okta를 선택 하여 세부 정보를 봅니다.
- Provider ARN을 복사하여 나중에 사용할 수 있도록 텍스트 파일에 붙여 넣습니다.
- IAM 콘솔의 탐색 창에서 Roles을 선택합니다 .
- Create role을선택합니다 .
- SAML 2.0 federation을선택 합니다 .
- SAML provider 섹션에서 Okta_Connect_Admin을 선택 합니다 .
- Allow programmatic and AWS Management Console access를선택합니다 .
- Next: Permissions을선택합니다 .
- 필터 정책에okta를입력 합니다 .
- 이전에 생성한 두 정책을 모두 선택합니다.
- Next: Tags를선택합니다 .
- Next : Review를선택합니다 .
- 역할 이름에 Okta_Role을 입력 합니다 .
- Okta탭으로 돌아갑니다 .
- Advanced Sign-On Settings 섹션에서 복사 한 자격 증명 공급자 ARN을 자격 증명 공급자 ARN 필드에 붙여 넣습니다.
- Done를 선택합니다 .
이제 앱이 빌드되었으므로 AWS에 대한 액세스 권한을 부여하십시오. 이렇게하려면 이전에 다운로드 한 자격 증명 파일이 필요합니다.
Okta에 프로그래밍 방식 액세스를 제공하려면 :
- Okta Administrator에 로그인 한 상태에서Applications를선택합니다 .
- Amazon Connect Administrator를선택합니다 .
- Provisioning을 선택합니다 .
- Configure API Integration을 선택합니다.
- Enable API Integration을선택합니다 .
- Access Key필드에 credentials.csv 파일에서 액세스 키를 붙여 넣습니다.
- Secret Key필드에 credentials.csv 파일에서 비밀 키를 붙여 넣습니다.
- Test API Credentials를선택합니다 .
- 자격 증명이 성공적으로 확인되면 Save을 선택합니다 .
- To App을 선택합니다 .
- Edit을 선택합니다 .
- Create Users를 활성화 합니다.
- Save를 클릭합니다.
- 페이지가 새로 고쳐지면 페이지 하단으로 스크롤하여 Amazon Connect Administrator Attribute Mappings으로 이동합니다. 속성 목록이 표시되어야합니다.
Okta에 프로그래밍 방식 액세스를 제공하면 응용 프로그램을 사용자에게 할당 할 준비가 된 것입니다. Okta 관리자에서 이것을 완료하십시오.
관리자에게 새 애플리케이션을 할당하려면 :
- Okta Administrator에 로그인 한 상태에서Directory를선택합니다 .
- Amazon Connect 인스턴스를 구축 할 때 구성한 관리자를 선택합니다.
- Assign Applications를선택합니다 .
- Amazon Connect 관리자 옆에 있는Assign을 선택 합니다 .
- Role 드롭 다운에서 Okta_Role을선택합니다 .
- SAML User Role의 Okta_Role을 선택합니다 .
- Save and Go Back를선택합니다 .
- Done을 선택합니다 .
응용 프로그램을 테스트하려면 :
- 구성된 Amazon Connect 관리자로 Okta에 로그인합니다.
- Amazon Connect Administrator를 선택합니다 .
- 새 탭이 열립니다. 인증을 수행한 다음 Amazon Connect로 리디렉션합니다.
- 이제 관리자로 Amazon Connect에 로그인 해야합니다.
이제 Okta의 SAML 인증을 사용하여 Amazon Connect에 로그인하는 Amazon Connect 관리자 앱이 있습니다. Amazon Connect CCP (Contact Control Panel)를 시작하는 두 번째 애플리케이션을 빌드하려면 Amazon Connect 인스턴스 생성을 포함하지 않고 동일한 단계를 많이 수행합니다.
요약하자면:
- Okta에서 새 응용 프로그램을 만듭니다.
- IAM에서 새 자격 증명 공급자를 생성합니다.
- 새 자격 증명 공급자를 사용하는 새 IAM 역할을 생성합니다.
- 특히 다음 예제를 사용하여 CCP를 가리키는 수정된 릴레이 URL을 사용하여 애플리케이션 설정을 완료합니다.
https://us-east-1.console.aws.amazon.com/connect/federate/instance-id?destination=%2Fconnect%2Fccp
- 앱에 대한 API 액세스를 구성합니다.
- 프로비저닝을 활성화합니다.
- 사용자에게 앱을 할당합니다.
- Amazon Connect에서 에이전트 사용자를 생성합니다.
*참고 : 입력 한 사용자 이름이 대소 문자 구분을 포함하여 Okta의 사용자 이름과 정확히 일치하는 것이 중요합니다.
작동 방식
Okta와 같은 연동 애플리케이션을 사용하면 사용자가 적절한 자격 증명, 권한 및 보안 제어를 사용하여 Amazon Connect를 탐색하고 로그인 할 수 있습니다.
SAML 요청은 다음 단계를 거칩니다.
- 사용자는 Okta 앱을 시작하거나 Okta가 생성 한 URL로 이동합니다.
- Okta가 조직의 ID 저장소에서 인증을 요청합니다.
- ID 저장소가 사용자를 인증하고 인증 응답을 페더레이션 서비스에 반환합니다.
- 인증이 성공하면 페더레이션 서비스가 사용자의 브라우저에 SAML 어설 션을 게시합니다.
- 사용자의 브라우저가 SAML 어설 션을 AWS 로그인 SAML 엔드 포인트 (https://signin.aws.amazon.com/saml)에 게시합니다. AWS 로그인은 SAML 요청을 수신하고, 요청을 처리하고, 사용자를 인증하고, 인증 토큰을 Amazon Connect로 전달합니다.
- AWS의 인증 토큰을 사용하여 Amazon Connect는 사용자에게 권한을 부여하고 브라우저에서 Amazon Connect를 엽니다.
결론
이 게시물은 Okta 앱의 생성 및 구성, AWS 자격 증명 공급자 및 Amazon Connect의 구성을 안내했습니다. 이를 통해 회사의 사용자와 관리자는 Okta 인터페이스를 통해 친숙하고 안전한 프로세스를 사용하여 Amazon Connect에 로그인 할 수 있습니다.
Okta 이외의 SSO 제품을 사용하는 경우 동일한 보안 주체 및 AWS 구성이 적용되지만 SSO 애플리케이션의 구성은 애플리케이션에 따라 다릅니다.
Amazon Connect Single Sign 구성에 대한 자세한 내용은 Amazon Connect 에서 ID 관리를위한 SAML 구성 단원을 참조 하십시오 . Amazon Connect에 대한 자세한 내용은 Amazon Connect 설명서를 참조하십시오 .
태그 : Amazon Connect , Contact Center , Okta , Single Sign-on , SSO
메가존 클라우드는 AWS Connect 서비스에 관련된 영문 게재 글이나 기사 중에서 한국 사용자들에게 유용한 정보 및 콘텐츠를 우선적으로 번역하여 내부 엔지니어 검수를 받아 정기적으로 게재하고 있습니다. 추가로 번역 및 게재를 희망하는 글에 대해서 관리자에게 메일 또는 SNS 페이지에 댓글을 남겨주시면, 우선적으로 번역해서 전달해드리도록 하겠습니다.