AWS CloudFormation에서 Amazon S3의 블록 퍼블릭 액세스를 설정하는 데 필요한 권한 설정
8788 단어 CloudFormationS3AWS
S3의 블록 퍼블릭 액세스에 관해서는 아래가 참고가 됩니다.
Amazon S3 Block Public Access – 계정 및 버킷 추가 보호 | Amazon Web Services 블로그
htps : // 아 ws. 아마존. 코 m / jp / b ぉ gs / 네 ws / 아마 존 - s 3 - b ぉ CK 푸 b ぃ c - 어서 s - r r r 아코 응 ts
S3 공개 액세스 설정 사용해보기 - Qiita
htps : // 이 m / at mjp / ms / cb6 ~ df5 3df4 ~ bf5 4 ~ 7
절차
템플릿 준비
이런 느낌의 템플릿을 준비합니다.
PublicAccessBlockConfiguration
에서 블록 공용 액세스를 설정합니다.※
BucketName
는 임의로 지정해 주십시오.template.yaml
AWSTemplateFormatVersion: "2010-09-09"
Resources:
PublicAccessBlockTestBucket:
Type: AWS::S3::Bucket
Properties:
BucketName: "kai-public-access-block-test"
PublicAccessBlockConfiguration:
BlockPublicAcls: True
BlockPublicPolicy: True
IgnorePublicAcls: True
RestrictPublicBuckets: True
AWS Management Console이라면 이런 화면에서 설정합니다.
AWS 사용자 생성
CFn에서 스택을 생성하고 리소스를 관리하는 데 사용하는 AWS 사용자를 생성하여 인라인 정책에서 최소한의 권한을 부여합니다.
인라인 정책
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"cloudformation:CreateStack",
"cloudformation:DeleteStack",
"s3:CreateBucket",
"s3:DeleteBucket"
],
"Resource": "*"
}
]
}
스택 만들기
블록 퍼블릭 액세스를 설정하기 위한 Action은 처음 모르기 때문에 지정하지 않고 CFn에서 스택을 작성해 보았습니다.
> aws cloudformation create-stack \
--template-body file://template.yaml \
--stack-name kai-public-access-block-test \
--profile public-access-block-test
그러면
API: s3:PutPublicAccessBlock Access Denied
라는 오류가 발생했으므로 인라인 정책의 Action에 s3:PutPublicAccessBlock
를 지정해 보면. . .식별되지 않는 액션이 되었습니다(´・ω・`)
왜-? CFn 씨가 거짓말하고 있는 거야?
올바른 지정 방법을 조사해 보았습니다.
조사해 보면
s3:PutBucketPublicAccessBlock
가 올바른 것 같습니다.Amazon S3 블록 퍼블릭 액세스 사용 - Amazon Simple Storage Service
htps : // / cs. 아 ws. 아마존. 이 m / 그럼 _ jp / 아마 존 S3 / ㅁ st /에서 v / 어쩌다 s - t t lob ぉ CK 푸 b ぃ c 어세 s. HTML
인라인 정책
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"cloudformation:CreateStack",
"cloudformation:DeleteStack",
"s3:CreateBucket",
"s3:DeleteBucket",
"s3:PutBucketPublicAccessBlock"
],
"Resource": "*"
}
]
}
인라인 정책에
s3:PutBucketPublicAccessBlock
를 추가하여 스택을 만들면 S3 버킷의 블록 공용 액세스를 성공적으로 설정할 수 있습니다.참고
Amazon S3 Block Public Access – 계정 및 버킷 추가 보호 | Amazon Web Services 블로그
htps : // 아 ws. 아마존. 코 m / jp / b ぉ gs / 네 ws / 아마 존 - s 3 - b ぉ CK 푸 b ぃ c - 어서 s - r r r 아코 응 ts
S3 공개 액세스 설정 사용해보기 - Qiita
htps : // 이 m / at mjp / ms / cb6 ~ df5 3 df4 ~ bf5 4 ~ 7
Amazon S3 블록 퍼블릭 액세스 사용 - Amazon Simple Storage Service
htps : // / cs. 아 ws. 아마존. 이 m / 그럼 _ jp / 아마 존 S3 / ㅁ st /에서 v / 어쩌다 s - t t lob ぉ CK 푸 b ぃ c 어세 s. HTML
Reference
이 문제에 관하여(AWS CloudFormation에서 Amazon S3의 블록 퍼블릭 액세스를 설정하는 데 필요한 권한 설정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/kai_kou/items/c1ba36aaa3d05f1206f2텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)