오브젝트 스토리지 보안조치
오브젝트 스토리지 사용시 별도의 보안조치 없이 특정 파일이나 버킷을 공개(public)으로 사용하는 경우가 많습니다. 해당 정책은 접근을 단순화해 손쉽게 공유할수있음과 동시에 무방비한 보안으로 의도치 않은 데이터 노출이 발생할수 있습니다.
이 글에서는 오브젝트 스토리지의 접근과 제한을 위한 보안조치에 대한 내용을 기술합니다.
접근정책(ACL)
접근정책(ACL)은 오브젝트 저장소 리소스에 대한 엑세스를 정의하는 전통적인 방법입니다.
버킷 또는 특정 오브젝트에 접근정책(ACL)을 적용가능하며 "전체공개" 혹은 "공개 안함" 의 두 가지 일반화된 엑세스 모드가 있습니다.
이와 관련해 iwinv에서는 콘솔페이지에서 버킷에 대한 해당 설정을 제공하며 아래의 링크를 통해 설정가능합니다.
iwinv콘솔에서 접근정책(ACL)설정하기
접근정책(ACL)는 단독으로 사용하면 접근이 모두 허용되거나 차단하는 설정만 사용이 가능한 점이 있습니다.
세부적으로 오브젝트 스토리지를 사용하기 위해서는 버킷정책(Bucket Policy)과 병행하여 사용 하는 것을 권장 합니다
버킷정책(Bucket Policy)
버킷정책(Bucket Policy)은 사용자에게 보다 더 세부적인 제어를 제공합니다.
익명 읽기권한 부여
{
"Statement": [
{
"Sid": "AllowPublicRead",
"Effect": "Allow",
"Principal": "*",
"Action": [
"s3:GetObject"
],
"Resource": [
"arn:aws:s3:::iwinv_bucket/*"
]
}
]
}
업로드 전 암호화
"Condition": {
"StringNotEquals": {
"s3:x-amz-server-side-encryption": "AES256"
}
}
아이피 제한
key관리
Access / Secret Key 주기적 교체
미사용 Key 비활성화
- 기본 Private 유지 / Public 공개주의
- ACL 보다 Bucket Policy 기반 관리
- 인증된 사용자에게만 List Allow / 미인증 List Deny
- 공유가 필요할경우 Presigned URL 사용 (만료시간 최소화)
- 접근허용 아이피 제한
- Referer 제한
허용된 도메인만 접근허용 referer 없는(Direct URL) 요청 차단
- Access / Secret 유출 주의
주기적 교체 사용하지 않는 Key 비활성화
- 민감정보 저장 금지 혹은 암호화
개인정보가 포함된 문서 혹은 이미지 계약서 이미지 등 업로드전 aes256 ZIP 암호화
- 정적 웹호스팅 주의
index.html 및 정적파일(css, js, 이미지)내 내부 API Key, IP등 포함여부