DevOps/AWS

S3-VPC-endpoint-접근-제한

xlwdn98767 2023. 6. 10. 01:13
728x90

VPC endpoint


vpc endpoint 사용 시 aws 내부망을 통해 public access point에 접근할 수 있습니다.

Private Connection


EC2 instances가 private subnet에 올라가있고, 인스턴스들이 s3와 상호작용하는 과정이 private해야하고, VPC에서만 접근 가능 하여야할 때 S3 bucket policy를 수정하여 이를 달성할 수 있습니다.

예시 policy는 아래와 같습니다.

{
    "Version": "2012-10-17",
    "Id": "Policy1415115909152",
    "Statement": [
        {
            "Sid": "Access-to-specific-VPCE-only",
            "Principal": "*",
            "Action": "s3:*",
            "Effect": "Deny",
            "Resource": [
                "arn:aws:s3:::exampleBucket",
                "arn:aws:s3:::exampleBucket/*"
             ],
             "Condition": {
                 "StringNotEquals": {
                    "aws:SourceVpce": "vpce-1a2b3c4d"
                }
             }
        }
    ]
}

policy Condition 설정 시에 VPCSourceIp를 사용하여 접근을 제한할 수도 있습니다.(SourceIp 옵션도 존재하지만 해당 옵션은 public IP 대역을 대상으로 제한하므로 VPC CIDR를 제한할 수 없습니다.)