Share via


New-AzStorageBlobInventoryPolicyRule

建立 Blob 清查原則規則物件,可用於 Set-Az 儲存體 BlobInventoryPolicy。

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-Az 儲存體 BlobInventoryPolicyRule Cmdlet 會建立 Blob 清查原則規則物件,可在 Set-Az 儲存體 BlobInventoryPolicy 中使用。

範例

範例 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 規則對象:規則 “Test1” for contaienr inventory;Blob 清查的規則 “Test2” ;Blob 清查的規則 「Test3」,其中包含更多架構欄位、已指定 excludePrefix,以及已啟用 IncludeDeleted。 下列命令會將 Blob 清查原則設定為具有 3 個規則物件的 儲存體 帳戶,然後顯示更新的原則和規則屬性。

參數

-BlobSchemaField

指定要包含在清查中的 Blob 物件的欄位和屬性。 有效值包括: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' 是必要的架構欄位。 架構域值 'Expiry-Time, hdi_isfolder, Owner, Group, Permissions, Acl' 僅適用於已啟用 HierarchicalNamespace 的帳戶。'Tags' 字段僅適用於非階層式Namespace 帳戶。 如果指定 『-IncludeSnapshot』,則會在清查中包含 『Snapshot』。 如果指定 '-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。 當包含刪除 Blob 時,ContainerSchemaFields 必須包含 'Deleted、Version、DeletedTime 和 RemainingRetentionDays'。 若為 BlobSchemaFields,在已啟用 HNS 的記憶體帳戶上,必須包含 'DeleteId、Deleted、DeletedTime 和 RemainingRetentionDays',而停用的 Hns 帳戶必須包含 'Deleted 和 RemainingRetentionDays',否則必須排除它們。

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