- 인쇄
- PDF
버킷 사용
- 인쇄
- PDF
Classic/VPC 환경에서 이용 가능합니다.
버킷은 객체를 저장하는 공간이며, Object Storage를 이용하려면 하나 이상의 버킷이 생성되어야 합니다. 네이버 클라우드 플랫폼 콘솔에서 버킷을 쉽게 생성하고 편하게 관리할 수 있습니다.
버킷 생성
Object Storage 이용 신청을 완료한 상태에서 버킷을 생성하는 방법은 다음과 같습니다.
- 네이버 클라우드 플랫폼 콘솔에서 Services > Storage > Object Storage 메뉴를 차례대로 클릭해 주십시오.
- [버킷 생성] 버튼을 클릭해 주십시오.
- 생성할 버킷의 이름을 입력하고 [다음] 버튼을 클릭해 주십시오.
- 첫 문자와 끝 문자는 알파벳 소문자 또는 숫자만 허용하며, 3자~ 63자 이내로 입력해 주십시오.
- 마침표(.)와 하이픈(-)은 허용되지만, IP 주소 형태의 이름은 허용하지 않습니다.
- 버킷 생성 후에는 이름을 변경할 수 없습니다. 버킷 이름은 객체 도메인 생성 시 활용되므로 신중하게 선택해 주십시오.
- 리전 내에 동일한 버킷 이름이 있을 경우 등록되지 않습니다. 등록할 버킷의 고유한 이름을 입력해 주십시오.
- (일본 리전만 해당) 필요 시 버킷 버전 관리 여부를 선택해 주십시오.
- 버킷 버전 관리 기능은 활성화 이후 다시 비활성화 할 수 없습니다.
- 버킷 잠금 기능을 사용하지 않을 경우 버전 관리 기능은 일시 정지할 수 있습니다. (객체 버전 생성 일시 중지)
- 필요 시 버킷의 잠금 여부를 선택해 주십시오.
- 일본 외 리전(한국, 미국서부, 싱가포르, 독일)
- 버킷을 잠그면 설정한 기간 동안 객체가 변경되거나 삭제되지 않으며, 중도 해지 및 회원 탈퇴도 불가하므로 신중하게 선택해 주십시오.
- 잠금 해제가 기본으로 설정되어 있습니다. 개인 고객의 경우 버킷 잠금을 설정하려면 고객 문의를 통해 별도로 신청해 주십시오.
- 잠금을 활성화한 경우 다음의 내용을 설정해 주십시오.
- 최대 보존 기간: 버킷이 허용하는 최대 보존 기간으로 0일~365일 이내로 설정 가능
- 기본 보존 기간: 버킷에 객체가 저장될 때 적용되는 기본 보존 기간으로 0일~365일 이내로 설정 가능
- 추후 객체 저장 시 파일별로 보존 기간 설정 가능
- 일본 리전
- 객체 잠금은 버전이 지정된 버킷에서만 작동합니다. 객체 잠금을 활성화하면 버킷 버전 관리가 자동으로 활성화됩니다.
- 버킷 잠금 설정을 하면 객체의 보존기간을 지정할 수 있습니다. 보존기간이 지정된 객체는 설정한 기간 동안 해당 버전 객체가 변경되거나 삭제되지 않으며, 중도 해지 및 회원 탈퇴도 불가하므로 신중하게 선택해 주십시오.
- 잠금을 활성화한 경우 다음의 내용을 설정해 주십시오.
- 보존 모드 선택 : 다음의 2가지 모드 중에서 선택 가능
- 거버넌스 모드 : NCP_OBJECT_STORAGE_MANAGER 또는 Change/ * 권한이 있는 사용자는 보존 기간 동안 보호된 객체 버전을 덮어쓰거나 삭제 가능
- 규정 준수 모드 : 어떤 사용자도 보존 기간 동안 보호된 객체 버전을 덮어쓰거나 삭제 불가
- 기본 보존 기간: 버킷에 객체가 저장될 때 적용되는 기본 보존 기간으로, 1일~365일 이내로 설정 가능 (API 사용 시 더 길게 기한 설정 가능)
- 추후 객체 저장 시 파일별로 보존 기간 설정 가능
- 보존 모드 선택 : 다음의 2가지 모드 중에서 선택 가능
- 일본 외 리전(한국, 미국서부, 싱가포르, 독일)
- 필요시 버킷의 암호화 설정 여부를 선택해 주십시오. (일본리전 미제공)
- 암호화 설정에 대한 자세한 내용은 암호화 설정(KMS)을 참조해 주십시오.
- 암호화 해제가 기본으로 설정되어 있습니다.
- 암호화를 활성화한 경우, 암호화 키 관리 방법 및 암호화 키를 선택해 주십시오.
- NCP 관리형 키: NCP에서 관리하는 키
- KMS 마스터 키: Key Management Service에서 생성한 AES256 또는 RSA-2048 유형 사용 가능. 단, 수렴 암호화를 선택한 AES256 키는 설정 불가
- (일본 리전만 해당) 가용존 관리의 존 설정을 선택해 주십시오.
- Single-zone : JP4, JP5 Zone을 선택할 수 있으며 선택한 Zone에 데이터가 저장됩니다.
- Multi-zone : JP4, JP5 Zone에 데이터가 분산되어 저장됩니다. Single-zone 대비 높은 가용성을 제공합니다.
- Single-zone, Multi-zone은 요금이 다르며 요금은 요금 안내 페이지을 참조해 주십시오.
- [다음] 버튼을 클릭해 주십시오.
- 버킷의 공개 여부를 선택해 주십시오.
- 공개 선택 시 버킷에 저장된 폴더/파일 목록이 공개되며, 각 파일에 대한 공개 여부는 파일 업로드 시 설정할 수 있습니다.
- 필요 시 다른 계정에 버킷 이용 권한을 부여하고, [다음] 버튼을 클릭해 주십시오.
- Object Storage 이용 신청을 완료한 계정만 추가할 수 있습니다.
- 버킷에 대한 목록 조회, 파일 업로드, ACL(접근 허용 계정 목록) 조회 및 수정 권한 중에서 선택적으로 부여할 수 있습니다.
- 입력한 정보를 확인한 후 [버킷 생성] 버튼을 클릭해 주십시오.
암호화 설정(KMS)
버킷의 암호화를 설정하면 네이버 클라우드 플랫폼의 Key Management Service와 연동하여 버킷에 대한 접근을 제어하고 저장된 객체를 보호할 수 있습니다.
암호화를 한번 설정한 후에는 해제할 수 없으며, 암호화를 설정하면 다음의 기능을 사용할 수 없습니다.
- 잠금 설정
- 정적 웹 사이트 호스팅
- 공개 여부 설정
- 타 계정 권한 부여
- 수명 주기 정책(Lifecycle Management) 설정
- KMS 암호화 기능은 일본 리전에는 제공되지 않으며 추후 제공예정입니다.
- API 또는 CLI에서는 암호화 설정이 적용된 버킷을 사용만 가능합니다.
- 암호화 설정이 적용된 버킷은 콘솔에서만 생성할 수 있습니다.
- 암호화 설정이 적용된 버킷의 객체에 대한 기능을 수행할 경우 메인 계정의 API Key는 사용할 수 없습니다. 서브 계정을 새로 생성하거나 이미 존재하는 서브 계정의 API Key를 사용해야 합니다.
버킷 관리
생성한 버킷을 사용하다 보면 생성 당시 설정했던 버킷 옵션을 변경해야 하는 상황이 발생할 수 있습니다. Object Storage에서는 이미 생성한 버킷의 설정을 간단하게 변경할 수 있도록 지원하고 있습니다.
생성하여 사용 중인 버킷을 관리하는 방법은 다음과 같습니다.
네이버 클라우드 플랫폼 콘솔에서 Services > Storage > Object Storage 메뉴를 차례대로 클릭해 주십시오.
버킷 이름 옆에 있는 에 마우스 커서를 올려 주십시오.
필요한 관리를 클릭해 주십시오.
- 버킷 정보
- 버킷 삭제
- 버킷 삭제 취소
- 접근 제어(VPC)
- 권한 관리
- 로그 관리
- 버킷버전관리 (일본 리전만 제공)
- 잠금 관리
- 정적 웹 사이트 호스팅
- 이벤트 관리 (일본 리전은 추후 제공)
참고리전 또는 플랫폼에 따라 목록에 일부 항목이 표시되지 않을 수 있습니다.
버킷 정보
버킷 정보 화면이 나타나면 버킷의 상세 정보를 확인하거나 기능 버튼을 통해 버킷을 설정할 수 있습니다.
사용할 수 있는 기능과 목록에 표시되는 정보는 다음과 같습니다.
항목 | 설명 |
---|---|
기능 버튼 |
|
버킷 목록 | 버킷을 선택해 상세 정보를 확인하고 각 영역에서 을 클릭해 설정 변경
|
버킷 삭제
생성한 버킷을 삭제하는 방법은 다음과 같습니다.
- 버킷이 다른 서비스와 연동된 경우, 버킷 삭제 팝업 창에 연동 서비스 목록이 표시됩니다. 연동된 서비스를 확인하고 계속 진행하려면 [다음] 버튼을 클릭해 주십시오.
- 삭제하려는 버킷의 이름을 입력하고 [확인] 버튼을 클릭해 주십시오.
- 삭제 팝업 창에서 작업이 완료됨을 확인하고 창을 닫아 주십시오.
모든 버킷을 삭제한 후에는 Object Storage 이용을 해지할 수 있습니다.
버킷 삭제 취소
버킷 삭제가 실행되면 버킷 삭제 취소 메뉴가 활성화되어 삭제를 취소할 수 있습니다.
버킷 삭제를 취소하려면, 버킷 삭제 취소 팝업 창에서 [저장] 버튼을 클릭해 주십시오.
접근 제어(VPC)
VPC 환경에서 Object Storage를 사용할 경우 특정 서버에서만 버킷에 접근할 수 있도록 설정할 수 있습니다. 설정하는 방법은 다음과 같습니다.
- 접근 제어 팝업 창이 나타나면 접근 제어 설정 항목의 을 클릭하여 기능을 활성화해 주십시오.
- VPC 서버 목록에 표시된 서버 중 접근을 허용할 서버를 선택하고 을 클릭해 주십시오.
- 선택된 서버가 ACL 설정 정보 목록으로 이동합니다.
- 선택을 취소하려면 을 클릭해 주십시오.
- 본인 소유의 VPC 내 서버를 설정할 수 있습니다.
- 서버 선택을 완료했다면 [확인] 버튼을 클릭해 주십시오.
- 접근이 허용된 서버 목록은 > 버킷 정보 메뉴에서 확인할 수 있습니다.
- 접근 제어를 적용한 버킷은 CDN+와 Global CDN을 이용할 수 없습니다.
- 접근 제어를 적용한 버킷과 VPC 서버의 통신은 사설 도메인인 kr.object.private.ncloudstorage.com을 통해 가능합니다.
권한 관리
버킷을 전 세계에 공개할 수 있고, 네이버 클라우드 플랫폼의 다른 사용자에게 버킷의 이용 권한을 부여할 수 있습니다. 설정하는 방법은 다음과 같습니다.
- 권한 관리 팝업 창이 나타나면 공개 관리 항목에서 공개 여부를 선택해 주십시오.
- 공개 안함: 버킷 내 폴더/파일 목록 비공개
- 공개: 전 세계 누구에게나 버킷에 저장된 폴더/파일 목록 공개. 각 파일에 대한 공개 여부는 파일 업로드 시 설정.
- 다른 계정 권한 항목에서 이용 권한을 부여할 계정을 입력하고 권한을 선택한 후, [추가] 버튼을 클릭해 주십시오.
- Object Storage 이용 신청을 완료한 계정만 추가할 수 있습니다.
- 버킷에 대한 목록 조회, 파일 업로드, ACL(접근 허용 계정 목록) 조회 및 수정 권한 중에서 선택적으로 부여할 수 있습니다.
- [확인] 버튼을 클릭해 주십시오.
로그 관리
버킷의 접근 로그 관리를 통해 버킷에 접근한 요청 이력을 저장할 수 있습니다.
접근 로그 관리를 설정하는 방법은 다음과 같습니다.
- 일본 외 리전
접근 로그 관리를 설정하면 매시간 25~55분에 이전 1시간 동안의 로그가 생성됩니다.(<예시> 17시 00분 00초~17시 59분 59초의 로그는 18시 25~55분에 생성) 접근 로그 관리를 설정하는 방법은 다음과 같습니다.- 로그 관리 팝업 창이 나타나면 로그를 저장할 버킷을 선택하고 버킷에 저장될 접근 로그의 접두어(prefix)를 입력한 후 [추가] 버튼을 클릭해 주십시오.
- 본인 소유의 버킷에만 설정할 수 있습니다.
- 한 버킷에 하나의 접두어(prefix)만 설정할 수 있습니다.
- 한 버킷에 여러개의 저장 버킷을 설정할 수 있습니다.
- 접두어(prefix) 입력을 취소하려면 [삭제] 버튼을 클릭해 주십시오.
- [확인] 버튼을 클릭해 주십시오.
- 접근 로그 설정 내역은 > 버킷 정보 메뉴에서 확인할 수 있습니다.
- 로그 관리 팝업 창이 나타나면 로그를 저장할 버킷을 선택하고 버킷에 저장될 접근 로그의 접두어(prefix)를 입력한 후 [추가] 버튼을 클릭해 주십시오.
접근 로그 예시(일본 외 리전)
Object Storage에서 수행된 모든 요청에 대한 상세 정보는 JSON 형식으로 저장됩니다.
다음은 Object Storage의 객체를 조회했을 때의 로그 예제입니다.
{
"container_id": "3aaae999-89b8-1234-abb6-5c106e4f436d",
"container_name": "ncp-bucket",
"container_region": "Korea",
"credential_type": "hmac",
"delete_marker": false,
"e_tag": "2a158d5ab989430a11ba4f12345e357",
"format": 1,
"headers": {
"Accept-Encoding": [
"identity"
],
"Authorization": [
"AWS4-HMAC-SHA256 Credential=ABCDEFJqzABCDJ6cGS/20211109/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=1cc5b591e1f4c313a9bbf7471bd1d5b7f5d32033e4dec3bcaf1a329ef9b57e8"
],
"Host": [
"kr.object.ncloudstorage.com"
],
"User-Agent": [
"aws-cli/1.15.85 Python/2.7.9 Windows/8 botocore/1.10.84"
],
"X-Amz-Content-SHA256": [
"e3b0c44298fc1c149afbf4c8996fb92427ae41e464911234ca495991b7852b855"
],
"X-Amz-Date": [
"20211109T094038Z"
]
},
"https": {
"cipher_suite": "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384",
"protocol": "TLSv1.2"
},
"interface_type": "s3",
"is_secure": true,
"last_changed": "2021-10-21T08:40:00.283Z",
"last_modified": "2021-10-21T05:23:31.432Z",
"object_length": "160",
"object_name": "index.html",
"principals": {
"aws": "ABCDEFJqzABCDJ6cGS",
"identity": "ncp-1234567-0@00000000-0000-0000-0000-000000000002"
},
"protocol": "HTTP/1.1",
"proxy_enabled": false,
"region": "KR",
"remote_address": "123.45.123.45",
"remote_user": "ABCDEFJqzABCDJ6cGS",
"request_id": "76d34a72-2da0-400a-aac3-9861ec1040ad",
"request_latency": "2",
"request_method": "GET",
"request_type": "REST.GET.OBJECT",
"request_uri": "/ncp-bucket/object.txt",
"response_length": "160",
"server_name": "kr.object.ncloudstorage.com",
"stat": {
"client_wait": 0.056,
"post_transfer": 0.011,
"pre_transfer": 1.096,
"storage_wait": 0.046,
"total_transfer": 0.109,
"turn_around_time": 1.14
},
"status": 200,
"storage_account_id": "ncp-1234567-0",
"storage_location_id": "24d02d1a-a0b5-7240-10b7-00655729e065",
"time_finish": "09/Nov/2021:09:40:38 +0000",
"time_start": "09/Nov/2021:09:40:38 +0000",
"timestamp_finish": "1636450838774",
"timestamp_start": "1636450838773",
"type": "http",
"user_agent": "aws-cli/1.15.85 Python/2.7.9 Windows/8 botocore/1.10.84",
"version_name": "ef6dc25a-bda2-4378-9279-b3050b8da577",
"version_transient": true
}
로그 필드에 대한 설명은 다음과 같습니다. (일본 외 리전)
필드명 | 설명 | 로그 예시 |
---|---|---|
container_id | 버킷 UUID | 3aaae999-89b8-4919-abb6-5c106e4f436d |
container_name | 버킷명 | ncp-bucket |
container_region | 버킷이 위치한 리전 | Korea |
error_code | 오류가 발생한 경우의 오류 코드 정보 | AccessDenied |
delete_marker | 삭제 마커 여부 | false |
e_tag | 저장된 객체의 해시 값 | 2a158d5ab989430a11ba4f349363e357 |
format | 로그 형식 버전 | 1 |
headers | 요청 헤더 정보 | { "Host": [ "kr.object.ncloudstorage.com" ], "User-Agent": [ "aws-cli/1.15.85 Python/2.7.9 Windows/8 botocore/1.10.84" ] } |
https | HTTPS 요청 정보 | { "cipher_suite": "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", "protocol": "TLSv1.2" } |
interface_type | 요청에 사용된 API | s3 |
is_secure | 보안 연결 여부(HTTPS 연결) | true |
last_changed | 객체의 속성이 마지막으로 수정된 시간 | 2021-10-21T08:40:00.283Z |
last_modified | 객체의 콘텐츠가 마지막으로 수정된 시간 | 2021-10-21T05:23:31.432Z |
object_length | 요청된 객체의 크기 | 160 |
principals | 요청 주체 정보 | { "aws": "ABCDEFGHqzAFTTJ6cGS", "identity": "ncp-1234567-0@00000000-0000-0000-0000-000000000002" } |
protocol | 요청된 프로토콜 정보 | HTTP/1.1 |
proxy_enabled | 프록시 활성 여부 | false |
referer | HTTP referer 정보 | https://console.ncloud.com |
region | 네이버 클라우드 플랫폼 리전 코드 | KR |
remote_address | 클라이언트의 IP 정보 | 123.45.123.45 |
remote_user | 인증된 사용자의 로그인 정보 | ABCDEFSHqzAFTTJ6cGS |
remote_user_subject | Sub Account NRN 정보 | abcd1234-f32a-12ab-98ec-123e98765a38 |
request_id | 요청 ID | 5a49a8f9-edff-43ab-8630-6297e11ae1d4 |
request_latency | 요청 처리까지 소요된 시간(밀리초) | 2 |
request_type | 요청 작업 | REST.GET.OBJECT |
request_uri | 요청 URI | /ncp-bucket/object.txt |
response_length | 응답 크기 | 160 |
server_name | 요청된 호스트명 또는 Object Storage 엔드포인트 | kr.object.ncloudstorage.com |
status | 응답에서 반환되는 상태 코드 | 200 |
storage_account_id | 버킷 소유자 계정 ID | ncp-1234567-0 |
storage_location_id | 버킷 위치 ID | 24d02d1a-a0b5-7240-10b7-001234529e065 |
time_finish | 요청 완료 시간(ISO 8601) | 09/Nov/2021:09:40:40 +0000 |
time_start | 요청 시작 시간(ISO 8601) | 09/Nov/2021:09:40:40 +0000 |
timestamp_finish | 요청 완료 시간(유닉스 타임, 밀리초) | 1636450840661 |
timestamp_start | 요청 시작 시간(유닉스 타임, 밀리초) | 1636450840660 |
| type | 로그 형식<br><li>접근 로그는 항상 http로 표시</li> | http |
| user_agent | 사용자 에이전트 정보 | Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36 |
| version_name | 요청된 객체의 버전 ID | ef6dc25a-bda2-4378-9279-b3050b8da577 |
| version_transient | 버전의 transient 정보 | true |
- 일본 리전
접근 로그 관리를 설정하고 요청이 로그에 기록되는데에는 10분 ~ 수시간까지 소요될 수 있습니다. 접근 로그 관리를 설정하는 방법은 다음과 같습니다.- 로그 관리 팝업 창이 나타나면 로그를 저장할 버킷을 선택하고 버킷에 저장될 접근 로그의 접두어(prefix)를 입력한 후 [적용] 버튼을 클릭해 주십시오.
- 본인 소유의 버킷에만 설정할 수 있습니다.
- 한 버킷에 하나의 접두어(prefix)만 설정할 수 있습니다.
- 한 버킷에 하나의 저장 버킷을 설정할 수 있습니다.
- 접근 로그 설정 내역은 > 버킷 정보 메뉴에서 확인할 수 있습니다.
- 로그 관리 팝업 창이 나타나면 로그를 저장할 버킷을 선택하고 버킷에 저장될 접근 로그의 접두어(prefix)를 입력한 후 [적용] 버튼을 클릭해 주십시오.
접근 로그 예시(일본 리전)
4aaa4222e45045f0897a90ccc13ba329 EXAMPLE-BUCKET1 [13/Apr/2022:13:08:11 +0900] 123.456.123.456 - afeb189f-9ecd-4cb4-8038-0e13777f9f8b REST.PUT.OBJECT test "PUT /EXAMPLE-BUCKET1/test HTTP/1.1" 200 null - 1004 17 17 "-" "Python-urllib/2.7" -
4aaa4222e45045f0897a90ccc13ba329 EXAMPLE-BUCKET1 [13/Apr/2022:13:08:21 +0900] 123.456.123.456 4aaa4222e45045f0897a90ccc13ba329 8fd2f79b-476d-4dcf-93be-d73e675ad950 REST.GET.OBJECT test "GET /EXAMPLE-BUCKET1/test HTTP/1.1" 200 null 1000 13 13 13 "-" "Python-urllib/2.7" -
로그 필드에 대한 설명은 다음과 같습니다.
필드명 | 설명 | 로그 예시 |
---|---|---|
버킷 소유자 | 버킷 소유자의 사용자 ID | 4aaa4222e45045f0897a90ccc13ba329 |
버킷 | 요청의 버킷 이름 | EXAMPLE-BUCKET1 |
시간 | 요청이 들어온 시간 | [13/Apr/2022:13:08:11 +0900] |
원격 IP | 요청자의 IP 주소 | 123.456.123.456 |
요청자 | 요청자의 사용자 ID | 4aaa4222e45045f0897a90ccc13ba329 |
요청 ID | 요청을 식별하기 위한 ID | 8fd2f79b-476d-4dcf-93be-d73e675ad950 |
요청 타입 | REST.<HTTP_method>.<resource_type> 형식 | REST.GET.OBJECT |
키 | 요청의 '키' 부분. URL로 인코딩되거나 작업에 키 파라미터가 없을 경우 '-' | test |
요청 URI | HTTP 요청 메시지의 Request-URI 부분 | GET /EXAMPLE-BUCKET1/test HTTP/1.1 |
HTTP status | 응답에서 반환되는 상태 코드 | 200 |
오류 코드 | 오류 코드 반환. 오류가 없을 경우 null | NoSuchBucket |
응답 크기 | 응답 바이트 크기 | 1000 |
객체 크기 | 해당 객체의 총 크기 | 1004 |
Total Time | 요청이 수신된 시간부터 응답의 마지막 바이트가 전송된 시간까지 측정한 값(밀리초) | 13 |
Turn-Around Time | 요청의 마지막 바이트가 수신된 시간부터 응답의 첫 바이트가 전송된 시간까지 측정한 값(밀리초) | 13 |
Referer | HTTP referer 정보 | https://console.ncloud.com |
사용자 에이전트 | HTTP User-Agent 정보 | Python-urllib/2.7 |
버킷 버전 관리(일본 리전만 제공)
버킷 버전관리 기능은 일본 리전 환경에서만 제공됩니다. (타 리전 추후 제공 예정)
버킷 버전 관리를 설정하는 방법은 다음과 같습니다.
- 버킷 생성 또는 버킷 생성 후 버킷버전관리를 활성화해 주십시오.
- 버킷을 선택하고 파일 목록 상단의 버전 표시의 을 클릭하면 버전 ID를 표시하거나 숨길 수 있습니다.
- 동일한 파일을 업로드하게 될 경우 기존 버전 ID 상단에 새로운 버전 ID가 추가됩니다.
- 특정 버전을 다운로드 하고 싶은 경우 해당 버전을 선택하고 [다운로드] 버튼을 클릭해 주십시오.
- 특정 버전을 삭제하고 싶은 경우 해당 버전을 선택하고 [편집] 버튼 - [삭제하기] 버튼을 클릭해 주십시오. 모든 버전을 삭제할 경우 파일은 복구할 수 없습니다.
- 버킷버전관리 기능은 활성화 이후 비활성화는 불가하지만 일시중지는 가능합니다. 버킷을 선택한 후 버킷버전관리에서 일시중지 상태로 변경할 경우 객체 버전 생성을 일시 중지하고 기존 객체 버전은 보관합니다.
- 버킷버전관리 기능을 사용할 경우, 콘솔에서 하위 오브젝트를 포함한 버킷 삭제 및 폴더 삭제 기능에 제한이 있습니다. 버킷이나 폴더를 삭제는 버전 ON 하고, 하위 모든 버전 오브젝트를 수동 삭제한 후에 가능합니다.
잠금 관리
버킷에 객체 잠금(WORM: Write Once Read Many)을 설정하면, 설정한 기간에 객체가 변경되거나 삭제되지 않도록 보호할 수 있습니다. 장기간 객체를 저장할 때 객체 잠금을 설정하면 뜻하지 않은 객체의 변형 또는 삭제를 방지할 수 있습니다.
- 일본 외 리전
- 기업 고객에게 제공되는 기능이며, 개인 고객이 사용을 원하는 경우 고객 문의를 통해 별도로 신청해 주십시오.
- 객체 잠금을 설정한 후에는 중도 해지 및 회원 탈퇴가 불가하므로 신중하게 선택해 주십시오.
- 객체 잠금을 설정한 기간에는 잠금을 해제할 수 없으나, 최대 보존 기간과 기본 보존 기간은 변경할 수 있습니다.
- 버킷을 생성할 때 또는 버킷이 비어있을 때 객체 잠금을 설정할 수 있습니다.
- 객체 잠금을 설정한 버킷은 파일을 업로드할 때 헤더에 Content MD5 값을 필수로 추가해야 합니다.
- 잠금 관리 팝업 창이 나타나면 다음의 내용을 설정할 수 있습니다.
- 최대 보존 기간: 버킷이 허용하는 최대 보존 기간으로, 0~365일을 설정할 수 있습니다.
- 기본 보존 기간: 버킷에 객체가 저장될 때 적용되는 기본 보존 기간으로, 0~365일을 설정할 수 있으며 추후 객체 저장 시 보존 기간을 따로 설정할 수 있습니다.
- 일본 리전
- 객체 잠금은 버전이 지정된 버킷에서만 작동합니다. 객체 잠금을 활성화하면 버킷 버전 관리가 자동으로 활성화됩니다.
- 버킷 잠금설정을 하면 객체의 보존기간을 지정할 수 있습니다. 보존기간이 지정된 객체는 설정한 기간 동안 해당 버전 객체가 변경 또는 삭제되지 않게 보호되는 한편, 중도 해지 및 회원 탈퇴도 불가하므로 신중하게 설정해 주십시오.
- 잠금을 활성화한 경우 다음의 내용을 설정해 주십시오.
- 보존 모드 선택 : 다음의 2가지 모드에서 선택하실 수 있습니다.
- 거버넌스 모드 : NCP_OBJECT_STORAGE_MANAGER 또는 Change/ * 권한이 있는 사용자는 보존 기간 동안 보호된 객체 버전을 덮어쓰거나 삭제할 수 있습니다.
- 규정 준수 모드 : 어떤 사용자도 보존 기간 동안 보호된 객체 버전을 덮어쓰거나 삭제할 수 없습니다.
- 기본 보존 기간: 버킷에 객체가 저장될 때 적용되는 기본 보존 기간으로, 1~365일 설정 가능 (API 사용시 더 길게 기한을 설정할 수 있습니다)
- 추후 객체 저장 시 파일별로 보존 기간을 별도 설정할 수 있습니다.
- 보존 모드 선택 : 다음의 2가지 모드에서 선택하실 수 있습니다.
정적 웹 사이트 호스팅
두 가지 유형의 호스팅 기능을 사용할 수 있습니다.
- 정적 웹 사이트 호스팅: 버킷 엔드포인트를 웹 주소로 사용합니다. 웹 사이트 엔드포인트의 콘텐츠에 접근하려면 버킷 안의 모든 파일이 공개로 설정되어야 합니다.
- 파일에 대한 요청 리다이렉션: 요청을 다른 버킷이나 도메인으로 리다이렉션합니다.
호스팅하는 방법은 다음과 같습니다.
- 정적 웹 사이트 호스팅 팝업 창이 나타나면 을 클릭해 기능을 활성화해 주십시오.
- 호스팅 유형을 선택해 주십시오.
- 선택한 유형에 따른 설정 내용을 입력해 주십시오.
- 정적 웹 사이트 호스팅을 선택한 경우 다음의 내용을 설정해 주십시오.
- 인덱스 파일: 웹 사이트의 기본 페이지이며 입력 필수
- 오류 파일: 오류 발생 시 반환할 사용자 오류 페이지 설정
- 파일에 대한 요청 리다이렉션을 선택한 경우 다음의 내용을 설정해 주십시오.
- 호스트 이름: 리다이렉션할 호스트이며 대상 버킷의 웹 사이트 주소 또는 개인 도메인 입력
- 프로토콜: 환경에 맞게 없음, http, https 중에서 선택
- 정적 웹 사이트 호스팅을 선택한 경우 다음의 내용을 설정해 주십시오.
- [확인] 버튼을 클릭해 주십시오.
- 버킷 웹 사이트 엔드포인트를 확인하고 [확인] 버튼을 클릭해 주십시오.
- 을 클릭하면 엔드포인트 주소를 복사할 수 있습니다.
추후 설정을 변경할 경우 변경 사항이 적용되기까지 시간이 소요될 수 있습니다.
이벤트 관리
버킷에서 특정 이벤트가 발생하면 알람을 전달하도록 설정할 수 있습니다.
- 이벤트 관리 기능을 사용하려면 유료 서비스인 Cloud Functions을 이용해야 합니다. Cloud Functions에 대한 자세한 내용은 포털의 서비스 > Compute > Cloud Functions 메뉴를 참조해 주십시오.
- 이벤트 관리 기능은 한국 리전에서만 지원됩니다.
알람을 전달할 수 있는 이벤트는 다음과 같습니다.
이벤트 종류 | 내용 |
---|---|
|
|
|
알람 설정
이벤트 알람을 설정하는 방법은 다음과 같습니다.
- 이벤트 관리 팝업 창이 나타나면 [생성] 버튼을 클릭해 주십시오.
- 버킷 이벤트 생성 팝업 창이 나타나면 이벤트를 설정해 주십시오.
- 이벤트 이름: 이벤트의 이름 입력
- 알파벳, 숫자, 하이픈(-), 언더바(_)를 사용할 수 있고, 첫 문자는 알파벳 또는 숫자만 허용
- 필터: 특정 객체에 대해서 이벤트를 필터링할 때 사용할 조건 입력
- 정규 표현 식으로 입력해 주십시오.(<예시> 접두사 images/: ^images/)
- 필터는 객체 경로에 적용되며, 미입력 시 모든 객체에 대해 이벤트 발생
- 이벤트 유형: 원하는 이벤트 유형 다중 선택
- 대상: 이벤트 알람이 전달되는 목적지 선택. Cloud Functions만 지원
- Cloud Functions를 선택하면 설정된 트리거 목록 표시. 트리거가 없다면 [트리거 생성] 버튼을 클릭해 새로운 트리거 생성. 트리거 생성에 대한 자세한 방법은 Object Storage Trigger 사용 가이드를 참조
- 재귀 호출 주의: 안내문 숙지 후 체크 박스 클릭
- 이벤트 이름: 이벤트의 이름 입력
- [생성] 버튼을 클릭해 주십시오.
알람 메시지 예시
Object Storage에서 보내는 알람 메시지 구조는 다음과 같습니다.
{
"container_name": "버킷 이름",
"event_name": "이벤트 이름",
"event_type": "이벤트 종류",
"event_version": "1.0",
"object_length": "객체 크기",
"object_name": "객체 키",
"region": "리전 이름",
"remote_address": "요청 IP",
"remote_user_sha256": "사용자 Access Key의 SHA256 hash hex값",
"remote_user_type": "사용자 종류",
"request_method": "요청 Method",
"request_type": "요청 종류",
"timestamp_finish": "요청 처리가 끝난 시간, 유닉스 시간, 밀리초",
"timestamp_start": "요청 처리를 시작한 시간, 유닉스 시간, 밀리초"
}
remote_user_type이 user가 아닌 경우 remote_address와 remote_user_sha256은 null이 들어갑니다.
알람 메시지 예시는 다음과 같습니다.
{
"container_name": "mybucket",
"event_name": "testevent",
"event_type": "ObjectCreated:PUT",
"event_version": "1.0",
"object_length": "1000",
"object_name": "test.png",
"region": "KR",
"remote_address": "127.0.0.1",
"remote_user_sha256": "ef5dd4b34d9de8d98182a9be416576efbd162b9a915d8b302ba8c3fa0c81b764",
"remote_user_type": "user",
"request_method": "PUT",
"request_type": "REST.PUT.OBJECT",
"timestamp_finish": "1609426801000",
"timestamp_start": "1609426800000"
}
- Cloud Functions와 연동 시 트리거에 연결된 액션이 Object Storage 버킷을 사용하고 있는지 확인해 주십시오.
- 입력과 출력에 동일한 버킷을 사용하면 재귀 호출이 생성될 수 있으며, Cloud Functions 사용량 증가 및 비용 증가로 이어질 수 있습니다.