重要
注意:根据世纪互联发布的公告,Azure 中国区将于2026年10月1日正式停止提供所有 Microsoft Defender for Cloud 功能。
本文介绍如何使用各种模板(例如 PowerShell、REST API 等)在订阅上启用和配置 Microsoft Defender for Storage(经典)。
注释
截至 2025 年 2 月 5 日,Defender for Storage(经典版)不适用于新订阅。
Microsoft Defender for Storage 是一个 Azure 原生安全智能层,用于检测访问或利用存储帐户的异常和潜在有害尝试。 它使用高级威胁检测功能和 Microsoft Defender 威胁智能 数据来提供上下文安全警报。 这些警报包含用于缓解检测到的威胁并防止未来攻击的步骤。
Microsoft Defender for Storage 持续分析 Azure Blob 存储、Azure Data Lake Storage 和 Azure 文件存储服务的事务。 检测到潜在的恶意活动时,会生成安全警报。 Microsoft Defender for Cloud 显示警报,其中包含可疑活动的详细信息、适当的调查步骤、修正作和安全建议。
分析的 Azure Blob 存储遥测包括获取 Blob、放置 Blob、获取容器 ACL、列出 Blob 和获取 Blob 属性等操作类型。 分析的 Azure 文件存储操作类型的示例包括“获取文件”、“创建文件”、“列出文件”、“获取文件属性”和“放置范围”。
Defender for Storage 经典版无法访问存储帐户数据,不会影响其性能。
Defender for Storage(经典版)的可用性和定价
下表总结了 Defender for Storage(经典版)的可用性、价格、支持的存储类型及云支持情况。
| 方面 | 详细信息 |
|---|---|
| 发布状态: | 正式版 (GA) |
| 定价: | Microsoft Defender for Storage 的计费信息显示在 定价详细信息 和 Azure 门户中的 Defender 计划 页面上。 |
| 受保护的存储类型: |
Blob 存储(标准/高级 StorageV2、块 Blob) Azure 文件存储(通过 REST API 和 SMB) Azure Data Lake Storage Gen2(启用了分层命名空间的标准/高级帐户) |
| 云: |
|
为存储帐户设置每笔交易价格
可以通过多种方式在您的帐户上配置按每笔交易定价的 Microsoft Defender for Storage:
ARM 模板
若要使用 ARM 模板为特定存储帐户启用采用按事务计费的 Microsoft Defender for Storage,请使用用于启用存储高级威胁防护的 ARM 模板。
如果你想在特定存储账户上禁用Defender for Storage:
- 登录到 Azure 门户。
- 访问您的存储帐户。
- 在存储帐户菜单的“安全性 + 网络”部分,选择“Microsoft Defender for Cloud”。
- 选择禁用。
PowerShell
使用 PowerShell 为特定存储帐户启用 Microsoft Defender for Storage 按事务定价:
如果尚未安装,请安装 Azure Az PowerShell 模块。
使用 Connect-AzAccount cmdlet 登录到 Azure 帐户。 详细了解如何使用 Azure PowerShell 登录 Azure。
使用
Enable-AzSecurityAdvancedThreatProtectioncmdlet 为所需的存储帐户启用 Microsoft Defender for Storage:Enable-AzSecurityAdvancedThreatProtection -ResourceId "/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Storage/storageAccounts/<storage-account>/"将
<subscriptionId>、<resource-group>和<storage-account>替换为你的环境的值。
如果你想禁用特定存储账户的逐笔定价,可以用 Disable-AzSecurityAdvancedThreatProtection cmdlet。 该命令会从指定的存储账户中移除 Defender for Storage(经典版)保护:
Disable-AzSecurityAdvancedThreatProtection -ResourceId "/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Storage/storageAccounts/<storage-account>/"
了解更多内容,请参见《使用Microsoft Defender for Cloud的PowerShell》。
Azure CLI
使用 Azure CLI 为特定存储帐户启用以每笔交易定价的 Microsoft Defender for Storage。
如果尚未安装,请安装 Azure CLI。
使用
az login命令登录到 Azure 帐户。 详细了解如何使用 Azure CLI 登录 Azure。使用
az security atp storage update命令为订阅启用 Microsoft Defender for Storage:az security atp storage update \ --resource-group <resource-group> \ --storage-account <storage-account> \ --is-enabled true
小窍门
可以使用 az security atp storage show 命令查看是否在帐户上启用了 Defender for Storage。
若要为订阅禁用 Microsoft Defender for Storage(经典),请使用 az security atp storage update 命令:
az security atp storage update \
--resource-group <resource-group> \
--storage-account <storage-account> \
--is-enabled false
详细了解 az security atp storage 命令。
从按事务计划的受保护订阅中排除存储帐户
如果订阅已启用 Microsoft Defender for Storage,该订阅中的所有当前和将来的 Azure 存储帐户都会受到保护。 可以使用 Azure 门户、PowerShell 或 Azure CLI 从 Defender for Storage 保护中排除特定的存储帐户。
建议在整个订阅上启用 Defender for Storage,以保护其中的所有现有和将来的存储帐户。 但是,在某些情况下,需要从 Defender 保护中排除特定的存储帐户。
从受保护的订阅中排除存储帐户需要执行以下操作:
- 设置标记以阻止订阅启用的继承。
- 禁用 Defender for Storage(经典版)。
在按交易计价的订阅中排除 Azure 存储 账户的保护
若要在 Microsoft Defender for Storage(经典版)中排除 Azure 存储帐户,可以使用:
使用 PowerShell 排除 Azure 存储帐户
请按照以下步骤,通过给账户添加标签并禁用 PowerShell 保护,将该存储账户排除在 Defender for Storage(经典版)保护之外。
如果你还没有安装 Azure Az PowerShell 模块,请安装 Azure Az PowerShell 模块。
使用经过身份验证的帐户,使用
Connect-AzAccountcmdlet 连接到Azure,如使用 Azure PowerShell 登录中所述。使用
Update-AzTagcmdlet 在存储帐户上定义 AzDefenderPlanAutoEnable 标记(将 ResourceId 替换为相关存储帐户的资源 ID):Update-AzTag -ResourceId <resourceID> -Tag @{"AzDefenderPlanAutoEnable" = "off"} -Operation Merge如果你不添加
AzDefenderPlanAutoEnable标签,你的未标记资源将继续接收来自订阅级别启用策略的每日更新。 该策略会在该帐户上再次启用 Defender for Storage。 请参阅使用标记整理 Azure 资源和管理层次结构,详细了解标记。使用
Disable-AzSecurityAdvancedThreatProtectioncmdlet 对相关订阅上的所需帐户禁用 Microsoft Defender for Storage(使用相同的资源 ID):Disable-AzSecurityAdvancedThreatProtection -ResourceId <resourceId>
使用 Azure CLI 排除 Azure 存储帐户
请按照以下步骤,通过给账户添加标签并禁用Azure CLI的保护,将该账户排除在Defender for Storage(经典版)保护之外。
如果尚未安装 Azure CLI,请按照 Azure CLI 文档中的说明安装它。
使用经过身份验证的帐户和
login命令连接到 Azure(如使用 Azure CLI 登录中所述),在系统提示时输入帐户凭据:az cloud set -n AzureChinaCloud az login使用
tag update命令在存储帐户上定义 AzDefenderPlanAutoEnable 标记(将 ResourceId 替换为相关存储帐户的资源 ID):az tag update --resource-id MyResourceId --operation merge --tags AzDefenderPlanAutoEnable=off如果不添加
AzDefenderPlanAutoEnable标记,未标记的资源将继续接收来自订阅级别启用策略的每日更新。 该策略会在该帐户上再次启用 Defender for Storage。小窍门
详细了解 az tag 中的标记。
在相关订阅中,使用
security atp storage命令(使用相同的资源 ID)为所需帐户禁用 Microsoft Defender for Storage。az security atp storage update --resource-group MyResourceGroup --storage-account MyStorageAccount --is-enabled false
排除 Azure Databricks 存储帐户
您可以通过将该标签应用于AzDefenderPlanAutoEnable工作区,从而将 Azure Databricks 工作区存储账户排除在 Defender for Storage(经典版)保护之外。 你可以排除活跃的工作区,或者在新工作区中阻止自动启用。
排除活动 Databricks 工作区
如果已在订阅上启用计划,Microsoft Defender for Storage 可以排除特定的活动 Databricks 工作区存储帐户。
若要排除活动的 Databricks 工作区,请执行以下操作:
登录到 Azure 门户。
导航到 Azure Databricks>
Your Databricks workspace>标签。在“名称”字段中,输入
AzDefenderPlanAutoEnable。在“值”字段中输入
off,然后选择“应用”。
导航到 Microsoft Defender for Cloud>的环境设置>
Your subscription。使用支持的方法之一重新启用 Defender for Storage(经典版)(无法从 Azure 门户启用 Defender for Storage 经典版)。
该AzDefenderPlanAutoEnable标签由Databricks工作区的存储账户继承,并阻止Defender for Storage开启。
注释
不能将标记直接添加到 Databricks 存储帐户或其受管理资源组。
防止在新 Databricks 工作区存储帐户上自动启用
当你创建新的 Databricks 工作区时,你可以添加一个标记,该标记会阻止自动启用你的 Microsoft Defender for Storage 帐户。
若要防止在新的 Databricks 工作区存储帐户上自动启用,请执行以下操作:
在“标记”选项卡中,输入名为
AzDefenderPlanAutoEnable的标记。输入值
off。
继续按照说明创建新的 Azure Databricks 工作区。
Microsoft Defender for Storage 存储帐户继承了 Databricks 工作区中的 AzDefenderPlanAutoEnable 标记,从而导致 Defender for Storage 无法自动启用。
禁用 Microsoft Defender for Storage(经典版)
你可以在订阅层面使用以下工具和模板之一禁用 Defender for Storage(经典版)。
禁用订阅中的逐笔计费
您可以通过以下任一方法在订阅层关闭 Defender for Storage(经典版)按交易定价:
Terraform 模板
若要在订阅级别使用 Terraform 模板禁用采用按事务计费的 Microsoft Defender for Storage(经典版),请将此代码片段添加到模板中,并将你的订阅 ID 填入 parent_id 的值。 该代码片段将 StorageAccounts 的 Microsoft.Security/pricings 资源设置为 Free 层级,从而为该订阅禁用 Defender for Storage(经典版):
resource "azapi_resource" "symbolicname" {
type = "Microsoft.Security/pricings@2022-03-01"
name = "StorageAccounts"
parent_id = "<subscriptionId>"
body = jsonencode({
properties = {
pricingTier = "Free"
}
})
}
详细了解 ARM 模板 AzAPI 参考。
Bicep 模板
要在订阅层面禁用 Microsoft Defender for Storage(经典版),并使用 Bicep 按交易计价,请在你的 Bicep 模板中添加以下内容。 该代码片段部署了 Microsoft.Security/pricings 资源,并将 pricingTier 设置为 Free,从而为该订阅禁用 Defender for Storage(经典版):
resource symbolicname 'Microsoft.Security/pricings@2022-03-01' = {
name: 'StorageAccounts'
properties: {
pricingTier: 'Free'
}
}
详细了解 Bicep 模板 AzAPI 参考。
ARM 模板
要在订阅层面禁用 Microsoft Defender for Storage(经典版),并使用ARM模板按交易定价,请将此 JSON 片段添加到 ARM 模板的资源部分。 该代码片段将 StorageAccounts 的 Microsoft.Security/pricings 资源设置为 Free 定价层,从而为该订阅禁用 Microsoft Defender for Storage(经典版):
{
"type": "Microsoft.Security/pricings",
"apiVersion": "2022-03-01",
"name": "StorageAccounts",
"properties": {
"pricingTier": "Free",
}
}
详细了解 ARM 模板 AzAPI 参考。
PowerShell
若要使用 PowerShell 以按事务定价的方式在订阅级别禁用 Microsoft Defender for Storage(经典),请执行以下操作:
如果尚未安装,请安装 Azure Az PowerShell 模块。
使用
Connect-AzAccountcmdlet 登录到 Azure 帐户。 详细了解如何使用 Azure PowerShell 登录 Azure。 使用Set-AzSecurityPricingcmdlet 为订阅禁用 Microsoft Defender for Storage:Set-AzSecurityPricing -Name "StorageAccounts" -PricingTier "Free"
Azure CLI
若要使用 Azure CLI 以按事务定价的方式在订阅级别禁用 Microsoft Defender for Storage,请执行以下操作:
如果尚未安装,请安装 Azure CLI。
使用
az login命令登录到 Azure 帐户。 详细了解如何使用 Azure CLI 登录 Azure。使用以下命令设置订阅 ID 和名称:
az account set --subscription "<subscriptionId or name>"将
<subscriptionId>替换为订阅 ID。使用
az security pricing create命令为订阅禁用 Microsoft Defender for Storage:az security pricing create -n StorageAccounts --tier "free"
小窍门
可以使用 az security pricing show 命令查看为订阅启用的所有 Defender for Cloud 计划。
要禁用 Defender for Storage(经典版),请将属性值设--tier为 free。
详细了解 az security pricing create 命令。
REST API
要通过 Microsoft Defender for Cloud REST API 在订阅层面启用 Microsoft Defender for Storage,并按交易计费,请使用该端点和实体创建一个 PUT 请求。 以下示例展示了完整的 REST 请求,包括端点 URL 和使用 PerTransaction 子计划将 pricingTier 设置为 Standard 的 JSON 请求主体:
PUT https://management.chinacloudapi.cn/subscriptions/{subscriptionId}/providers/Microsoft.Security/pricings/StorageAccounts?api-version=2022-03-01
{
"properties": {
"pricingTier": "Standard",
"subPlan": "PerTransaction"
}
}
将 {subscriptionId} 替换为订阅 ID。
要在订阅级别禁用 Defender for Storage(经典版),请将 -pricingTier 属性值设置为 Free,并删除 subPlan 参数。
详细了解如何在 HTTP、Java、Go 和 JavaScript 中使用 REST API 更新 Defender 计划。
后续步骤
- 了解有关 Defender for Storage 经典版的常见问题。