New-AzStorageBlobInventoryPolicyRule

Set-AzStorageBlobInventoryPolicy で使用できる BLOB インベントリ ポリシー ルール オブジェクトを作成します。

構文

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>]

説明

New-AzStorageBlobInventoryPolicyRule コマンドレットは、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" です。 次のコマンドは、3 つのルール オブジェクトを持つストレージ アカウントに BLOB インベントリ ポリシーを設定し、更新されたポリシーとルールのプロパティを表示します。

パラメーター

-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' は、HierarchyNamespace が有効なアカウントでのみ有効です。'Tags' フィールドは、HierarchyNamespace 以外のアカウントでのみ有効です。 '-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 が含まれます。 ContainerSchemaFields の削除 BLOB を含める場合は、'Deleted, Version, DeletedTime and ReメインingRetentionDays' を含める必要があります。 BlobSchemaFields の場合、HNS が有効なストレージ アカウントでは、'DeletedId、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