ImmutabilityPolicyResource Class

Definition

A class representing a ImmutabilityPolicy along with the instance operations that can be performed on it. If you have a ResourceIdentifier you can construct a ImmutabilityPolicyResource from an instance of ArmClient using the GetResource method. Otherwise you can get one from its parent resource BlobContainerResource using the GetImmutabilityPolicy method.

public class ImmutabilityPolicyResource : Azure.ResourceManager.ArmResource, System.ClientModel.Primitives.IJsonModel<Azure.ResourceManager.Storage.ImmutabilityPolicyData>, System.ClientModel.Primitives.IPersistableModel<Azure.ResourceManager.Storage.ImmutabilityPolicyData>
public class ImmutabilityPolicyResource : Azure.ResourceManager.ArmResource
type ImmutabilityPolicyResource = class
    inherit ArmResource
    interface IJsonModel<ImmutabilityPolicyData>
    interface IPersistableModel<ImmutabilityPolicyData>
type ImmutabilityPolicyResource = class
    inherit ArmResource
Public Class ImmutabilityPolicyResource
Inherits ArmResource
Implements IJsonModel(Of ImmutabilityPolicyData), IPersistableModel(Of ImmutabilityPolicyData)
Public Class ImmutabilityPolicyResource
Inherits ArmResource
Inheritance
ImmutabilityPolicyResource
Implements

Constructors

Name Description
ImmutabilityPolicyResource()

Initializes a new instance of ImmutabilityPolicyResource for mocking.

Fields

Name Description
ResourceType

Gets the resource type for the operations.

Properties

Name Description
Client

Gets the ArmClient this resource client was created from.

(Inherited from ArmResource)
Data

Gets the data representing this Feature.

Diagnostics

Gets the diagnostic options for this resource client.

(Inherited from ArmResource)
Endpoint

Gets the base uri for this resource client.

(Inherited from ArmResource)
HasData

Gets whether or not the current instance has data.

Id

Gets the resource identifier.

(Inherited from ArmResource)
Pipeline

Gets the pipeline for this resource client.

(Inherited from ArmResource)

Methods

Name Description
CanUseTagResource(CancellationToken)

Checks to see if the TagResource API is deployed in the current environment.

(Inherited from ArmResource)
CanUseTagResourceAsync(CancellationToken)

Checks to see if the TagResource API is deployed in the current environment.

(Inherited from ArmResource)
CreateOrUpdate(WaitUntil, ImmutabilityPolicyData, Nullable<ETag>, CancellationToken)

Creates or updates an unlocked immutability policy. ETag in If-Match is honored if given but not required for this operation.

  • Request Path. : /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/default.
  • Operation Id. : ImmutabilityPolicies_CreateOrUpdateImmutabilityPolicy.
  • Default Api Version. : 2025-08-01.
  • Resource. : ImmutabilityPolicyResource.
CreateOrUpdateAsync(WaitUntil, ImmutabilityPolicyData, Nullable<ETag>, CancellationToken)

Creates or updates an unlocked immutability policy. ETag in If-Match is honored if given but not required for this operation.

  • Request Path. : /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/default.
  • Operation Id. : ImmutabilityPolicies_CreateOrUpdateImmutabilityPolicy.
  • Default Api Version. : 2025-08-01.
  • Resource. : ImmutabilityPolicyResource.
CreateResourceIdentifier(String, String, String, String)

Generate the resource identifier for this resource.

Delete(WaitUntil, String, CancellationToken)

Aborts an unlocked immutability policy. The response of delete has immutabilityPeriodSinceCreationInDays set to 0. ETag in If-Match is required for this operation. Deleting a locked immutability policy is not allowed, the only way is to delete the container after deleting all expired blobs inside the policy locked container.

  • Request Path. : /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/default.
  • Operation Id. : ImmutabilityPolicies_DeleteImmutabilityPolicy.
  • Default Api Version. : 2025-08-01.
  • Resource. : ImmutabilityPolicyResource.
DeleteAsync(WaitUntil, String, CancellationToken)

Aborts an unlocked immutability policy. The response of delete has immutabilityPeriodSinceCreationInDays set to 0. ETag in If-Match is required for this operation. Deleting a locked immutability policy is not allowed, the only way is to delete the container after deleting all expired blobs inside the policy locked container.

  • Request Path. : /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/default.
  • Operation Id. : ImmutabilityPolicies_DeleteImmutabilityPolicy.
  • Default Api Version. : 2025-08-01.
  • Resource. : ImmutabilityPolicyResource.
ExtendImmutabilityPolicy(String, ImmutabilityPolicyData, CancellationToken)

Extends the immutabilityPeriodSinceCreationInDays of a locked immutabilityPolicy. The only action allowed on a Locked policy will be this action. ETag in If-Match is required for this operation.

  • Request Path. : /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/default/extend.
  • Operation Id. : ImmutabilityPolicies_ExtendImmutabilityPolicy.
  • Default Api Version. : 2025-08-01.
  • Resource. : ImmutabilityPolicyResource.
ExtendImmutabilityPolicyAsync(String, ImmutabilityPolicyData, CancellationToken)

Extends the immutabilityPeriodSinceCreationInDays of a locked immutabilityPolicy. The only action allowed on a Locked policy will be this action. ETag in If-Match is required for this operation.

  • Request Path. : /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/default/extend.
  • Operation Id. : ImmutabilityPolicies_ExtendImmutabilityPolicy.
  • Default Api Version. : 2025-08-01.
  • Resource. : ImmutabilityPolicyResource.
Get(Nullable<ETag>, CancellationToken)

Gets the existing immutability policy along with the corresponding ETag in response headers and body.

  • Request Path. : /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/default.
  • Operation Id. : ImmutabilityPolicies_GetImmutabilityPolicy.
  • Default Api Version. : 2025-08-01.
  • Resource. : ImmutabilityPolicyResource.
GetAsync(Nullable<ETag>, CancellationToken)

Gets the existing immutability policy along with the corresponding ETag in response headers and body.

  • Request Path. : /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/default.
  • Operation Id. : ImmutabilityPolicies_GetImmutabilityPolicy.
  • Default Api Version. : 2025-08-01.
  • Resource. : ImmutabilityPolicyResource.
GetAvailableLocations(CancellationToken)

Lists all available geo-locations.

(Inherited from ArmResource)
GetAvailableLocationsAsync(CancellationToken)

Lists all available geo-locations.

(Inherited from ArmResource)
GetManagementLock(String, CancellationToken)

Get a management lock by scope.

  • Request Path: /{scope}/providers/Microsoft.Authorization/locks/{lockName}
  • Operation Id: ManagementLocks_GetByScope
  • Default Api Version: 2020-05-01
  • Resource: ManagementLockResource
(Inherited from ArmResource)
GetManagementLockAsync(String, CancellationToken)

Get a management lock by scope.

  • Request Path: /{scope}/providers/Microsoft.Authorization/locks/{lockName}
  • Operation Id: ManagementLocks_GetByScope
  • Default Api Version: 2020-05-01
  • Resource: ManagementLockResource
(Inherited from ArmResource)
GetManagementLocks()

Gets a collection of ManagementLockResources in the ArmResource.

(Inherited from ArmResource)
GetPolicyAssignment(String, CancellationToken)

This operation retrieves a single policy assignment, given its name and the scope it was created at.

  • Request Path: /{scope}/providers/Microsoft.Authorization/policyAssignments/{policyAssignmentName}
  • Operation Id: PolicyAssignments_Get
  • Default Api Version: 2022-06-01
  • Resource: PolicyAssignmentResource
(Inherited from ArmResource)
GetPolicyAssignmentAsync(String, CancellationToken)

This operation retrieves a single policy assignment, given its name and the scope it was created at.

  • Request Path: /{scope}/providers/Microsoft.Authorization/policyAssignments/{policyAssignmentName}
  • Operation Id: PolicyAssignments_Get
  • Default Api Version: 2022-06-01
  • Resource: PolicyAssignmentResource
(Inherited from ArmResource)
GetPolicyAssignments()

Gets a collection of PolicyAssignmentResources in the ArmResource.

(Inherited from ArmResource)
GetTagResource()

Gets an object representing a TagResource along with the instance operations that can be performed on it in the ArmResource.

(Inherited from ArmResource)
LockImmutabilityPolicy(String, CancellationToken)

Sets the ImmutabilityPolicy to Locked state. The only action allowed on a Locked policy is ExtendImmutabilityPolicy action. ETag in If-Match is required for this operation.

  • Request Path. : /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/default/lock.
  • Operation Id. : ImmutabilityPolicies_LockImmutabilityPolicy.
  • Default Api Version. : 2025-08-01.
  • Resource. : ImmutabilityPolicyResource.
LockImmutabilityPolicyAsync(String, CancellationToken)

Sets the ImmutabilityPolicy to Locked state. The only action allowed on a Locked policy is ExtendImmutabilityPolicy action. ETag in If-Match is required for this operation.

  • Request Path. : /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/default/lock.
  • Operation Id. : ImmutabilityPolicies_LockImmutabilityPolicy.
  • Default Api Version. : 2025-08-01.
  • Resource. : ImmutabilityPolicyResource.
TryGetApiVersion(ResourceType, String)

Gets the api version override if it has been set for the current client options.

(Inherited from ArmResource)

Explicit Interface Implementations

Name Description
IJsonModel<ImmutabilityPolicyData>.Create(Utf8JsonReader, ModelReaderWriterOptions)

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

IJsonModel<ImmutabilityPolicyData>.Write(Utf8JsonWriter, ModelReaderWriterOptions)

Writes the model to the provided Utf8JsonWriter.

IPersistableModel<ImmutabilityPolicyData>.Create(BinaryData, ModelReaderWriterOptions)

Converts the provided BinaryData into a model.

IPersistableModel<ImmutabilityPolicyData>.GetFormatFromOptions(ModelReaderWriterOptions)

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

IPersistableModel<ImmutabilityPolicyData>.Write(ModelReaderWriterOptions)

Writes the model into a BinaryData.

Extension Methods

Name Description
GetAuthorizationRoleDefinition(ArmResource, ResourceIdentifier, CancellationToken)

Gets the role definition identified by roleDefinitionId at this resource scope.

GetAuthorizationRoleDefinitionAsync(ArmResource, ResourceIdentifier, CancellationToken)

Gets the role definition identified by roleDefinitionId at this resource scope.

GetAuthorizationRoleDefinitions(ArmResource)

Gets a collection of AuthorizationRoleDefinitionCollection objects within the specified scope.

GetDenyAssignment(ArmResource, String, CancellationToken)

Get the specified deny assignment.

GetDenyAssignmentAsync(ArmResource, String, CancellationToken)

Get the specified deny assignment.

GetDenyAssignments(ArmResource)

Gets a collection of DenyAssignmentCollection objects within the specified scope.

GetLinkerResource(ArmResource, String, CancellationToken)

Returns Linker resource for a given name.

  • Request Path: /{resourceUri}/providers/Microsoft.ServiceLinker/linkers/{linkerName}
  • Operation Id: Linker_Get
  • Default Api Version: 2022-05-01
  • Resource: LinkerResource
<item>MockingTo mock this method, please mock GetLinkerResource(String, CancellationToken) instead.</item>
GetLinkerResourceAsync(ArmResource, String, CancellationToken)

Returns Linker resource for a given name.

  • Request Path: /{resourceUri}/providers/Microsoft.ServiceLinker/linkers/{linkerName}
  • Operation Id: Linker_Get
  • Default Api Version: 2022-05-01
  • Resource: LinkerResource
<item>MockingTo mock this method, please mock GetLinkerResourceAsync(String, CancellationToken) instead.</item>
GetLinkerResources(ArmResource)

Gets a collection of LinkerResources in the ArmResource. <item>MockingTo mock this method, please mock GetLinkerResources() instead.</item>

GetRoleAssignment(ArmResource, String, String, CancellationToken)

Get a role assignment by scope and name.

GetRoleAssignmentAsync(ArmResource, String, String, CancellationToken)

Get a role assignment by scope and name.

GetRoleAssignments(ArmResource)

Gets a collection of RoleAssignmentCollection objects within the specified scope.

GetRoleAssignmentSchedule(ArmResource, String, CancellationToken)

Get the specified role assignment schedule for a resource scope.

GetRoleAssignmentScheduleAsync(ArmResource, String, CancellationToken)

Get the specified role assignment schedule for a resource scope.

GetRoleAssignmentScheduleInstance(ArmResource, String, CancellationToken)

Gets the specified role assignment schedule instance.

GetRoleAssignmentScheduleInstanceAsync(ArmResource, String, CancellationToken)

Gets the specified role assignment schedule instance.

GetRoleAssignmentScheduleInstances(ArmResource)

Gets a collection of RoleAssignmentScheduleInstanceCollection objects within the specified scope.

GetRoleAssignmentScheduleRequest(ArmResource, String, CancellationToken)

Get the specified role assignment schedule request.

GetRoleAssignmentScheduleRequestAsync(ArmResource, String, CancellationToken)

Get the specified role assignment schedule request.

GetRoleAssignmentScheduleRequests(ArmResource)

Gets a collection of RoleAssignmentScheduleRequestCollection objects within the specified scope.

GetRoleAssignmentSchedules(ArmResource)

Gets a collection of RoleAssignmentScheduleCollection objects within the specified scope.

GetRoleEligibilitySchedule(ArmResource, String, CancellationToken)

Get the specified role eligibility schedule for a resource scope.

GetRoleEligibilityScheduleAsync(ArmResource, String, CancellationToken)

Get the specified role eligibility schedule for a resource scope.

GetRoleEligibilityScheduleInstance(ArmResource, String, CancellationToken)

Gets the specified role eligibility schedule instance.

GetRoleEligibilityScheduleInstanceAsync(ArmResource, String, CancellationToken)

Gets the specified role eligibility schedule instance.

GetRoleEligibilityScheduleInstances(ArmResource)

Gets a collection of RoleEligibilityScheduleInstanceCollection objects within the specified scope.

GetRoleEligibilityScheduleRequest(ArmResource, String, CancellationToken)

Get the specified role eligibility schedule request.

GetRoleEligibilityScheduleRequestAsync(ArmResource, String, CancellationToken)

Get the specified role eligibility schedule request.

GetRoleEligibilityScheduleRequests(ArmResource)

Gets a collection of RoleEligibilityScheduleRequestCollection objects within the specified scope.

GetRoleEligibilitySchedules(ArmResource)

Gets a collection of RoleEligibilityScheduleCollection objects within the specified scope.

GetRoleManagementPolicies(ArmResource)

Gets a collection of RoleManagementPolicyCollection objects within the specified scope.

GetRoleManagementPolicy(ArmResource, String, CancellationToken)

Get the specified role management policy for a resource scope.

GetRoleManagementPolicyAssignment(ArmResource, String, CancellationToken)

Get the specified role management policy assignment for a resource scope.

GetRoleManagementPolicyAssignmentAsync(ArmResource, String, CancellationToken)

Get the specified role management policy assignment for a resource scope.

GetRoleManagementPolicyAssignments(ArmResource)

Gets a collection of RoleManagementPolicyAssignmentCollection objects within the specified scope.

GetRoleManagementPolicyAsync(ArmResource, String, CancellationToken)

Get the specified role management policy for a resource scope.

GetSystemAssignedIdentity(ArmResource)

Gets an object representing a SystemAssignedIdentityResource along with the instance operations that can be performed on it in the ArmResource scope.

Applies to