New-AzStorageBlobInventoryPolicyRule

Crea un objeto de regla de directiva de inventario de blobs, que se puede usar en Set-AzStorageBlobInventoryPolicy.

Syntax

New-AzStorageBlobInventoryPolicyRule
   [-Name] <String>
   [-Disabled]
   -Destination <String>
   -Format <String>
   -Schedule <String>
   -BlobSchemaField <String[]>
   -BlobType <String[]>
   [-PrefixMatch <String[]>]
   [-ExcludePrefix <String[]>]
   [-IncludeSnapshot]
   [-IncludeBlobVersion]
   [-IncludeDeleted]
   [-CreationTimeLastNDay <Int32>]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
New-AzStorageBlobInventoryPolicyRule
   [-Name] <String>
   [-Disabled]
   -Destination <String>
   -Format <String>
   -Schedule <String>
   -ContainerSchemaField <String[]>
   [-PrefixMatch <String[]>]
   [-ExcludePrefix <String[]>]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]

Description

El cmdlet New-AzStorageBlobInventoryPolicyRule crea un objeto de regla de directiva de inventario de blobs, que se puede usar en Set-AzStorageBlobInventoryPolicy.

Ejemplos

Ejemplo 1: Crear objetos de regla de directiva de inventario de blobs y, a continuación, establecer la directiva de inventario de blobs con los objetos de regla.

$rule1 = New-AzStorageBlobInventoryPolicyRule -Name Test1 -Destination $containerName -Disabled -Format Csv -Schedule Daily -ContainerSchemaField Name,Metadata,PublicAccess,Last-mOdified,LeaseStatus,LeaseState,LeaseDuration,HasImmutabilityPolicy,HasLegalHold -PrefixMatch con1,con2

$rule2 = New-AzStorageBlobInventoryPolicyRule -Name Test2 -Destination $containerName -Format Parquet -Schedule Weekly  -IncludeSnapshot -BlobType blockBlob,appendBlob -PrefixMatch aaa,bbb `
                -BlobSchemaField name,Creation-Time,Last-Modified,Content-Length,Content-MD5,BlobType,AccessTier,AccessTierChangeTime,Expiry-Time,hdi_isfolder,Owner,Group,Permissions,Acl,Metadata -CreationTimeLastNDay 30
$rule3 = New-AzStorageBlobInventoryPolicyRule -Name Test3 -Destination $containerName -Format Parquet -Schedule Weekly  -IncludeSnapshot -IncludeDeleted -BlobType blockBlob,appendBlob -PrefixMatch aaa,bbb `
                 -ExcludePrefix ccc,ddd -BlobSchemaField name,Last-Modified,BlobType,AccessTier,AccessTierChangeTime,Content-Type,Content-CRC64,CopyId,DeletionId,Deleted,DeletedTime,RemainingRetentionDays

$policy = Set-AzStorageBlobInventoryPolicy -ResourceGroupName "myresourcegroup" -AccountName "mystorageaccount" -Disabled -Rule $rule1,$rule2

$policy

StorageAccountName : mystorageaccount
ResourceGroupName  : myresourcegroup
Name               : DefaultInventoryPolicy
Id                 : /subscriptions/{subscription-Id}/resourceGroups/myresourcegroup/providers/Microsoft.Storage/storageAccounts/mystorageaccount/inventoryPolicies/default
Type               : Microsoft.Storage/storageAccounts/inventoryPolicies
LastModifiedTime   : 5/12/2021 8:53:38 AM
Enabled            : False
Rules              : {Test1, Test2, Test3}

$policy.Rules

Name  Enabled Destination   ObjectType Format  Schedule IncludeSnapshots IncludeBlobVersions IncludeDeleted BlobTypes               PrefixMatch  ExcludePrefix SchemaFields                                            CreationTime
----  ------- -----------   ---------- ------  -------- ---------------- ------------------- -------------- ---------               -----------  ------------- ------------                                            ------------
Test1 False   containername Container  Csv     Daily                                                                                {con1, con2}               {Name, Metadata, PublicAccess, Last-Modified...}                    
Test2 True    containername Blob       Parquet Weekly   True                                                {blockBlob, appendBlob} {aaa, bbb}                 {Name, Creation-Time, Last-Modified, Content-Length...} LastNDays=30
Test3 True    containername Blob       Parquet Weekly   True                                 True           {blockBlob, appendBlob} {aaa, bbb}   {ccc, ddd}    {Name, Last-Modified, BlobType, AccessTier...}

Estos primeros 3 comandos crean 3 objetos de regla BlobInventoryPolicy: regla "Test1" para el inventario de contaienr; regla "Test2" para el inventario de blobs; regla "Test3" para el inventario de blobs con más campos de esquema, excludePrefix especificados y IncludeDeleted habilitado. El comando siguiente establece la directiva de inventario de blobs en una cuenta de almacenamiento con los 3 objetos de regla y, a continuación, muestra las propiedades actualizadas de la directiva y las reglas.

Parámetros

-BlobSchemaField

Especifica los campos y propiedades del objeto Blob que se incluirán en el inventario. Los valores válidos incluyen: Name, Creation-Time, Last-Modified, Content-Length, Content-MD5, BlobType, AccessTier, AccessTierChangeTime, Expiry-Time, hdi_isfolder, Owner, Group, Permissions, Acl, Metadata, LastAccessTime, AccessTierInferred, Tags. 'Name' es un campo de esquema obligatorio. Los valores de campo de esquema 'Expiry-Time, hdi_isfolder, Owner, Group, Permissions, Acl' son válidos solo para las cuentas habilitadas para HierarchicalNamespace.'Tags' solo es válida para las cuentas que no son JerárquicasNamespace. Si especifica "-IncludeSnapshot", incluirá "Snapshot" en el inventario. Si especifica "-IncludeBlobVersion", incluirá "VersionId, "IsCurrentVersion" en el inventario.

Type:String[]
Accepted values:Name, Creation-Time, Last-Modified, Content-Length, Content-MD5, BlobType, AccessTier, AccessTierChangeTime, Expiry-Time, hdi_isfolder, Owner, Group, Permissions, Acl, Metadata, LastAccessTime, AccessTierInferred, Tags, Etag, Content-Type, Content-Encoding, Content-Language, Content-CRC64, Cache-Control, Content-Disposition, LeaseStatus, LeaseState, LeaseDuration, ServerEncrypted, Deleted, RemainingRetentionDays, ImmutabilityPolicyUntilDate, ImmutabilityPolicyMode, LegalHold, CopyId, CopyStatus, CopySource, CopyProgress, CopyCompletionTime, CopyStatusDescription, CustomerProvidedKeySha256, RehydratePriority, ArchiveStatus, x-ms-blob-sequence-number, EncryptionScope, IncrementalCopy, DeletionId, DeletedTime, TagCount
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-BlobType

Establece los tipos de blob para la regla de directiva de inventario de blobs. Los valores válidos incluyen blockBlob, appendBlob, pageBlob. Las cuentas de Hns no admiten pageBlobs.

Type:String[]
Accepted values:blockBlob, pageBlob, appendBlob
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ContainerSchemaField

Especifica los campos y propiedades del objeto contenedor que se incluirán en el inventario. Los valores válidos incluyen: Name, Last-Modified, Metadata, LeaseStatus, LeaseState, LeaseDuration, PublicAccess, HasImmutabilityPolicy, HasLegalHold. 'Name' es un campo de esquema obligatorio.

Type:String[]
Accepted values:Name, Last-Modified, Metadata, LeaseStatus, LeaseState, LeaseDuration, PublicAccess, HasImmutabilityPolicy, HasLegalHold, Etag, DefaultEncryptionScope, DenyEncryptionScopeOverride, ImmutableStorageWithVersioningEnabled, Deleted, Version, DeletedTime, RemainingRetentionDays
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CreationTimeLastNDay

Filtre los objetos que tienen tiempo de creación en los últimos N días. El valor válido está comprendido entre 1 y 36500. El esquema de inventario "Tiempo de creación" es obligatorio con este filtro.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

Credenciales, cuenta, inquilino y suscripción usados para la comunicación con Azure.

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Destination

Nombre del contenedor donde se almacenan los archivos de inventario de blobs. Debe crearse previamente.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Disabled

La regla está deshabilitada si la establece.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ExcludePrefix

Establece una matriz de cadenas con un máximo de 10 prefijos de blobs que se excluirán del inventario.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Format

Especifica el formato de los archivos de inventario. Entre los valores posibles se incluyen: 'Csv', 'Parquet'

Type:String
Accepted values:Csv, Parquet
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-IncludeBlobVersion

La regla está deshabilitada si la establece.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-IncludeDeleted

Incluye blob eliminado en el inventario de blobs. Cuando se incluye la eliminación de blobs, para ContainerSchemaFields, debe incluir "Deleted, Version, DeletedTime y RemainingRetentionDays". Para BlobSchemaFields, en las cuentas de almacenamiento habilitadas para HNS, debe incluir "DeletedId, Deleted, DeletedTime y RemainingRetentionDays", y en las cuentas deshabilitadas de Hns debe incluir "Deleted y RemainingRetentionDays", de lo contrario, deben excluirse.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-IncludeSnapshot

La regla está deshabilitada si la establece.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

Un nombre de regla puede contener cualquier combinación de caracteres alfanuméricos. El nombre de regla distingue mayúsculas de minúsculas. Debe ser único dentro de una directiva.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-PrefixMatch

Establece una matriz de cadenas para los prefijos de blob que se van a buscar coincidencias.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Schedule

Este campo se usa para programar una formación de inventario. Entre los valores posibles se incluyen: "Daily", "Weekly"

Type:String
Accepted values:Daily, Weekly
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

Entradas

None

Salidas

PSBlobInventoryPolicyRule