기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
AWSSupport-TroubleshootS3PublicRead
설명
AWSSupport-TroubleshootS3PublicRead
실행서는 S3BucketName
파라미터에서 지정하는 Amazon Simple Storage Service(Amazon S3) 버킷에서 객체를 읽는 데 발생하는 문제를 진단합니다. 또한 S3 버킷의 객체에 대한 설정 하위군도 분석됩니다.
제한 사항
-
이 자동화는 객체에 대한 퍼블릭 액세스를 허용하는 액세스 포인트를 확인하지 않습니다.
-
이 자동화는 S3 버킷 정책의 조건 키를 평가하지 않습니다.
-
를 사용하는 경우 AWS Organizations이 자동화는 서비스 제어 정책을 평가하여 Amazon S3에 대한 액세스가 허용되는지 확인하지 않습니다.
문서 유형
자동화
소유자
Amazon
플랫폼
Linux,macOS, Windows
Parameters
-
AutomationAssumeRole
유형: 문자열
설명: (선택 사항) Systems Manager Automation이 사용자를 대신하여 작업을 수행할 수 있도록 허용하는 (ARN) 역할의 AWS Identity and Access Management Amazon 리소스 이름(IAM)입니다. 역할을 지정하지 않은 경우, Systems Manager Automation에서는 이 실행서를 시작하는 사용자의 권한을 사용합니다.
-
CloudWatchLogGroupName
유형: 문자열
설명: (선택 사항) 자동화 출력을 보내려는 Amazon CloudWatch Logs 로그 그룹입니다. 지정하는 값과 일치하는 로그 그룹을 찾을 수 없는 경우, 자동화는 이 파라미터 값을 사용하여 로그 그룹을 생성합니다. 이 자동화로 생성된 로그 그룹의 보존 기간은 14일입니다.
-
CloudWatchLogStreamName
유형: 문자열
설명: (선택 사항) 자동화 출력을 보내려는 로그 스트림 CloudWatch 입니다. 지정하는 값과 일치하는 로그 스트림을 찾을 수 없는 경우, 자동화는 이 파라미터 값을 사용하여 로그 스트림을 생성합니다. 이 파라미터의 값을 지정하지 않으면, 자동화에서는 로그 스트림 이름으로
ExecutionId
(을)를 사용합니다. -
HttpGet
타입: 부울
유효한 값: true | false
기본값: true
설명: (선택 사항) 이 파라미터를
true
로 설정하면 자동화는S3BucketName
지정한 의 객체에 부분 HTTP 요청을 합니다. 범위 HTTP 헤더를 사용하여 객체의 첫 번째 바이트만 반환됩니다. -
IgnoreBlockPublicAccess
타입: 부울
유효한 값: true | false
기본값: false
설명: (선택 사항) 이 파라미터를
true
로 설정하면, 자동화가S3BucketName
파라미터에서 지정하는 S3 버킷의 퍼블릭 액세스 차단 설정을 무시합니다. 기본값의 이 파라미터를 변경하지 않는 것이 좋습니다. -
MaxObjects
유형: 정수
유효한 값: 1-25
기본값: 5
설명: (선택 사항)
S3BucketName
파라미터에서 지정하는 S3 버킷에서 분석할 객체 수입니다. -
S3BucketName
유형: 문자열
설명: (필수) 문제를 해결할 S3 버킷의 이름입니다.
-
S3PrefixName
유형: 문자열
설명: (선택 사항) S3 버킷에서 분석하려는 객체의 키 이름 접두사입니다. 자세한 내용은 Amazon Simple Storage Service 사용 설명서의 객체 키를 참조하세요.
-
StartAfter
유형: 문자열
설명: (선택 사항) 자동화를 통해 S3 버킷의 객체 분석을 시작하려는 객체 키 이름입니다.
-
ResourcePartition
유형: 문자열
유효한 값:
aws
|aws-us-gov
|aws-cn
기본값:
aws
설명: (필수) S3 버킷이 위치한 파티션입니다.
-
상세 표시
타입: 부울
유효한 값: true | false
기본값: false
설명: (선택 사항) 자동화 중에 더 자세한 정보를 반환하려면, 이 파라미터를
true
로 설정합니다. 파라미터가false
로 설정된 경우 경고 및 오류 메시지만 반환됩니다.
필수 IAM 권한
실행서를 성공적으로 사용하려면 AutomationAssumeRole
파라미터에 다음 작업이 필요합니다.
logs:CreateLogGroup
, logs:CreateLogStream
및 logs:PutLogEvents
권한은 자동화가 로그 데이터를 CloudWatch 로그로 전송하도록 하려는 경우에만 필요합니다.
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "iam:SimulateCustomPolicy", "iam:GetContextKeysForCustomPolicy", "s3:ListAllMyBuckets", "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:PutRetentionPolicy", "s3:GetAccountPublicAccessBlock" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "s3:GetObject", "s3:GetObjectAcl", "s3:GetObjectTagging" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket1/*", "Effect": "Allow" }, { "Action": [ "s3:ListBucket", "s3:GetBucketLocation", "s3:GetBucketPublicAccessBlock", "s3:GetBucketRequestPayment", "s3:GetBucketPolicyStatus", "s3:GetBucketPolicy", "s3:GetBucketAcl" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket1", "Effect": "Allow" } ] }
문서 단계
-
aws:assertAwsResourceProperty
- S3 버킷이 존재하고 액세스할 수 있는지 확인합니다. -
aws:executeScript
- S3 버킷 위치와 표준 사용자 ID를 반환합니다. -
aws:executeScript
- 계정 및 S3 버킷의 퍼블릭 액세스 차단 설정을 반환합니다. -
aws:assertAwsResourceProperty
- S3 버킷 지급인이BucketOwner
(으)로 설정되었는지 확인합니다. S3 버킷에서Requester Pays
가 활성화된 경우 자동화가 종료됩니다. -
aws:executeScript
- S3 버킷 정책 상태를 반환하고 퍼블릭으로 간주할지 여부를 결정합니다. 퍼블릭 S3 버킷에 대한 자세한 내용은 Amazon Simple Storage Service 사용 설명서에서 “퍼블릭”의 의미를 참조하세요. -
aws:executeAwsApi
- S3 버킷 정책을 반환합니다. -
aws:executeAwsApi
- S3 버킷 정책에 있는 모든 컨텍스트 키를 반환합니다. -
aws:assertAwsResourceProperty
-GetObject
API 작업에 대한 S3 버킷 정책에 명시적 거부가 있는지 확인합니다. -
aws:executeAwsApi
- S3 버킷에 대한 액세스 제어 목록(ACL)을 반환합니다. -
aws:executeScript
-CloudWatchLogGroupName
파라미터 값을 지정하는 경우 CloudWatch 로그 로그 그룹 및 로그 스트림을 생성합니다. -
aws:executeScript
- 실행서 입력 파라미터에서 지정하는 값을 기반으로 자동화 중에 수집된 S3 버킷 설정이 퍼블릭의 객체 액세스를 방해하는지 여부를 평가합니다. 이 스크립트는 다음 기능을 수행합니다.-
퍼블릭 액세스 차단 설정을 평가합니다.
-
MaxObjects
,S3PrefixName
,StartAfter
파라미터에서 지정하는 값을 기반으로 S3 버킷에서 객체를 반환합니다. -
S3 버킷 정책을 반환하여 S3 버킷에서 반환된 객체에 대한 사용자 지정 IAM 정책을 시뮬레이션합니다.
-
HttpGet
파라미터가true
로 설정된 경우 반환HTTP된 객체에 대한 부분 요청을 수행합니다. 범위 HTTP 헤더를 사용하여 객체의 첫 번째 바이트만 반환됩니다. -
반환된 객체의 키 이름을 검사하여 마침표가 한 개 또는 두 개로 끝나는지 확인합니다. 기간으로 끝나는 객체 키 이름은 Amazon S3 콘솔에서 다운로드할 수 없습니다.
-
반환된 객체의 소유자가 S3 버킷의 소유자와 일치하는지 확인합니다.
-
객체가 익명 사용자에게 권한
READ
또는FULL_CONTROL
권한을 ACL 부여하는지 확인합니다. -
객체와 연결된 태그를 반환합니다.
-
시뮬레이션된 IAM 정책을 사용하여
GetObject
API 작업에 대한 S3 버킷 정책에서 이 객체에 대한 명시적 거부가 있는지 확인합니다. -
객체의 메타데이터를 반환하여 스토리지 클래스가 지원되는지 확인합니다.
-
객체의 서버 측 암호화 설정을 확인하여 AWS Key Management Service (AWS KMS) 고객 관리형 키를 사용하여 객체가 암호화되었는지 확인합니다.
-
출력
AnalyzeObjects.bucket
AnalyzeObjects.object