Share via


New-AzStorageBlobInventoryPolicyRule

Cria um objeto de regra de política de inventário de blob, que pode ser usado em 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

O cmdlet New-AzStorageBlobInventoryPolicyRule cria um objeto de regra de política de inventário de blob, que pode ser usado em Set-AzStorageBlobInventoryPolicy.

Exemplos

Exemplo 1: Criar objetos de regra de política de inventário de blob e, em seguida, definir a política de inventário de blob com os objetos de regra.

$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...}

Estes primeiros 3 comandos criam 3 objetos de regra BlobInventoryPolicy: regra "Test1" para inventário container; regra "Test2" para inventário de blobs; regra "Test3" para inventário de blob com mais campos de esquema, excludePrefix especificado e IncludeDeleted habilitado. O comando a seguir define a política de inventário de blob como uma conta de armazenamento com os 3 objetos de regra e, em seguida, mostra as propriedades atualizadas da política e das regras.

Parâmetros

-BlobSchemaField

Especifica os campos e as propriedades do objeto Blob a ser incluído no inventário. Os valores válidos incluem: Name, Creation-Time, Last-Modified, Content-Length, Content-MD5, BlobType, AccessTier, AccessTierChangeTime, Expiry-Time, hdi_isfolder, Owner, Group, Permissions, Acl, Metadata, LastAccessTime, AccessTierInferred, Tags. 'Nome' é um campo de esquema obrigatório. Os valores de campo de esquema 'Expiry-Time, hdi_isfolder, Owner, Group, Permissions, Acl' são válidos apenas para contas habilitadas para HierarchicalNamespace.O campo 'Tags' só é válido para contas que não sejam HierarchicalNamespace. Se especificar '-IncludeSnapshot', incluirá 'Snapshot' no inventário. Se especificar '-IncludeBlobVersion', incluirá 'VersionId, 'IsCurrentVersion' no inventário.

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

Define os tipos de blob para a regra de política de inventário de blob. Os valores válidos incluem blockBlob, appendBlob, pageBlob. As contas Hns não suportam 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 os campos e as propriedades do objeto de contêiner a ser incluído no inventário. Os valores válidos incluem: Name, Last-Modified, Metadata, LeaseStatus, LeaseState, LeaseDuration, PublicAccess, HasImmutabilityPolicy, HasLegalHold. 'Nome' é um campo de esquema obrigatório.

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 os objetos que têm tempo de criação nos últimos N dias. O valor válido está entre 1 e 36500. O esquema de inventário 'Creation-Time' é obrigatório com este filtro.

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

-DefaultProfile

As credenciais, a conta, o locatário e a assinatura usados para comunicação com o Azure.

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

-Destination

O nome do contêiner onde os arquivos de inventário de blob são armazenados. Deve ser pré-criado.

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

-Disabled

A regra será desativada se for definida.

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

-ExcludePrefix

Define uma matriz de cadeias de caracteres com no máximo 10 prefixos de blob a serem excluídos do inventário.

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

-Format

Especifica o formato dos arquivos de inventário. Os valores possíveis incluem: 'Csv', 'Parquet'

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

-IncludeBlobVersion

A regra será desativada se for definida.

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

-IncludeDeleted

Inclui blob excluído no inventário de blobs. Quando incluir excluir blob, para ContainerSchemaFields, deve incluir 'Deleted, Version, DeletedTime e RemainingRetentionDays'. Para BlobSchemaFields, nas contas de armazenamento habilitadas para HNS, devem incluir 'DeletionId, Deleted, DeletedTime e RemainingRetentionDays', e nas contas desabilitadas Hns devem incluir 'Deleted and RemainingRetentionDays', caso contrário, elas devem ser excluídas.

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

-IncludeSnapshot

A regra será desativada se for definida.

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

-Name

Um nome de regra pode conter qualquer combinação de caracteres alfanuméricos. O nome da regra diferencia maiúsculas de minúsculas. Tem de ser único dentro de uma política.

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

-PrefixMatch

Define uma matriz de cadeias de caracteres para que os prefixos de blob sejam correspondidos..

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

-Schedule

Este campo é usado para agendar uma formação de inventário. Os valores possíveis incluem: 'Diário', 'Semanal'

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

Entradas

None

Saídas

PSBlobInventoryPolicyRule