쿠키 기본 설정 선택

당사는 사이트와 서비스를 제공하는 데 필요한 필수 쿠키 및 유사한 도구를 사용합니다. 고객이 사이트를 어떻게 사용하는지 파악하고 개선할 수 있도록 성능 쿠키를 사용해 익명의 통계를 수집합니다. 필수 쿠키는 비활성화할 수 없지만 '사용자 지정' 또는 ‘거부’를 클릭하여 성능 쿠키를 거부할 수 있습니다.

사용자가 동의하는 경우 AWS와 승인된 제3자도 쿠키를 사용하여 유용한 사이트 기능을 제공하고, 사용자의 기본 설정을 기억하고, 관련 광고를 비롯한 관련 콘텐츠를 표시합니다. 필수가 아닌 모든 쿠키를 수락하거나 거부하려면 ‘수락’ 또는 ‘거부’를 클릭하세요. 더 자세한 내용을 선택하려면 ‘사용자 정의’를 클릭하세요.

Amazon Connect를 통한 SAML 문제 해결 - Amazon Connect

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon Connect를 통한 SAML 문제 해결

이 문서에서는 Amazon Connect에서 SAML을 사용할 때 발생하는 가장 일반적인 문제 중 일부를 해결하는 방법에 대해 설명합니다.

Okta, PingIdentify, Azure AD 등과 같은 다른 ID 공급자와의 통합 문제를 해결하는 경우 Amazon Connect SSO 설치 워크숍을 참조하세요.

오류 메시지: 액세스가 거부되었습니다. 계정이 인증되었지만 이 애플리케이션에 온보딩되지 않았습니다.

오류 메시지: 액세스가 거부되었습니다.

이것은 무엇을 의미하나요?

이 오류는 사용자가 SAML을 통해 AWS SAML 로그인 엔드포인트에 성공적으로 인증되었음을 의미합니다. 그러나 사용자는 Amazon Connect 내부에서 매칭되거나 찾을 수 없습니다. 이 메시지는 일반적으로 다음 중 하나를 나타냅니다.

  • Amazon Connect의 사용자 이름이 자격 증명 공급자가 반환한 SAML 응답에 지정된 RoleSessionName SAML 특성과 일치하지 않습니다.

  • 사용자는 Amazon Connect에 존재하지 않습니다.

  • 사용자에게는 SSO를 통해 두 개의 개별 프로필이 할당됩니다.

해결 방법

다음 단계를 사용하여 자격 증명 공급자가 반환하는 SAML 응답에 지정된 RolesSessionName SAML 속성을 확인한 다음 Amazon Connect에서 로그인 이름을 검색하고 비교합니다.

  1. 엔드 투 엔드 로그인 프로세스를 위해 HAR 캡처 (HTTP AR차이브) 를 수행합니다. 이것은 브라우저 측에서 네트워크 요청을 캡처합니다. HAR 파일을 원하는 파일 이름 (예: saml.har) 으로 저장합니다.

    지침은 AWS 지원 사례에 대해 브라우저에서 HAR 파일을 생성하려면 어떻게 해야 합니까?를 참조하세요.

  2. 텍스트 편집기를 사용하여 HAR 파일에서 SAML 응답을 찾습니다. 다음 명령을 실행합니다:

    $ grep -o "SAMLResponse=.*&" azuresaml.har | sed -E 's/SAMLResponse=(.*)&/\1/' > samlresponse.txt

    • 이 HAR 파일에서 SAML 응답을 검색하고 samlresponse.txt 파일에 저장합니다.

    • 응답은 URL로 인코딩되고 내용은 Base64로 인코딩됩니다.

  3. URL 응답을 디코딩 한 다음 타사 도구 또는 간단한 스크립트를 사용하여 Base64 내용을 디코딩합니다. 예시:

    $ cat samlresponse.txt | python3 -c "import sys; from urllib.parse import unquote; print(unquote(sys.stdin.read()));" | base64 --decode > samlresponsedecoded.txt

    이 스크립트는 간단한 python 명령을 사용하여 원래 URL 인코딩 형식에서 SAMLResponse를 디코딩합니다. 그런 다음 Base64에서 응답을 디코딩하고 SAML 응답을 일반 텍스트 형식으로 출력합니다.

  4. 필요한 속성에 대한 디코딩 된 응답을 확인하십시오. 예를 들어 다음 이미지는 확인 방법을 보여 줍니다 RoleSessionName.

    grep 명령은 rolesessionname을 확인합니다.
  5. 이전 단계에서 반환된 사용자 이름이 Amazon Connect 인스턴스에 사용자로 존재하는지 확인합니다.

    $ AWS 연결 목록 사용자 - 인스턴스 ID [인스턴스 ID] | 그렙 $ 사용자 이름

    • 최종 grep이 결과를 반환하지 않으면 사용자가 Amazon Connect 인스턴스에 존재하지 않거나 다른 대/소문자/대문자로 작성되었음을 의미합니다.

    • Amazon Connect 인스턴스에 많은 사용자가 있는 경우 ListUsers API 호출의 응답이 페이지가 매겨질 수 있습니다. API에 의해 NextToken 반환 된 를 사용하여 나머지 사용자를 가져옵니다. 자세한 내용은 ListUsers을참조하십시오.

SAML 응답 예

다음은 샘플 SAML 응답의 이미지입니다. 이 경우 ID 공급자 (IdP) 는 Azure AD (활성 디렉터리) 입니다.

SAML 응답 예.

오류 메시지: 액세스가 거부되었습니다. AWS 계정 관리자에게 문의하여 도움을 받으세요.

오류 메시지: 액세스가 거부되었습니다.

이것은 무엇을 의미하나요?

사용자가 수임한 역할이 SAML을 통해 성공적으로 인증되었습니다. 그러나 역할에는 Amazon Connect에 대한 GetFederationToken API를 호출할 수 있는 권한이 없습니다. 사용자가 SAML을 사용하여 Amazon Connect 인스턴스에 로그인할 수 있도록 이 호출이 필요합니다.

해결 방법

  1. 오류 메시지에 있는 역할에 connect:GetFederationToken 대한 권한이 있는 정책을 연결합니다. 다음은 샘플 정책입니다.

    { "Version": "2012-10-17", "Statement": [{ "Sid": "Statement1", "Effect": "Allow", "Action": "connect:GetFederationToken", "Resource": [ "arn:aws:connect:ap-southeast-2:xxxxxxxxxxxx:instance/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/user/${aws:userid}" ] } ] }
  2. IAM 콘솔을 사용하여 정책을 연결합니다. 또는 첨부 역할 정책 API를 사용합니다. 예를 들면 다음과 같습니다.

    $ aws iam attach-role-policy —role-name [ASSUMED_ROLE] —policy_arn [POLICY_WITH_GETFEDERATIONTOKEN]

오류 메시지: 세션 만료됨

로그인하는 동안 세션 만료됨 메시지가 표시되는 경우 세션 토큰을 새로 고치기만 하면 문제가 해결될 수 있습니다. ID 제공업체로 이동하여 로그인합니다. Amazon Connect 페이지를 새로 고칩니다. 이 메시지가 계속 표시되면 IT 팀에 문의하세요.

프라이버시사이트 이용 약관쿠키 기본 설정
© 2025, Amazon Web Services, Inc. 또는 계열사. All rights reserved.