버킷 수명 주기 설정

기본적으로 버킷에는 수명 주기 관리가 사용 설정되어 있지 않습니다. 기존 버킷의 수명 주기 구성을 설정하거나 수정하려면 버킷으로 범위가 지정된 PUT 요청을 만들고 lifecycle 쿼리 문자열 매개변수를 사용합니다. 수명 주기 구성이 포함된 요청 본문에 XML 문서를 포함해야 합니다. 생성 중인 새 버킷에는 수명 주기 구성을 설정할 수 없습니다.

기존 버킷의 수명 주기 구성을 설정하거나 수정하려면 FULL_CONTROL 권한이 있어야 합니다. 또한 PUT Bucket 메서드를 사용하려면 인증을 받아야 합니다.

쿼리 문자열 매개변수

매개변수 설명 필수
lifecycle 이를 사용하여 기존 버킷에서 수명 주기 구성을 추가하거나 변경할 수 있습니다. LifecycleConfiguration 문서를 요청 본문에 제공해야 합니다. 없음

서명된 URL을 만들고 사용할 때 포함되는 매개변수에 대한 정보는 서명된 URL 쿼리 문자열 매개변수를 참조하세요.

요청 헤더

일반적인 요청 헤더를 참조하세요.

요청 본문 요소

lifecycle 쿼리 문자열 매개변수를 사용하여 기존 버킷의 수명 주기 구성을 지정하는 경우에만 다음 요청 본문 요소를 적용할 수 있습니다.

요소 설명
LifecycleConfiguration 0개 이상의 (최대 100개) 규칙이 포함된 버킷의 수명 주기 관리 정책을 정의합니다. 빈 요소 (예: <LifecycleConfiguration/>)를 사용하여 버킷의 수명 주기 관리를 사용 중지합니다.
Rule 작업을 수행하기 위해 충족해야 하는 조건 및 작업으로 구성된 수명 주기 관리 규칙을 정의합니다.
Action 실행할 작업을 정의합니다. 작업 요소를 하나만 포함해야 합니다.
Delete 버킷의 객체를 삭제하는 작업 요소
SetStorageClass 작업 요소로 버킷 객체의 스토리지 클래스를 변경합니다.
Condition 작업을 발생시키기 위해 충족해야 하는 조건입니다. 규칙은 조건 요소를 하나 이상 포함해야 합니다.
Age 객체를 지정한 기간 (일) 동안 일치하는 조건 요소입니다.
CreatedBefore UTC 기준으로 지정된 날짜의 자정 이전에 생성된 객체와 일치하는 조건 요소입니다. 값은 시간대가 없는 ISO 날짜 문자열입니다(예: 2019-01-15).
CustomTimeBefore Custom-Time 메타데이터에 있는 객체가 이 조건에서 설정한 날짜보다 오래된 날짜를 포함하는 조건 요소입니다. CustomTimeBefore은 시간대가 없는 ISO 날짜 문자열입니다(예: 2020-02-25).
DaysSinceCustomTime Custom-Time 메타데이터DaysSinceCustomTime일 이상 있는 객체와 일치하는 조건 요소.
DaysSinceNoncurrentTime 버전이 지정된 객체와 관련된 조건 요소. 지정된 일수보다 오래된 값을 반환합니다.
IsLive 조건 요소는 일반적으로 객체 버전 관리와 함께만 사용됩니다. false로 설정하면 이 조건은 객체의 현재 버전이 아닌 경우에 충족됩니다. true로 설정하면 이 조건은 객체의 실시간 버전에서 충족됩니다. 객체 버전 관리를 사용하지 않으면 IsLivetrue인 경우 모든 객체가 실시간으로 간주되고 일치합니다.
MatchesStorageClass 지정된 스토리지 클래스의 객체와 일치하는 조건 요소입니다. 이 조건은 두 개 이상의 스토리지 클래스를 처리하기 위해 동일한 규칙에 여러 번 추가될 수 있습니다.
NoncurrentTimeBefore 버전이 지정된 객체와 관련된 조건 요소. 이 조건에 지정된 날짜 이전의 날짜에 noncurrent가 아닌 객체를 찾습니다. NoncurrentTimeBefore은 시간대가 없는 ISO 날짜 문자열입니다(예: 2020-02-25).
NumberOfNewerVersions 버전이 지정된 객체와 관련된 조건 요소. 값이 N이면 조건이 이 객체 버전보다 최신 버전이 N개 이상(실시간 버전 포함)인 경우에 충족됩니다.

요청 구문

PUT /?lifecycle HTTP/1.1
Host: BUCKET_NAME.storage.googleapis.com
Date: DATE
Content-Length: REQUEST_BODY_LENGTH
Content-Type: MIME_TYPE_OF_THE_BODY
Authorization: AUTHENTICATION_STRING

XML_DOCUMENT_DEFINING_LIFECYCLE_CONFIGURATION

응답 헤더

이 요청은 사용 중인 요청 헤더에 따라 다양한 응답 헤더를 반환할 수 있습니다.

응답 본문 요소

응답의 응답 본문에 XML 문서가 없습니다.

다음 샘플은 example.com이라는 버킷에 수명 주기 관리를 사용 설정합니다. 더 많은 예시를 보려면 수명 주기 관리 페이지를 참조하세요.

요청

PUT /example.com?lifecycle HTTP/1.1
Host: storage.googleapis.com
Content-Length: 220
Authorization: Bearer ya29.AHES6ZRVmB7fkLtd1XTmq6mo0S1wqZZi3-Lh_s-6Uw7p8vtgSwg

<?xml version="1.0" ?>
<LifecycleConfiguration>
    <Rule>
        <Action>
            <Delete/>
        </Action>
        <Condition>
            <Age>30</Age>
        </Condition>
    </Rule>
</LifecycleConfiguration>

응답

HTTP/1.1 200 OK
Date: Mon, 07 Jan 2019 03:38:42 GMT
Expires: Mon, 01 Jan 1990 00:00:00 GMT
Cache-Control: no-cache, no-store, must-revalidate
Content-Length: 0
Content-Type: text/html