다음을 통해 공유


버전 수준 쓰기 한 번, 변경할 수 없는 Blob 데이터에 대한 여러(WORM) 정책 읽기

한 번 쓰고 여러 번 읽기(WORM) 정책은 계정, 컨테이너 또는 버전 수준에서 설정할 수 있는 불변성 정책의 한 유형입니다. Azure Blob Storage의 변경할 수 없는 스토리지에 대한 자세한 내용을 보려면, 변경할 수 없는 스토리지로 비즈니스에 중요한 Blob 데이터를 저장하고 한 번 기록하여 여러 번 읽기(WORM) 상태로 보관하세요.

가용도

VLW(버전 수준 불변성) 정책은 새 계정의 계정 수준 및 신규 및 기존 계정/컨테이너에 대한 컨테이너 및 Blob 수준에서 지원됩니다. 이러한 정책은 범용 v2 및 프리미엄 블록 Blob 계정 모두에 대해 지원됩니다. 이 기능은 계층 구조 네임스페이스 계정에서 지원되지 않습니다.

버전 종속성

버전 수준 정책을 사용하려면 스토리지 계정에 대해 Blob 버전 관리 가 사용하도록 설정되어야 합니다. Blob 버전 관리를 사용하도록 설정하는 방법을 알아보려면 Blob 버전 관리 사용 및 관리를 참조하세요. 버전 관리 사용은 청구에 영향을 미칠 수 있습니다. 자세한 내용은 Blob 버전 관리의 가격 책정 및 청구 섹션을 참조하세요.

버전 관리가 활성화된 후 Blob이 처음 업로드되면 해당 버전의 Blob이 현재 버전입니다. Blob을 덮어쓸 때마다 Blob의 이전 상태를 저장하는 새 버전이 만들어집니다. Blob의 현재 버전을 삭제하면 현재 버전이 이전 버전이 되고 명시적으로 삭제될 때까지 유지됩니다. 이전 Blob 버전에는 현재 버전이 이전 버전이 되었을 때 적용된 시간 기반 보존 정책이 있습니다.

스토리지 계정 또는 컨테이너에 대한 기본 정책이 적용되는 경우 덮어쓰기 작업에서 이전 버전을 만들 때 새 현재 버전은 계정 또는 컨테이너에 대한 기본 정책을 상속합니다.

각 버전에는 시간 기반 보존 정책이 하나만 구성되었을 수 있습니다. 버전에 하나의 법적 보존이 구성되었을 수도 있습니다.

버전 수준 시간 기반 보존 정책을 구성하는 방법을 알아보려면 Blob 버전에 대한 불변성 정책 구성을 참조하세요.

활성화 및 정책 설정

버전 수준 WORM에서 변경할 수 없는 정책을 사용하는 것은 2단계 프로세스입니다. 먼저 버전 수준 불변성을 사용하도록 설정합니다. 그런 다음 버전 수준 불변성 정책을 설정할 수 있습니다.

스토리지 계정 수준에서 정책을 설정하려면 먼저 스토리지 계정에서 버전 수준 WORM을 사용하도록 설정해야 합니다. 계정 생성 시간에만 이 작업을 수행할 수 있습니다. 기존 계정에 버전 수준 WORM을 사용하도록 설정하는 옵션은 없습니다.

계정 수준에서 버전 수준 변경할 수 없는 스토리지에 대한 정책을 설정하는 다이어그램

컨테이너 수준에서 정책을 설정하려면 먼저 계정 또는 컨테이너에서 버전 수준 WORM을 사용하도록 설정해야 합니다.

컨테이너에서 버전 수준 WORM을 사용하도록 설정하려는 경우 컨테이너를 만들 때 사용하도록 설정하는 것이 좋습니다. 그러나 버전 수준이 아닌 WORM 사용 컨테이너를 버전 수준 WORM 사용 컨테이너로 마이그레이션할 수 있습니다. 컨테이너를 마이그레이션하지 않도록 선택하는 경우 해당 컨테이너에서 컨테이너 수준 WORM 정책을 설정할 수 있지만 Blob 수준 정책을 설정하는 옵션은 해당 컨테이너에서 사용할 수 없습니다.

컨테이너 수준에서 버전 수준 변경할 수 없는 스토리지에 대한 정책을 설정하는 다이어그램

Blob 수준에서 정책을 설정하려면 계정 또는 컨테이너에서 버전 수준 WORM을 사용하도록 설정해야 합니다. Blob 수준에서 버전 수준 WORM을 사용하도록 설정하는 옵션은 없습니다. 상속되어야 합니다.

Blob 수준에서 버전 수준 변경할 수 없는 스토리지에 대한 정책을 설정하는 다이어그램

마이그레이션

기존 컨테이너는 버전 수준 불변성을 지원할 수 있지만 먼저 마이그레이션 프로세스를 거쳐야 합니다. 이 프로세스에는 다소 시간이 걸릴 수 있습니다. 사용하도록 설정하면 해당 컨테이너에 대한 버전 수준 WORM 지원을 제거할 수 없습니다. 스토리지 계정당 한 번에 10개의 컨테이너를 마이그레이션할 수 있습니다. 마이그레이션하는 데 걸리는 시간은 주로 컨테이너의 Blob 양에 따라 달라집니다. Blob 수가 많은 컨테이너는 마이그레이션하는 데 훨씬 더 오래 걸립니다. 버전 수준 불변성을 지원하기 위해 컨테이너를 마이그레이션하는 방법에 대한 자세한 내용은 버전 수준 불변 성을 지원하도록 기존 컨테이너 마이그레이션을 참조하세요.

현재 버전에서 정책 구성

스토리지 계정 또는 컨테이너에 대한 버전 수준 불변성 지원을 사용하도록 설정한 후에는 계정 또는 컨테이너에 대한 기본 시간 기반 보존 정책을 구성하는 옵션이 있습니다. 계정 또는 컨테이너에 대한 기본 시간 기반 보존 정책을 구성한 다음 Blob을 업로드하면 Blob에서 해당 기본 정책을 상속합니다. 또한 해당 Blob에 대한 사용자 지정 정책을 구성하여 업로드 시 Blob에 대한 기본 정책을 재정의하도록 선택할 수도 있습니다.

계정 또는 컨테이너에 대한 기본 시간 기반 보존 정책이 잠금 해제된 경우 기본 정책을 상속하는 Blob의 현재 버전에도 잠금 해제된 정책이 있습니다. 개별 Blob을 업로드한 후에는 현재 버전의 Blob에서 정책에 대한 보존 기간을 단축하거나 연장하거나 현재 버전을 삭제할 수 있습니다. 계정 또는 컨테이너의 기본 정책이 잠금 해제된 상태로 유지되더라도 현재 버전에 대한 정책을 잠글 수도 있습니다.

계정 또는 컨테이너에 대한 기본 시간 기반 보존 정책이 잠겨 있는 경우 기본 정책을 상속하는 Blob의 현재 버전에도 잠긴 정책이 있습니다. 그러나 해당 Blob에 대해서만 정책을 설정하여 Blob을 업로드할 때 기본 정책을 재정의하는 경우 명시적으로 잠글 때까지 해당 Blob의 정책이 잠금 해제된 상태로 유지됩니다. 현재 버전의 정책이 잠겨 있으면 보존 간격을 연장할 수 있지만 정책을 삭제하거나 보존 간격을 단축할 수는 없습니다.

스토리지 계정 또는 컨테이너에 대해 구성된 기본 정책이 없는 경우 사용자 지정 정책을 사용하거나 정책 없이 Blob을 업로드할 수 있습니다.

스토리지 계정 또는 컨테이너의 기본 정책이 수정된 경우 해당 정책이 기본 정책에서 상속되더라도 해당 컨테이너 내의 개체에 대한 정책은 변경되지 않은 상태로 유지됩니다.

다음 표에서는 업로드 시 Blob에서 시간 기반 보존 정책을 설정하는 데 사용할 수 있는 다양한 옵션을 보여 줍니다.

계정 또는 컨테이너의 기본 정책 상태 기본 정책을 사용하여 Blob 업로드 사용자 지정 정책을 사용하여 Blob 업로드 정책 없이 Blob 업로드
계정 또는 컨테이너에 대한 기본 정책(잠금 해제됨) Blob이 잠금 해제된 기본 정책으로 업로드됨 사용자 지정 잠금 해제된 정책을 사용하여 Blob이 업로드됩니다. 정책 없이 Blob이 업로드됨
계정 또는 컨테이너에 대한 기본 정책(잠겨 있음) Blob은 기본 잠긴 정책을 사용하여 업로드됩니다. 사용자 지정 잠금 해제된 정책을 사용하여 Blob이 업로드됩니다. 정책 없이 Blob이 업로드됨
계정 또는 컨테이너에 대한 기본 정책 없음 해당 없음(N/A) 사용자 지정 잠금 해제된 정책을 사용하여 Blob이 업로드됩니다. 정책 없이 Blob이 업로드됨

이전 버전에서 정책 구성

버전 관리가 사용하도록 설정된 경우 Blob에 대한 쓰기 또는 삭제 작업은 작업 전에 Blob의 상태를 저장하는 새 이전 버전의 Blob을 만듭니다. 기본적으로 이전 버전은 현재 버전이 이전 버전이 되었을 때 현재 버전(있는 경우)에 적용된 시간 기반 보존 정책을 소유합니다. 새 현재 버전은 컨테이너에 대한 정책을 상속합니다(있는 경우).

이전 버전에서 상속된 정책의 잠금이 해제된 경우 보존 간격을 줄이거나 연장하거나 정책을 삭제할 수 있습니다. 현재 버전의 정책 잠금이 해제된 경우에도 이전 버전의 정책을 해당 버전에 대해 잠글 수 있습니다.

이전 버전에서 상속된 정책이 잠겨 있으면 보존 간격이 길어질 수 있습니다. 정책을 삭제할 수 없으며 보존 간격을 단축할 수도 없습니다. 현재 버전에 구성된 정책이 없는 경우 이전 버전은 정책을 상속하지 않습니다.

버전에 대한 사용자 지정 정책을 구성할 수 있습니다. 현재 버전에 대한 정책이 수정된 경우 정책이 현재 버전에서 상속된 경우에도 기존 이전 버전에 대한 정책은 변경되지 않은 상태로 유지됩니다.

삭제

변경할 수 없는 정책에 대해 계정 또는 컨테이너를 사용하도록 설정하면 비어 있을 때까지 삭제할 수 없습니다. 중요한 점은 변경할 수 없는 정책이 버전 수준 WORM 계정 또는 컨테이너에 설정되었는지 여부는 중요하지 않으며 정책에 대해 사용하도록 설정되었는지 여부가 중요합니다. 일단 삭제하려면 계정 또는 컨테이너가 비어 있어야 합니다.

버전 수준 불변성 정책이 있는 계정을 삭제하는 작업의 순서를 보여 주는 다이어그램

시나리오

시나리오 금지된 작업 Blob 보호 컨테이너 보호 계정 보호
Blob 버전은 활성 보존 정책으로 보호되며/또는 법적 보존이 적용됩니다. Blob 삭제, Blob 메타데이터 설정페이지 배치 Blob 버전은 삭제할 수 없습니다. 사용자 메타데이터를 작성할 수 없습니다.
Put Blob, Put Block List, 또는 Copy Blob를 사용하여 Blob을 덮어쓰면 새 버전1이 생성됩니다.
정책 잠금 또는 잠금 해제 여부에 관계 없이 하나 이상의 Blob이 컨테이너에 있는 경우 컨테이너를 삭제할 수 없습니다. 버전 수준 변경할 수 없는 스토리지가 활성화된 컨테이너가 하나 이상 있거나 계정에 대해 사용하도록 설정된 경우 스토리지 계정 삭제가 실패합니다.
Blob 버전은 만료된 보존 정책으로 보호되며 법적 보존이 적용되지 않습니다. Blob 메타데이터 설정 및 페이지 배치 Blob 버전은 만료된 보존 정책으로 보호되며 법적 보존이 적용되지 않습니다. Blob 버전을 삭제할 수 있습니다.
Put Blob, Put Block List, 또는 Copy Blob를 사용하여 Blob을 덮어쓰면 새 버전1이 생성됩니다.
잠긴 시간 기반 보존 정책이 있는 Blob 버전을 포함하는 컨테이너가 하나 이상 있는 경우 스토리지 계정 삭제가 실패합니다.
잠금 해제된 정책은 삭제 보호를 제공하지 않습니다.

1 Blob 버전은 항상 콘텐츠에 대해 변경할 수 없습니다. 스토리지 계정에 버전 관리가 사용하도록 설정된 경우 블록 Blob에 대한 쓰기 작업은 블록 배치 작업을 제외하고 새 버전을 만듭니다.

제한

하나의 계정에 고유한 시간 기반 보존 정책을 사용하여 10,000개의 컨테이너만 설정할 수 있습니다. 그러나 10,000개 이상의 컨테이너에서 상속되는 계정 수준 정책을 설정할 수 있습니다.

다음 단계