인프라/AWS
AWS S3 URL 다운로드 제한을 IP로 할 수 있을까?
copcat
2023. 3. 26. 22:35
문득 S3 미리 정의된 URL로 다운로드하거나 액세스하는 것을 퍼블릭하게 노출시키지 않는 방법이 뭐가 있을까?고민하다가 IP기반으로 액세스를 허용하고 제한할 수 있을까 하고 간단하게 테스트해본 내용입니다.
테스트를 위해 버킷과 객체를 준비해줍니다.
1. 버킷 생성
2. 객체를 선택하고 미리 서명된 URL 과 공유를 선택합니다.
S3 버킷 정책에 내 IP 만 접근할 수 있도록 버킷정책을 꾸려보자
테스트는 내 현재 IP와 VPN 사용해서 다른 IP를 획득하여 액세스가 가능한지 여부에 대해 확인해볼 예정이다.
3. S3 버킷 정책 설정 - IP
- S3 버킷 정책
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowIPs",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::testforjiwoo/*", # <<< your S3 Bucket
"Condition": {
"IpAddress": {
"aws:SourceIp": [
"210.95.62.154" # <<< your IP
]
}
}
}
]
}
해당 버킷 정책을 저장하고 미리 정의된 URL로 접근해보자
4. TEST
잘 접근되는 모습
써드파티의 툴 VPN을 사용해서 IP를 변환시켜 접근시도해본다.
접근 실패되는 모습
그 외 다른 방법으로 안전하게 S3 액세스하는 방법들이 있다.
참고
https://repost.aws/ko/knowledge-center/block-s3-traffic-vpc-ip
반응형