New-AzStorageBlobInventoryPolicyRule

Set-AzStorageBlobInventoryPolicy에서 사용할 수 있는 Blob 인벤토리 정책 규칙 개체를 만듭니다.

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

New-AzStorageBlobInventoryPolicyRule cmdlet은 Set-AzStorageBlobInventoryPolicy에서 사용할 수 있는 Blob 인벤토리 정책 규칙 개체를 만듭니다.

예제

예제 1: Blob 인벤토리 정책 규칙 개체를 만든 다음 규칙 개체를 사용하여 Blob 인벤토리 정책을 설정합니다.

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

이 처음 3개 명령은 3개의 BlobInventoryPolicy 규칙 개체를 만듭니다. contaienr 인벤토리에 대한 규칙 "Test1"; Blob 인벤토리에 대한 규칙 "Test2"; 스키마 필드가 더 많고 excludePrefix가 지정되고 IncludeDeleted가 사용하도록 설정된 Blob 인벤토리에 대한 규칙 "Test3"입니다. 다음 명령은 Blob 인벤토리 정책을 3개의 규칙 개체가 있는 Storage 계정으로 설정한 다음 업데이트된 정책 및 규칙 속성을 표시합니다.

매개 변수

-BlobSchemaField

인벤토리에 포함할 Blob 개체의 필드와 속성을 지정합니다. 유효한 값은 이름, 생성 시간, 마지막으로 수정된 콘텐츠 길이, Content-MD5, BlobType, AccessTier, AccessTierChangeTime, Expiry-Time, hdi_isfolder, 소유자, 그룹, 사용 권한, Acl, 메타데이터, LastAccessTime, AccessTierInferred, 태그입니다. 'Name'은 필수 스키마 필드입니다. 스키마 필드 값 'Expiry-Time, hdi_isfolder, Owner, Group, Permissions, Acl'은 HierarchicalNamespace 사용 계정에만 유효합니다. '태그' 필드는 HierarchicalNamespace 이외의 계정에만 유효합니다. '-IncludeSnapshot'을 지정하면 인벤토리에 '스냅샷'이 포함됩니다. '-IncludeBlobVersion'을 지정하면 인벤토리에 'VersionId, 'IsCurrentVersion'이 포함됩니다.

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

Blob 인벤토리 정책 규칙에 대한 Blob 형식을 설정합니다. 유효한 값에는 blockBlob, appendBlob, pageBlob이 포함됩니다. Hns 계정은 pageBlobs를 지원하지 않습니다.

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

-ContainerSchemaField

인벤토리에 포함할 컨테이너 개체의 필드와 속성을 지정합니다. 유효한 값은 Name, Last-Modified, Metadata, LeaseStatus, LeaseState, LeaseDuration, PublicAccess, HasImmutabilityPolicy, HasLegalHold입니다. 'Name'은 필수 스키마 필드입니다.

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

지난 N일 동안 만든 시간이 있는 개체를 필터링합니다. 유효한 값은 1에서 36500 사이입니다. 이 필터를 사용하려면 인벤토리 스키마 'Creation-Time'이 필수입니다.

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

-DefaultProfile

Azure와의 통신에 사용되는 자격 증명, 계정, 테넌트 및 구독입니다.

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

-Destination

Blob 인벤토리 파일이 저장되는 컨테이너 이름입니다. 미리 만들어야 합니다.

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

-Disabled

규칙을 설정하면 규칙을 사용할 수 없습니다.

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

-ExcludePrefix

인벤토리에서 제외할 최대 10개의 Blob 접두사를 가진 문자열 배열을 설정합니다.

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

-Format

인벤토리 파일의 형식을 지정합니다. 가능한 값은 'Csv', 'Parquet'입니다.

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

-IncludeBlobVersion

규칙을 설정하면 규칙을 사용할 수 없습니다.

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

-IncludeDeleted

Blob 인벤토리에 삭제된 Blob을 포함합니다. ContainerSchemaFields에 대해 삭제 Blob을 포함하는 경우 'Deleted, Version, DeletedTime 및 Re기본ingRetentionDays'를 포함해야 합니다. BlobSchemaFields의 경우 HNS 사용 스토리지 계정에서 'DeletionId, Deleted, DeletedTime 및 Re기본ingRetentionDays'를 포함해야 하며, Hns 비활성화 계정에는 'Deleted and Re기본ingRetentionDays'가 포함되어야 합니다. 그렇지 않으면 제외해야 합니다.

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

-IncludeSnapshot

규칙을 설정하면 규칙을 사용할 수 없습니다.

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

-Name

규칙 이름에는 알파 숫자 문자의 조합이 포함될 수 있습니다. 규칙 이름은 대/소문자를 구분합니다. 정책 내에서 고유해야 합니다.

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

-PrefixMatch

일치하는 Blob 접두사에 대한 문자열 배열을 설정합니다.

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

-Schedule

이 필드는 인벤토리 형성을 예약하는 데 사용됩니다. 가능한 값은 'Daily', 'Weekly'입니다.

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

입력

None

출력

PSBlobInventoryPolicyRule