Share via


AccountImmutabilityPolicy Class

Definition

This defines account-level immutability policy properties.

public class AccountImmutabilityPolicy : System.ClientModel.Primitives.IJsonModel<Azure.ResourceManager.Storage.Models.AccountImmutabilityPolicy>, System.ClientModel.Primitives.IPersistableModel<Azure.ResourceManager.Storage.Models.AccountImmutabilityPolicy>
public class AccountImmutabilityPolicy
type AccountImmutabilityPolicy = class
    interface IJsonModel<AccountImmutabilityPolicy>
    interface IPersistableModel<AccountImmutabilityPolicy>
type AccountImmutabilityPolicy = class
Public Class AccountImmutabilityPolicy
Implements IJsonModel(Of AccountImmutabilityPolicy), IPersistableModel(Of AccountImmutabilityPolicy)
Public Class AccountImmutabilityPolicy
Inheritance
AccountImmutabilityPolicy
Implements

Constructors

AccountImmutabilityPolicy()

Initializes a new instance of AccountImmutabilityPolicy.

Properties

AllowProtectedAppendWrites

This property can only be changed for disabled and unlocked time-based retention policies. When enabled, new blocks can be written to an append blob while maintaining immutability protection and compliance. Only new blocks can be added and any existing blocks cannot be modified or deleted.

ImmutabilityPeriodSinceCreationInDays

The immutability period for the blobs in the container since the policy creation, in days.

State

The ImmutabilityPolicy state defines the mode of the policy. Disabled state disables the policy, Unlocked state allows increase and decrease of immutability retention time and also allows toggling allowProtectedAppendWrites property, Locked state only allows the increase of the immutability retention time. A policy can only be created in a Disabled or Unlocked state and can be toggled between the two states. Only a policy in an Unlocked state can transition to a Locked state which cannot be reverted.

Explicit Interface Implementations

IJsonModel<AccountImmutabilityPolicy>.Create(Utf8JsonReader, ModelReaderWriterOptions)

Reads one JSON value (including objects or arrays) from the provided reader and converts it to a model.

IJsonModel<AccountImmutabilityPolicy>.Write(Utf8JsonWriter, ModelReaderWriterOptions)

Writes the model to the provided Utf8JsonWriter.

IPersistableModel<AccountImmutabilityPolicy>.Create(BinaryData, ModelReaderWriterOptions)

Converts the provided BinaryData into a model.

IPersistableModel<AccountImmutabilityPolicy>.GetFormatFromOptions(ModelReaderWriterOptions)

Gets the data interchange format (JSON, Xml, etc) that the model uses when communicating with the service.

IPersistableModel<AccountImmutabilityPolicy>.Write(ModelReaderWriterOptions)

Writes the model into a BinaryData.

Applies to