Zapis na poziomie wersji raz, odczyt wielu zasad (WORM) dla niezmiennych danych obiektów blob
Zasady zapisu na poziomie wersji raz odczytują wiele (WORM) to typ zasad niezmienności, które można ustawić na poziomie konta, kontenera lub wersji. Aby dowiedzieć się więcej na temat niezmiennego magazynu dla usługi Azure Blob Storage, zobacz Przechowywanie danych obiektów blob o krytycznym znaczeniu dla działania firmy z niezmiennym magazynem w magazynie jednokrotnym zapisu, odczytaj wiele stanów (WORM).
Dostępność
Zasady niezmienności na poziomie wersji (VLW) są obsługiwane na poziomie konta dla nowych kont oraz na poziomie kontenera i obiektu blob dla nowych i istniejących kont/kontenerów. Te zasady są obsługiwane zarówno dla kont obiektów blob ogólnego przeznaczenia w wersji 2, jak i premium. Ta funkcja nie jest obsługiwana na kontach hierarchicznej przestrzeni nazw.
Zależność wersji
Zasady na poziomie wersji wymagają włączenia obsługi wersji obiektów blob dla konta magazynu. Aby dowiedzieć się, jak włączyć przechowywanie wersji obiektów blob, zobacz Włączanie przechowywania wersji obiektów blob i zarządzanie nimi. Należy pamiętać, że włączenie obsługi wersji może mieć wpływ na rozliczenia. Aby uzyskać więcej informacji, zobacz sekcję Cennik i rozliczenia dotyczące przechowywania wersji obiektów blob.
Po włączeniu obsługi wersji po pierwszym przekazaniu obiektu blob ta wersja obiektu blob jest bieżącą wersją. Za każdym razem, gdy obiekt blob jest zastępowany, tworzona jest nowa wersja, która przechowuje poprzedni stan obiektu blob. Po usunięciu bieżącej wersji obiektu blob bieżąca wersja stanie się poprzednią wersją i zostanie zachowana do momentu jawnego usunięcia. Poprzednia wersja obiektu blob ma zasady przechowywania na podstawie czasu, które obowiązywały, gdy bieżąca wersja stała się poprzednią wersją.
Jeśli zasady domyślne obowiązują dla konta magazynu lub kontenera, po utworzeniu poprzedniej wersji operacja zastąpienia dziedziczy domyślne zasady dla konta lub kontenera.
Każda wersja może mieć skonfigurowane tylko jedno zasady przechowywania na podstawie czasu. Wersja może również mieć skonfigurowaną jedną blokadę prawną.
Aby dowiedzieć się, jak skonfigurować zasady przechowywania na podstawie czasu na poziomie wersji, zobacz Konfigurowanie zasad niezmienności dla wersji obiektów blob.
Ustawienie włączania i zasad
Używanie niezmiennych zasad z funkcją WORM na poziomie wersji jest procesem dwuetapowym. Najpierw włącz niezmienność na poziomie wersji. Następnie można ustawić zasady niezmienności na poziomie wersji.
Aby ustawić zasady na poziomie konta magazynu, musisz najpierw włączyć WORM na poziomie wersji na koncie magazynu. Można to zrobić tylko w czasie tworzenia konta. Nie ma możliwości włączenia funkcji WORM na poziomie wersji dla istniejących kont.
Aby ustawić zasady na poziomie kontenera, należy najpierw włączyć WORM na poziomie wersji na koncie LUB w kontenerze.
Jeśli planujesz włączyć WORM na poziomie wersji w kontenerze, firma Microsoft zaleca włączenie go w czasie tworzenia kontenera. Można jednak przeprowadzić migrację kontenera bez obsługi WORM na poziomie wersji do kontenera z obsługą WORM na poziomie wersji. Jeśli zdecydujesz się nie migrować kontenera, nadal możesz ustawić zasady WORM na poziomie kontenera dla tego kontenera, ale opcja ustawienia zasad na poziomie obiektów blob nie będzie dostępna w tym kontenerze.
Aby ustawić zasady na poziomie obiektu blob, musisz włączyć WORM na poziomie wersji na koncie lub w kontenerze. Nie ma możliwości włączenia funkcji WORM na poziomie wersji na poziomie obiektu blob; musi być dziedziczony.
Migracja
Istniejące kontenery mogą obsługiwać niezmienność na poziomie wersji, ale najpierw muszą przejść proces migracji. Ten proces może potrwać jakiś czas. Po włączeniu nie można usunąć obsługi WORM na poziomie wersji dla tego kontenera. Jednocześnie można migrować 10 kontenerów na konto magazynu. Aby uzyskać więcej informacji na temat migrowania kontenera do obsługi niezmienności na poziomie wersji, zobacz Migrowanie istniejącego kontenera w celu obsługi niezmienności na poziomie wersji.
Konfigurowanie zasad w bieżącej wersji
Po włączeniu obsługi niezmienności na poziomie wersji dla konta magazynu lub kontenera można skonfigurować domyślne zasady przechowywania na podstawie czasu dla konta lub kontenera. Podczas konfigurowania domyślnych zasad przechowywania na podstawie czasu dla konta lub kontenera, a następnie przekazywania obiektu blob obiekt blob dziedziczy te domyślne zasady. Możesz również zastąpić domyślne zasady dla dowolnego obiektu blob podczas przekazywania, konfigurując niestandardowe zasady dla tego obiektu blob.
Jeśli domyślne zasady przechowywania na podstawie czasu dla konta lub kontenera zostaną odblokowane, bieżąca wersja obiektu blob, która dziedziczy domyślne zasady, również będą miały odblokowane zasady. Po przekazaniu pojedynczego obiektu blob można skrócić lub przedłużyć okres przechowywania dla zasad w bieżącej wersji obiektu blob lub usunąć bieżącą wersję. Można również zablokować zasady dla bieżącej wersji, nawet jeśli domyślne zasady na koncie lub kontenerze pozostają odblokowane.
Jeśli domyślne zasady przechowywania na podstawie czasu dla konta lub kontenera są zablokowane, bieżąca wersja obiektu blob, która dziedziczy domyślne zasady, również będą miały zablokowane zasady. Jeśli jednak zasady domyślne zostaną zastąpione podczas przekazywania obiektu blob przez ustawienie zasad tylko dla tego obiektu blob, zasady tego obiektu blob pozostają odblokowane, dopóki nie zostanie jawnie zablokowane. Gdy zasady w bieżącej wersji są zablokowane, można przedłużyć interwał przechowywania, ale nie można usunąć zasad ani skrócić interwału przechowywania.
Jeśli nie skonfigurowano żadnych domyślnych zasad dla konta magazynu lub kontenera, możesz przekazać obiekt blob za pomocą zasad niestandardowych lub bez zasad.
Jeśli zasady domyślne na koncie magazynu lub kontenerze zostaną zmodyfikowane, zasady dotyczące obiektów w tym kontenerze pozostaną niezmienione, nawet jeśli te zasady zostały odziedziczone z zasad domyślnych.
W poniższej tabeli przedstawiono różne opcje ustawiania zasad przechowywania na podstawie czasu dla obiektu blob podczas przekazywania:
Domyślny stan zasad na koncie lub kontenerze | Przekazywanie obiektu blob przy użyciu zasad domyślnych | Przekazywanie obiektu blob przy użyciu zasad niestandardowych | Przekazywanie obiektu blob bez zasad |
---|---|---|---|
Domyślne zasady dotyczące konta lub kontenera (odblokowane) | Obiekt blob jest przekazywany z domyślnymi odblokowanymi zasadami | Obiekt blob jest przekazywany za pomocą niestandardowych zasad odblokowanych | Obiekt blob nie jest przekazywany bez zasad |
Domyślne zasady na koncie lub kontenerze (zablokowane) | Obiekt blob jest przekazywany z domyślnymi zablokowanymi zasadami | Obiekt blob jest przekazywany za pomocą niestandardowych zasad odblokowanych | Obiekt blob nie jest przekazywany bez zasad |
Brak domyślnych zasad dla konta lub kontenera | Nie dotyczy | Obiekt blob jest przekazywany za pomocą niestandardowych zasad odblokowanych | Obiekt blob nie jest przekazywany bez zasad |
Konfigurowanie zasad w poprzedniej wersji
Po włączeniu obsługi wersji operacja zapisu lub usuwania obiektu blob tworzy nową poprzednią wersję tego obiektu blob, która zapisuje stan obiektu blob przed operacją. Domyślnie poprzednia wersja ma zasady przechowywania oparte na czasie, które obowiązywały dla bieżącej wersji, jeśli istnieje, gdy bieżąca wersja stała się poprzednią wersją. Nowa bieżąca wersja dziedziczy zasady w kontenerze, jeśli istnieje.
Jeśli zasady dziedziczone przez poprzednią wersję są odblokowane, interwał przechowywania można skrócić lub wydłużyć lub usunąć zasady. Zasady w poprzedniej wersji można również zablokować dla tej wersji, nawet jeśli zasady w bieżącej wersji zostaną odblokowane.
Jeśli zasady dziedziczone przez poprzednią wersję są zablokowane, interwał przechowywania można wydłużyć. Nie można usunąć zasad ani skrócić interwału przechowywania. Jeśli w bieżącej wersji nie skonfigurowano żadnych zasad, poprzednia wersja nie dziedziczy żadnych zasad.
Można skonfigurować zasady niestandardowe dla wersji. Jeśli zasady dotyczące bieżącej wersji zostaną zmodyfikowane, zasady dotyczące istniejących poprzednich wersji pozostaną niezmienione, nawet jeśli zasady zostały odziedziczone z bieżącej wersji.
Usunięcie
Po włączeniu konta lub kontenera dla zasad niezmiennych nie można go usunąć, dopóki nie będzie on pusty. Najważniejsze jest to, że nie ma znaczenia, czy zasady niezmienne zostały ustawione na koncie WORM na poziomie wersji lub kontenerze, ma znaczenie, czy są włączone dla zasad. Po jego utworzeniu konto lub kontener muszą być puste, aby można je było usunąć.
Scenariusze
Scenariusz | Niedozwolone operacje | Ochrona obiektów blob | Ochrona kontenera | Ochrona konta |
---|---|---|---|---|
Wersja obiektu blob jest chroniona przez aktywne zasady przechowywania i/lub obowiązują archiwizacja ze względów prawnych | Usuwanie obiektu blob, ustawianie metadanych obiektu blob i umieszczanie strony | Nie można usunąć wersji obiektu blob. Nie można zapisać metadanych użytkownika. Zastępowanie obiektu blob za pomocą polecenia Put Blob, Put Block List lub Copy Blob tworzy nową wersję1. |
Usuwanie kontenera kończy się niepowodzeniem, jeśli w kontenerze istnieje co najmniej jeden obiekt blob, niezależnie od tego, czy zasady są zablokowane, czy odblokowane. | Usuwanie konta magazynu kończy się niepowodzeniem, jeśli istnieje co najmniej jeden kontener z włączonym magazynem niezmiennym na poziomie wersji lub jeśli jest on włączony dla konta. |
Wersja obiektu blob jest chroniona przez wygasłe zasady przechowywania i nie obowiązują żadne archiwizacja ze względów prawnych | Ustawianie metadanych obiektu blob i umieszczania strony | Wersja obiektu blob jest chroniona przez wygasłe zasady przechowywania i nie obowiązują żadne archiwizacja ze względów prawnych | Wersję obiektu blob można usunąć. Zastępowanie obiektu blob za pomocą polecenia Put Blob, Put Block List lub Copy Blob tworzy nową wersję1. |
Usunięcie konta magazynu kończy się niepowodzeniem, jeśli istnieje co najmniej jeden kontener zawierający wersję obiektu blob z zablokowanymi zasadami przechowywania na podstawie czasu. Odblokowane zasady nie zapewniają ochrony przed usuwaniem. |
1 Wersje obiektów blob są zawsze niezmienne dla zawartości. Jeśli dla konta magazynu włączono przechowywanie wersji, operacja zapisu w blokowym obiekcie blob tworzy nową wersję, z wyjątkiem operacji Put Block.
Limity
Na jednym koncie można ustawić tylko 10 000 kontenerów z unikatowymi zasadami przechowywania na podstawie czasu; Można jednak ustawić zasady na poziomie konta, które będą dziedziczone przez więcej niż 10 000 kontenerów.