

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

# `AWSSupport-TroubleshootSAMLIssues`
<a name="awssupport-troubleshootsamlissues"></a>

 **설명** 

 **AWSSupport-TroubleshootSAMLIssues ** 자동화 실행서는 Amazon Simple Storage Service(Amazon S3)에 저장된 SAML 응답 파일을 분석하여 SAML(Security Assertion Markup Language) 관련 문제를 진단하는 데 도움이 됩니다. 스키마 확인, 서명 검증, 대상 제한 확인 및 만료 시간 확인을 포함한 포괄적인 검증을 수행합니다. 실행서는 SAML 응답에서 발급자, 어설션, 주체, 조건, 서명 및 속성을 포함한 주요 SAML 요소를 디코딩하고 추출합니다. SAML을 사용하여 IAM 자격 증명 공급자를 통해 AWS 리소스(예: Amazon Connect 또는 Amazon WorkSpaces 애플리케이션)에 액세스하는 환경의 경우 SAML 응답 서명의 인증서가 IAM 자격 증명 공급자에 구성된 인증서와 일치하는지 확인합니다.

 **어떻게 작동하나요?**

 실행서는 다음 단계를 수행합니다.
+ SAML 응답 형식 및 필수 요소를 검증합니다.
+ SAML 응답 구성 요소(발급자, 어설션, 제목, 조건, 서명, 속성)를 디코딩하고 추출합니다.
+ 제공된 경우 IAM 자격 증명 공급자 인증서와 비교하여 디지털 서명을 확인합니다.
+ 대상 제한 및 시간 유효성을 확인합니다.
+ 구문 분석된 SAML 구조 및 검증 결과를 보여주는 자세한 진단 정보를 제공합니다.

 [이 자동화 실행(콘솔)](https://console.aws.amazon.com/systems-manager/automation/execute/AWSSupport-TroubleshootSAMLIssues) 

**문서 유형**

자동화

**소유자**

Amazon

**플랫폼**

/

**필수 IAM 권한**

실행서를 성공적으로 사용하려면 `AutomationAssumeRole` 파라미터에 다음 작업이 필요합니다.
+ `s3:GetBucketLocation`
+ `s3:ListBucket`
+ `s3:GetBucketPublicAccessBlock`
+ `s3:GetAccountPublicAccessBlock`
+ `s3:GetObject`
+ `s3:GetBucketPolicyStatus`
+ `s3:GetEncryptionConfiguration`
+ `s3:GetBucketOwnershipControls`
+ `s3:GetBucketAcl`
+ `s3:GetBucketPolicy`
+ `s3:PutObject`
+ `iam:GetSAMLProvider`
+ `sts:AssumeRole`

정책 예제: 

------
#### [ JSON ]

****  

```
        {
            "Version":"2012-10-17",		 	 	 
            "Statement": [
                {
                    "Action": [
                        "s3:GetBucketLocation",
                        "s3:ListBucket",
                        "s3:GetBucketPublicAccessBlock",
                        "s3:GetAccountPublicAccessBlock",
                        "s3:GetObject",
                        "s3:GetBucketPolicyStatus",
                        "s3:GetEncryptionConfiguration",
                        "s3:GetBucketOwnershipControls",
                        "s3:GetBucketAcl",
                        "s3:GetBucketPolicy",
                        "s3:PutObject",
                        "iam:GetSAMLProvider",
                        "sts:AssumeRole"
                    ],
                    "Resource": "*",
                    "Effect": "Allow"
                }
            ]
        }
```

------

 **지침** 

다음 단계에 따라 자동화를 구성합니다.

1. 이 실행서를 사용하기 전에 Base64-encoded SAML 응답(txt 파일)을 캡처하여 S3 버킷에 저장해야 합니다. SAML 응답 캡처 지침은 [이 문서에서](https://docs.aws.amazon.com//IAM/latest/UserGuide/troubleshoot_saml_view-saml-response.html) 확인할 수 있습니다.

1. Systems Manager[https://console.aws.amazon.com/systems-manager/documents/AWSSupport-TroubleshootSAMLIssues/description](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-TroubleshootSAMLIssues/description)의 문서로 이동합니다.

1. **Execute automation(자동화 실행)**을 선택합니다.

1. 입력 파라미터에 다음을 입력합니다.
   + **AutomationAssumeRole(선택 사항):**
     + 설명: (선택 사항) SSM Automation이 사용자를 대신하여 작업을 수행하도록 허용하는 (IAM) 역할의 AWS Identity and Access Management Amazon 리소스 이름(ARN)입니다. 역할을 지정하지 않은 경우, Systems Manager Automation에서는 이 실행서를 시작하는 사용자의 권한을 사용합니다.
     + 유형: `AWS::IAM::Role::Arn`
   + **InputFileS3URI(필수):**
     + 설명: (필수) SAML 응답 txt 파일의 Amazon Simple Storage Service(Amazon S3) URI(예: s3://bucket-name/path/to/file.txt).
     + 유형: 문자열
     + 패턴 허용: `^s3://[a-z0-9][a-z0-9.-][a-z0-9](/.)?$`
   + **S3OutputPrefix(선택 사항):**
     + 설명: (선택 사항) 분석 출력 파일은 입력 버킷에 'saml\$1analysis\$1<executionID of the runbook>.json' 이름으로 저장됩니다. 특정 접두사가 있는 파일을 출력하려는 경우이 파라미터를 사용할 수 있습니다. 기본값은 'output/'이며,이 경우 결과를 출력하는 파일 URI는 's3://bucket-name/output/saml\$1analysis\$1<executionID of the runbook>.json'이 됩니다.
     + 유형: 문자열
     + 패턴 허용: `^[a-zA-Z0-9+=,.@\\-_/]*/$`
   + **ExpectedAudience(선택 사항):**
     + 설명: (선택 사항) SAML 응답의 예상 대상 값입니다. 지정하지 않으면를 사용합니다`urn:amazon:webservices`. IdP 및 SP 설정에서 특정 대상 값을 구성한 경우 정확한 형식(예: , `urn:amazon:webservices``https://signin.aws.amazon.com/saml`)을 제공하세요.
     + 유형: 문자열
     + 기본값: urn:amazon:webservices
   + **IamIdProviderArn(선택 사항):**
     + 설명: (선택 사항) IAM ID 공급자 엔터티를 사용하여 IdP를 AWS IAM과 직접 연결하는 경우 해당 ARN(예: `arn:aws:iam::<account-id>:saml-provider/<provider-name>`)을 제공하세요.
     + 유형: 문자열
     + 패턴 허용: `^$|^arn:aws:iam::[0-9]{12}:saml-provider/[a-zA-Z0-9_-]+$`
   + **SAMLAuthenticationTime(선택 사항):**
     + 설명: (선택 사항) SAML 인증이 수행된 날짜 및 시간입니다. 시간대는 UTC여야 합니다. YYYY-MM-DDThh:mm:ss 형식이어야 합니다(예: 2025-02-01T10:00:00). 이 파라미터를 제공하지 않으면 현재 타임스탬프에 대해 만료 검사가 수행됩니다.
     + 유형: 문자열
     + 패턴 허용: `^$|^\\d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[12]\\d|3[01])T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$`
   + **S3BucketOwnerRoleArn(선택 사항):**
     + 설명: (선택 사항) Amazon S3 버킷에 액세스하기 위한 IAM 역할 ARN입니다. Amazon S3 버킷 및 계정을 가져올 수 있는 권한이 있는 IAM 역할의 ARN은 퍼블릭 액세스 설정, 버킷 암호화 구성, 버킷 ACLs, 버킷 정책 상태 및 버킷에 객체 업로드를 차단합니다. 이 파라미터를 지정하지 않으면 실행서는 'AutomationAssumeRole'(지정된 경우) 또는이 실행서를 시작하는 사용자('AutomationAssumeRole'이 지정되지 않은 경우)를 사용합니다.
     + 유형: `AWS::IAM::Role::Arn`

1. **실행**을 선택합니다.

1. 자동화가 시작됩니다.

1. 문서는 다음 단계를 수행합니다.
   + **ValidateIAMIDProvider**

     제공된 IAM ID 공급자 ARN이 존재하고 액세스할 수 있는지 확인하여 검증합니다. ARN이 제공되지 않으면 검증을 건너뛰고 단계가 성공적으로 완료됩니다.
   + **CheckS3BucketPublicStatus**

     Amazon S3 버킷이 익명 또는 퍼블릭 읽기 또는 쓰기 액세스 권한을 허용하는지 확인합니다. 버킷이 이러한 권한을 허용하는 경우이 단계에서 자동화가 중지됩니다.
   + **CheckS3ObjectExistence**

     Amazon S3 버킷에 대한 액세스를 검증합니다. 버킷과 객체가 있는지, 자동화에 소스에서 읽고 대상에 쓰는 데 필요한 권한이 있는지 확인합니다.
   + **AnalyzeSAMLResponse**

     검사(스키마 검증, 서명 확인, 대상 검증, 만료 확인)를 수행하여 SAML 응답 파일을 분석합니다. 세부 JSON 보고서를 생성하여 지정된 Amazon S3 위치에 저장합니다.

1. 완료되면 **출력** 섹션에서 실행의 자세한 결과를 검토합니다.
   + **출력** 섹션에는 분석 결과가 설명된 Amazon S3 객체에 대한 정보가 포함되어 있습니다.

1. 분석 결과의 Amazon S3 객체는 다음 정보가 포함된 Json 파일입니다.
   + **validation\$1result**: SAML 응답의 기본 검증 결과를 포함합니다.
     + **saml\$1info**: 발급자, 서명 및 어설션을 포함한 주요 SAML 정보입니다.
     + **schema\$1validation**: SAML 스키마 검증 결과입니다.
   + **verification\$1result**: 보다 자세한 진단 결과를 제공합니다.
     + **서명**: 서명 확인 결과입니다.
     + **audience**: 대상 제한 검증의 결과입니다.
     + **expiration**: 만료 시간 확인 결과입니다.

 **참조** 

Systems Manager Automation
+ [이 자동화 실행(콘솔)](https://console.aws.amazon.com/systems-manager/automation/execute/AWSSupport-TroubleshootSAMLIssues)
+ [자동화 실행](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-working-executing.html)
+ [Automation 설정](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-setup.html)
+ [Support Automation Workflows 랜딩 페이지](https://aws.amazon.com/premiumsupport/technology/saw/)