Blob 虛刪除可保護個別的 Blob 及其版本、快照集和中繼資料,將刪除的資料保留在系統中一段指定時間,避免不小心刪除或覆寫資料。 在保留期間內,您可以將 Blob 還原至刪除時的狀態。 保留期限到期後,即會永久刪除該 Blob。 如需關於 Blob 虛刪除的詳細資訊,請參閱 Blob 的虛刪除。
Blob 虛刪除是 Blob 資料的完整資料保護策略的一部分。 若要深入了解 Microsoft 的資料保護建議,請參閱資料保護概觀。
啟用 Blob 虛刪除
你可以隨時透過 Azure 內建政策、Azure 入口網站、PowerShell 或 Azure CLI 來啟用或停用儲存帳號的軟刪除。
要透過 Azure 內建政策大規模啟用 blob 和容器軟刪除,請參考「配置儲存帳號上的 blob 和容器軟刪除」。
當您使用 Azure 入口網站建立新的儲存體帳戶時,預設會啟用 Blob 虛刪除。 當您建立新的儲存體帳戶時,啟用或停用 Blob 虛刪除的設定位於 資料保護 索引標籤上。如需有關建立儲存體帳戶的詳細資訊,請參閱 建立儲存體帳戶。
若要使用 Azure 入口網站為現有的儲存體帳戶啟用 Blob 虛刪除,請遵循下列步驟:
- 在 Azure 入口網站中,瀏覽至您的儲存體帳戶。
- 在資料管理下找到資料保護選項。
- 在 [復原] 區段中,選取 [開啟 Blob 的虛刪除]。
- 輸入 1 到 365 天之間的保留期限。 Microsoft 建議的最短保留期間為七天。
- 儲存您的變更。
用 PowerShell 建立新儲存帳號時,Blob 軟刪除功能不會啟用。 你可以在新帳號建立後啟用 blob 軟刪除。
要啟用現有儲存帳號的 Blob 軟刪除,請呼叫 Enable-AzStorageBlobDeleteRetentionPolicy 指令,並指定保留期限(天數)。
下列範例會啟用 Blob 虛刪除,並將保留期間設定為七天。 請將括號內的佔位數值替換成你自己的數值:
Enable-AzStorageBlobDeleteRetentionPolicy -ResourceGroupName <resource-group> `
-StorageAccountName <storage-account> `
-RetentionDays 7
若要檢查 Blob 虛刪除的現行設定,請呼叫 Get-AzStorageBlobServiceProperty 命令:
$properties = Get-AzStorageBlobServiceProperty -ResourceGroupName <resource-group> `
-StorageAccountName <storage-account>
$properties.DeleteRetentionPolicy.Enabled
$properties.DeleteRetentionPolicy.Days
用 Azure CLI 建立新儲存帳號時,Blob 軟刪除功能是沒有啟用的。 你可以在新帳號建立後啟用 blob 軟刪除。
若要使用 Azure CLI 為現有的儲存體帳戶啟用 blob 虛刪除,請呼叫 az storage account blob-service-properties update 指令,並指定保留期限(以天為單位)。
下列範例會啟用 Blob 虛刪除,並將保留期間設定為七天。 請將括號內的佔位數值替換成你自己的數值:
az storage account blob-service-properties update --account-name <storage-account> \
--resource-group <resource-group> \
--enable-delete-retention true \
--delete-retention-days 7
若要檢查 Blob 虛刪除的現行設定,請呼叫 az storage account blob-service-properties show 命令:
az storage account blob-service-properties show --account-name <storage-account> \
--resource-group <resource-group>
若要使用 Azure Resource Manager 範本啟用 Blob 虛刪除,請建立可設定 deleteRetentionPolicy 屬性的範本。 下列步驟描述如何在 Azure 入口網站中建立範本。
在 Azure 入口網站中,選擇 建立資源。
在 搜尋 Marketplace 中,輸入 部署自定義範本,然後按 ENTER。
選擇在編輯器中建置自己的範本。
在範本編輯器中,貼上以下 JSON。 以您的儲存體帳戶名稱取代 <account-name> 預留位置。
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {},
"variables": {},
"resources": [
{
"type": "Microsoft.Storage/storageAccounts/blobServices",
"apiVersion": "2023-04-01",
"name": "<account-name>/default",
"properties": {
"deleteRetentionPolicy": {
"enabled": true,
"days": 7
}
}
}
]
}
指定保留期間。 預設值為 7。
儲存範本。
指定帳戶的資源群組,然後選擇 檢閱 + 建立 按鈕來部署範本,並啟用容器虛刪除。
啟用 Blob 虛刪除 (階層命名空間)
Blob 虛刪除也可以保護已啟用階層命名空間功能之帳戶中的 Blob 和目錄。
若要使用 Azure 入口網站為您的儲存體帳戶啟用 Blob 虛刪除,請遵循下列步驟:
- 在 Azure 入口網站中,瀏覽至您的儲存體帳戶。
- 在資料管理下找到資料保護選項。
- 在 復原 區段中,選取 啟用 Blob 的虛刪除。
- 請輸入 1 到 365 天的保留期。 Microsoft 建議的最短保留期間為七天。
- 儲存您的變更。
安裝最新的 PowershellGet 模組。 然後,關閉並重新開啟 PowerShell 主控台。
Install-Module PowerShellGet -Repository PSGallery -Force
安裝 Az.Storage 預覽模組。
Install-Module Az.Storage -Repository PsGallery -RequiredVersion 3.7.1-preview -AllowClobber -AllowPrerelease -Force
欲了解更多如何安裝 PowerShell 模組的資訊,請參閱「安裝 Azure PowerShell 模組」。
使用儲存體帳戶金鑰、連接字串或 Microsoft Entra ID 來取得儲存體帳戶授權。 如需詳細資訊,請參閱連線到帳戶。
下列範例會使用儲存體帳戶金鑰取得授權。
$ctx = New-AzStorageContext -StorageAccountName '<storage-account-name>' -StorageAccountKey '<storage-account-key>'
若要使用 PowerShell 啟用 Blob 虛刪除,請使用 Enable-AzStorageDeleteRetentionPolicy 命令,並指定保留期間 (以天為單位)。
下列範例會啟用帳戶的虛刪除,並將保留期間設定為 4 天。
Enable-AzStorageDeleteRetentionPolicy -RetentionDays 4 -Context $ctx
若要檢查 Blob 虛刪除的現行設定,請使用 Get-AzStorageServiceProperty 命令:
Get-AzStorageServiceProperty -ServiceType Blob -Context $ctx
開啟 Azure Cloud Shell,或者如果你在本地安裝了 Azure CLI,也可以開啟像 Windows PowerShell 這樣的指令控制台應用程式。
安裝 storage-preview 延伸模組。
az extension add -n storage-preview
連線至您的儲存體帳戶。 如需詳細資訊,請參閱連接到帳戶。
要啟用 Azure CLI 的軟刪除,請呼叫指令az storage fs service-properties update並指定保留期限(以天數計)。
下列範例會啟用 Blob 和目錄虛刪除,並將保留期間設定為 5 天。
az storage fs service-properties update --delete-retention --delete-retention-period 5 --auth-mode login
若要檢查 Blob 虛刪除的現行設定,請呼叫 az storage fs service-properties update 命令:
az storage fs service-properties update --delete-retention false --connection-string $con
若要使用 Azure Resource Manager 範本啟用 Blob 虛刪除,請建立可設定 deleteRetentionPolicy 屬性的範本。 下列步驟描述如何在 Azure 入口網站中建立範本。
在 Azure 入口網站中,選擇 建立資源。
在 搜尋 Marketplace 中,輸入 部署自訂範本,然後按 ENTER。
選擇 在編輯器中建置自己的範本。
在範本編輯器中,貼上以下 JSON。 以您的儲存體帳戶名稱取代 <account-name> 預留位置。
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {},
"variables": {},
"resources": [
{
"type": "Microsoft.Storage/storageAccounts/blobServices",
"apiVersion": "2023-04-01",
"name": "<account-name>/default",
"properties": {
"deleteRetentionPolicy": {
"enabled": true,
"days": 7
}
}
}
]
}
指定保留期間。 預設值為 7。
儲存範本。
指定帳戶的資源群組,然後選擇 檢閱 + 建立 按鈕來部署範本,並啟用容器虛刪除。
下一步