"S3 버킷에 어떠한 종류의 공개 액세스도 허용하지 않는 것이 좋습니다."
웹 사이트를 호스팅하는 데 사용하는 하나의 버킷에 대해 매우 세분화 된 공개 정책 (s3 : GetObject)을 설정했습니다. Route53은이를 위해 버킷 별칭 지정을 명시 적으로 지원합니다. 이 경고가 중복입니까, 아니면 내가 잘못하고 있습니까?
"S3 버킷에 어떠한 종류의 공개 액세스도 허용하지 않는 것이 좋습니다."
웹 사이트를 호스팅하는 데 사용하는 하나의 버킷에 대해 매우 세분화 된 공개 정책 (s3 : GetObject)을 설정했습니다. Route53은이를 위해 버킷 별칭 지정을 명시 적으로 지원합니다. 이 경고가 중복입니까, 아니면 내가 잘못하고 있습니까?
답변:
당신이 무슨 일을하는지 알고 있다면 예, ( 편집 : 모두 다른 사람을 그 수행에 ... 너무, 액세스), 당신은이 경고를 무시할 수 있습니다.
더 잘 알아야하는 대기업 조차도 실수로 개인 데이터를 퍼블릭 버킷에 배치 했기 때문에 존재 합니다. 또한 콘솔 경고 외에도 버킷을 공개 상태로두면 Amazon에서 헤드 업 이메일을 보냅니다.
Accenture, Verizon, Viacom, Illinois 유권자 정보 및 군사 정보는 S3 사일로를 잘못 구성한 IT 이사회로 인해 온라인에있는 모든 사람에게 실수로 공개 된 것으로 나타났습니다.
만약 당신이 절대적으로, 버킷의 모든 것이 공개되어야 하고 , 아무도 실수로 개인 데이터를 정적 HTML 사이트의 좋은 예라고 여기지 않을 것이라고 100 % 확신한다면 , 그것을 공개적으로 남겨 두십시오.
ceejayoz의 답변 에 나타난 개인 정보 문제 는 유일한 문제는 아닙니다.
S3 버킷에서 객체를 읽는 데는 가격이 있습니다. 이 버킷에서 다운로드 할 때마다 AWS가 요금을 청구합니다. 그리고 트래픽이 많은 경우 (또는 비즈니스를 해치려는 사람이 하루 종일 파일을 많이 다운로드하기 시작하면) 비용이 많이 들게됩니다.
버킷의 파일을 공개적으로 액세스 하려면 S3 버킷을 가리키고 액세스 권한이 부여 된 Cloudfront Distribution을 생성 해야합니다 .
이제 Cloudfront Distribution의 도메인 이름을 사용하여 S3에게 일반 사용자에게 액세스 권한을 부여하지 않고도 파일을 제공 할 수 있습니다.
이 구성에서는 S3 대신 Cloudfront의 데이터 사용량에 대해 비용을 지불합니다. 그리고 볼륨이 높을수록 훨씬 저렴합니다.