啟用 Azure 儲存體 blob 清查報表
Azure 儲存體 blob 清查功能可讓您一覽儲存體帳戶中的容器、blob、快照集和 blob 版本。 使用清查報表來了解 blob 和容器的各種屬性,例如您的資料大小總計、年齡、加密狀態、非永久性原則和合法保存等等。 此報表供應商務和合規性需求方面的資料總覽。
若要深入了解 blob 清查報表,請參閱 Azure 儲存體 blob 清查。
將具有一或多個規則的原則新增至您的儲存體帳戶,以啟用 blob 清查報表。 使用 Azure 入口網站來新增、編輯或移除原則。
啟用清查報表
登入 Azure 入口網站以開始進行操作。
找出您的儲存體帳戶,然後顯示帳戶概觀。
在 [資料管理] 下方選取 [Blob 清查]。
選取 [新增您的第一個清查規則]。
即會出現 [新增規則] 頁面。
在 [新增規則] 頁面中,命名新規則。
選擇將儲存清查報告的容器。
在 [要清查的物件類型] 下方,選擇是否要建立 blob 或容器的報表。
如果您選取 [Blob],然後在 [Blob 子類型] 下方選擇您要納入報表的 blob 類型,以及是否要在清查報表中包含 blob 版本和/或快照集。
注意
僅針對未啟用階層命名空間功能的帳戶,才會顯示包含 Blob 版本的選項。
您必須在帳戶中啟用版本和快照集,才能在啟用對應選項的情況下儲存新規則。
選取您要納入報表的欄位,以及報表的格式。
選擇產生報表的頻率。
您可以選擇是否要在清查報表中加入前置詞相符,以篩選 blob。
選取 [儲存]。
您可以使用 Azure PowerShell 模組來新增、編輯或移除原則。
開啟 Windows PowerShell 命令視窗。
確定您具備最新的 Azure PowerShell 模組。 請參閱安裝 Azure PowerShell 模組。
使用 Connect-AzAccount
命令登入 Azure 訂用帳戶並遵循畫面上的指示。
Connect-AzAccount
如果您的身分識別與多個訂用帳戶相關聯,請設定使用中的訂用帳戶。
$context = Get-AzSubscription -SubscriptionId <subscription-id>
Set-AzContext $context
使用訂閱識別碼取代 <subscription-id>
預留位置值。
取得定義想要使用儲存體帳戶的儲存體帳戶內容。
$storageAccount = Get-AzStorageAccount -ResourceGroupName "<resource-group-name>" -AccountName "<storage-account-name>"
$ctx = $storageAccount.Context
使用 New-AzStorageBlobInventoryPolicyRule 命令,建立清查規則。 每個規則都會列出報表欄位。 如需報表欄位的完整清單,請參閱 Azure 儲存體 blob 清查。
$containerName = "my-container"
$rule1 = New-AzStorageBlobInventoryPolicyRule -Name Test1 -Destination $containerName -Disabled -Format Csv -Schedule Daily -PrefixMatch con1,con2 `
-ContainerSchemaField Name,Metadata,PublicAccess,Last-modified,LeaseStatus,LeaseState,LeaseDuration,HasImmutabilityPolicy,HasLegalHold
$rule2 = New-AzStorageBlobInventoryPolicyRule -Name test2 -Destination $containerName -Format Parquet -Schedule Weekly -BlobType blockBlob,appendBlob -PrefixMatch aaa,bbb `
-BlobSchemaField name,Last-Modified,Metadata,LastAccessTime
$rule3 = New-AzStorageBlobInventoryPolicyRule -Name Test3 -Destination $containerName -Format Parquet -Schedule Weekly -IncludeBlobVersion -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,LastAccessTime
$rule4 = New-AzStorageBlobInventoryPolicyRule -Name test4 -Destination $containerName -Format Csv -Schedule Weekly -BlobType blockBlob -BlobSchemaField Name,BlobType,Content-Length,Creation-Time
使用 Set-AzStorageBlobInventoryPolicy 來建立 blob 清查原則。 使用 -Rule
參數,將規則傳送至這個命令。
$policy = Set-AzStorageBlobInventoryPolicy -StorageAccount $storageAccount -Rule $rule1,$rule2,$rule3,$rule4
您可以透過 Azure CLI 來新增、編輯或移除原則。
首先,開啟 Azure Cloud Shell,或若已在本機安裝 Azure CLI,請開啟 Windows PowerShell 等命令主控台應用程式。
如果您的身分識別與多個訂用帳戶相關聯,請設定使用中的訂用帳戶。
az account set --subscription <subscription-id>
使用訂閱識別碼取代 <subscription-id>
預留位置值。
在 JSON 文件中定義原則的規則。 以下顯示名為 policy.json
的範例 JSON 檔案內容。
{
"enabled": true,
"type": "Inventory",
"rules": [
{
"enabled": true,
"name": "inventoryPolicyRule2",
"destination": "mycontainer",
"definition": {
"filters": {
"blobTypes": [
"blockBlob"
],
"prefixMatch": [
"inventoryprefix1",
"inventoryprefix2"
],
"includeSnapshots": true,
"includeBlobVersions": true
},
"format": "Csv",
"schedule": "Daily",
"objectType": "Blob",
"schemaFields": [
"Name",
"Creation-Time",
"Last-Modified",
"Content-Length",
"Content-MD5",
"BlobType",
"AccessTier",
"AccessTierChangeTime",
"Snapshot",
"VersionId",
"IsCurrentVersion",
"Metadata"
]
}
}
]
}
使用 az storage account blob-inventory-policy create 命令,建立 blob 清查原則。 使用 --policy
參數提供 JSON 文件的名稱。
az storage account blob-inventory-policy create -g myresourcegroup --account-name mystorageaccount --policy @policy.json
停用清查報告
雖然您可以停用個別報告,但您也可以完全防止 Blob 清查執行。
登入 Azure 入口網站。
找出您的儲存體帳戶,然後顯示帳戶概觀。
在 [資料管理] 下方選取 [Blob 清查]。
選取 [Blob 清查設定],然後在 [Blob 清查設定] 窗格中,清除 [啟用 Blob 清查] 核取方塊,然後選取 [儲存]。
清除 [啟用 Blob 清查] 核取方塊會暫停所有 Blob 清查執行。 如果您想要繼續執行清查,可在稍後選取此核取方塊。
選擇性地啟用存取時間追蹤
您可以選擇啟用 Blob 存取時間追蹤。 啟用存取時間追蹤時,清查報告會根據 Blob 上次以讀取或寫入作業存取的時間,包含 LastAccessTime 欄位。 為了將讀取存取延遲的影響降到最低,只有過去 24 小時的第一次讀取會更新前一次的存取時間。 在相同 24 小時期間內的後續讀取,不會更新前一次的存取時間。 如果在讀取之間修改 Blob,則上次存取時間會是兩個值中的較新值。
若要使用 Azure 入口網站啟用上次存取時間追蹤,請遵循下列步驟:
登入 Azure 入口網站。
找出您的儲存體帳戶,然後顯示帳戶概觀。
在 [資料管理] 下方選取 [Blob 清查]。
選取 [Blob 清查設定],然後在 [Blob 清查設定] 窗格中,選取 [啟用上次存取追蹤] 核取方塊。
若要啟用使用 PowerShell 進行上次存取時間追蹤,請呼叫 Enable-AzStorageBlobLastAccessTimeTracking 命令,如下列範例所示。 請記得以您自己的值取代角括號中的預留位置值:
# Initialize these variables with your values.
$rgName = "<resource-group>"
$accountName = "<storage-account>"
Enable-AzStorageBlobLastAccessTimeTracking -ResourceGroupName $rgName `
-StorageAccountName $accountName `
-PassThru
若要啟用使用 Azure CLI 進行上次存取時間追蹤,請呼叫 az storage account blob-service-properties update 命令,如下列範例所示。 請記得以您自己的值取代角括號中的預留位置值:
az storage account blob-service-properties update \
--resource-group <resource-group> \
--account-name <storage-account> \
--enable-last-access-tracking true
下一步