数据保护概述

在 Azure 存储文档中,数据保护指的是防止存储帐户及其中的数据被删除或修改的策略,以及在数据被删除或修改后恢复数据的策略。 在发生了可能导致数据泄露的事件后,应考虑如何最充分地保护数据,这一点很重要。 本指南可以帮助您提前确定场景所需的数据保护功能。 Azure 存储 还提供灾难恢复和安全和网络方面的选项。 所有这些方法协同工作,确保您的数据得到全面保护。

基本数据保护方面的建议

如果您想为您的存储账户及其所含数据获得基本的数据保护,请采取以下步骤:

  1. 在存储帐户上配置 Azure 资源管理器锁定,以防止帐户被删除或配置发生变化。 了解详细信息...

  2. 为存储帐户启用容器软删除,以恢复已删除的容器及其内容。 了解详细信息...

  3. 启用存储账户的软删除,以恢复被删除或被覆盖的 blob。 了解详细信息...

以下部分将更详细介绍这些选项及其他情景的数据保护选项。 若要防止更广泛的数据丢失方案(例如意外删除帐户或勒索软件),请考虑启用Azure 备份以及帐户内功能。

有关这些功能涉及的成本的概述,请参阅成本注意事项汇总。

数据保护选项概述

下表总结了 Azure 存储中可用于常见数据保护方案的选项。 选择适用于你的情况的方案,以详细了解可供你使用的选项。 并非所有功能都适用于启用了分层命名空间的存储帐户。

场景 数据保护选项 建议 保护福利 可用于数据湖存储
阻止删除或修改存储帐户。 Azure 资源管理器锁定
了解详细信息...
使用 Azure 资源管理器锁定锁定所有存储帐户,以防止删除存储帐户。 防止存储帐户被删除或配置被更改。

无法防止帐户中的容器或 blob 被删除或覆盖。
是
在指定的时间间隔内还原已删除的容器。 容器软删除
了解详细信息...
为所有存储帐户启用容器软删除,最短保留间隔为七天。

启用blob软删除以实现blob数据的最佳保护。

在单独的存储帐户中存储需要不同保留期的容器。
删除的容器及其内容可以在保留期内恢复。

只能还原容器级别的操作(例如删除容器)。 如果删除了容器中的单个 blob,则无法通过容器软删除来还原该容器中的单个 blob。
是
在指定的时间间隔内还原已删除的 blob 或 blob 版本。 Blob 软删除
了解详细信息...
为所有存储帐户启用 blob 软删除,最短保留间隔为七天。

启用容器软删除以实现对 blob 数据的最佳保护。

将需要不同保留期限的 blobs 存储在单独的存储帐户中。
删除的blob或blob版本可以在保留期内恢复。 是
当 blob 被覆盖时,自动将其状态保存为之前版本。 Blob 版本控制
了解详细信息...
当你想自动捕获覆盖和元数据变更,并保留之前版本的数据直到明确删除时,可以启用 blob 版本管理。 若要尽量降低成本,请使用生命周期管理策略自动删除旧版本。

通过启用 Blob 软删除,增加一层保护。 了解详细信息...

将不需要版本控制的 blob 数据存储在不同的帐户中以限制成本。
每个 blob 写入操作都会创建一个新版本。 当你删除一个blob时,当前版本的blob会变成之前的版本。 之前的版本会一直保留,直到被明确删除或被设为当前版本。 否
手动保存 blob 在某一特定时间点的状态。 Blob 快照
了解详细信息...
建议用于特意进行的时间点捕获,或者作为在启用分层命名空间且不支持版本控制的账户上 Blob 版本控制的替代方案。 如果blob被覆盖,可以从快照中恢复。 如果删除该 blob,则快照也将被删除。

当 blob 软删除启用时,覆盖会导致软删除快照的生成。
否
在您可以控制的时间间隔内防止删除 blob 版本。 Blob对象版本的不可变策略
了解详细信息...
为了满足法律或法规遵从性要求等目的,在单个 blob 版本上设置一个不可变性策略以保护业务关键文档。 防止 blob 版本被删除及其元数据被覆盖。 覆盖操作会创建一个新版本。

如果至少有一个容器启用了版本级不可变性,存储帐户也会受到保护,无法删除。 如果容器中至少存在一个 blob,则容器删除将失败。
否
你可以在控制的期限内防止容器及其 blob 被删除或修改。 容器上的不可变性策略
了解详细信息...
在容器上设置一个不可变性策略以保护关键业务文档,例如,为了满足法律或法规遵从性要求。 防止容器及其 blob 被删除和覆盖。

当合法保留或锁定的基于时间的保留策略生效时,存储帐户也会受到保护,无法删除。 未设置任何永久性策略的容器不会受到防删除的保护。
是
将一组块 blob 对象还原到以前的时间点。 时间点还原
了解详细信息...
要使用时间点还原恢复到较早的状态,请将应用程序设计为删除单个块 Blob,而不是删除容器。 可以将一组块 blob 还原为过去特定时间点的状态。

只有对块状 blob 执行的操作会被恢复。 对容器、页 blob 或追加 blob 执行的任何操作都不会还原。
否
blob 可以被删除或覆盖,但数据会定期复制到另一个存储帐户。 Azure Blob 保管库备份
了解详细信息
启用 vaulted backup,让你的数据备份到无法直接访问的 Microsoft 租户中,并保留异地副本。 提供关键容器的选择性备份,并允许将单个容器恢复到与源存储账户不同的存储账户。 是

支持 AzCopy 和 Azure 数据工厂。

不支持对象复制。
异步地将块 Blob 复制到另一区域中的目标帐户。 对象复制 了解更多...... 启用对象复制,以维护另一区域中的块 Blob 的冗余副本,这样当源区域不可用时,你的数据依然可用。 将需要复制的块 Blob 存储在通用 v2 或高级块 Blob 帐户中,因为对象复制只支持这些帐户类型。 写入源账户的块会根据复制策略异步复制到目标账户。 只有块 Blob 被复制;不支持追加 Blob 和页 Blob,并且对象复制也无法防止账户内单个 Blob 被意外删除。 是

按资源类型进行的数据保护

下表根据所保护的资源总结了 Azure 存储数据保护选项。

数据保护选项 保护帐户免被删除 保护容器免被删除 保护对象免被删除 保护数据对象免被覆盖
Azure 资源管理器锁定 是 否 否 否
容器软删除 否 是 否 否
Blob 软删除 否 否 是 是
Blob 版本管理6 否 否 是 是
Blob快照6 否 否 否 是
Blob对象版本的不可变策略 Yes1 是2 是 是3
容器上的不可变性策略 是4 是 是 是
时间点恢复5 否 否 是 是
Azure Blob 保管库备份 否 是 是 是
对象复制7 否 是 是 是
将数据复制到第二个账户的自行开发的解决方案6 否 是 是 是

1 如果至少有一个容器启用了版本级别的不可变存储,删除存储帐户失败。
2 如果容器中至少存在一个 blob,无论策略是锁定还是解锁,容器删除都会失败。
3 覆盖当前版本 blob 的内容会生成一个新版本。 不可变性策略保护版本的元数据不被覆盖。
4 当容器范围内存在法律保留或锁定的基于时间的保留策略时,存储账户同样受到保护,防止被删除。
5 目前不支持Data Lake Storage工作负载。
6 AzCopy 和 Azure 数据工厂 是支持 Blob 存储 和 Data Lake Storage 工作负载的选项。 仅 blob 存储工作负载支持对象复制。
7 复制的副本会保留在目标账户中。 对象复制不能阻止删除源账户中的 blob,且复制是异步的,因此最近的写入可能尚未出现在目标中。

基于资源类型的数据恢复操作

如果需要恢复已覆盖或已删除的数据,则如何继续取决于已启用的数据保护选项以及受影响的资源。 下表描述了可以执行哪些操作来恢复数据。

删除或覆盖的资源 可能的恢复操作 恢复的要求
存储帐户 尝试恢复已删除的存储帐户
了解详细信息...
存储帐户最初是用 Azure 资源管理器部署模型创建的,并且是在过去 14 天内删除。 删除原始帐户后,尚未创建同名的新存储帐户。
容器 恢复软删除容器及其内容
了解详细信息...
已启用容器软删除并且容器软删除保留期尚未过期。
容器和 Blob 还原另一个存储帐户中的数据 所有容器和 blob 操作都已有效地复制到另一个存储帐户。
Blob 恢复已软删除的 blob
了解详细信息...
已启用 blob 软删除,且软删除保留间隔尚未过期。
块 Blob 组 将一组块 blob 恢复到之前某个时间点的状态1
了解详细信息...
已启用时间点还原,且还原点在保留间隔内。 存储帐户未泄露或损坏。
Blob 快照 恢复软删除快照1
了解详细信息...
Blob软删除已启用,你覆盖了blob以创建软删除快照,且软删除保留期还没过。 或者,blob软删除是开启的,你删除了快照,软删除的保留时间还没过期。
Blob 版本 恢复软删除的版本1
了解详细信息...
已启用 blob 软删除,且软删除保留间隔尚未过期。

1 目前不支持 Data Lake Storage 工作负载。

成本注意事项摘要

下表总结了本指南中所述的各种数据保护选项的成本注意事项。 启用或配置以下功能无需收费,但请考虑这些功能在运行时产生的成本。

数据保护选项 成本注意事项
存储帐户的 Azure 资源管理器 锁定 在存储帐户上配置锁定是免费的。
容器软删除 软删除容器中的数据按与活跃数据相同的费率计费,直到软删除容器被永久删除。
Blob 软删除 软删除的blob数据在被永久删除前按与活跃数据相同的费率计费。

当 blob 被覆盖或删除时,你不会为自动生成快照或版本的事务计费,但对“撤销 Blob”操作的调用将按写入事务费率计费。

启用对频繁被覆盖数据的软删除可能会增加容量费用和列表延迟。 为了衡量影响,Azure建议从至少七天的保留期开始。 更多信息请参见 定价与计费。
Blob 版本控制 启用 blob 版本控制后,账户中对 blob 的每次写入都会生成新版本,这可能导致容量成本增加。

你付费购买基于唯一区块或页面的 blob 版本。 因此,随着基础 blob 偏离特定版本,成本也会随之增加。 更改一个Blob或Blob版本的等级可能会影响计费。 有关详细信息,请参阅定价和计费。

使用 生命周期管理 根据需要删除旧版本以控制成本。
Blob 快照 你根据独特的块或页面为快照中的数据付费。 因此,随着基础 blob 与快照分离,成本也会随之增加。 更改blob或快照的层级可能会影响计费。 有关详细信息,请参阅定价和计费。

使用 生命周期管理 根据需要删除较旧的快照,以控制成本。
Blob对象版本的不可变策略 在 blob 版本上创建、修改或删除基于时间的保留策略或法定保留策略会产生写入事务费用。
容器上的不可变性策略 不可变数据的定价与可变数据相同。 计费会持续,直到数据可变并被删除。
时间点还原 启用时间点还原还会启用 blob 版本控制、软删除和更改源,这些都可能导致其他费用。

执行还原操作时,会按时间点还原收费。 还原操作的成本取决于要还原的数据量。 有关详细信息,请参阅定价和计费。
封存备份 对于 Vaulted Backup,你会产生备份存储费用或实例费用,以及在已备份的源账户上产生的源端成本(与对象复制相关)。 请参阅定价。
对象复制 配置对象复制免费,包括启用变更订阅源和 blob 版本控制以及添加复制策略。 对象复制需要更改源和版本控制,这两者都可能导致其他费用。

在目的账户中维护复制数据会产生容量成本,包括blob和每个blob版本的存储成本。 如果目的账户位于与源账户不同的区域,复制数据也会产生出站流量费用。

对象复制会产生交易成本:源账户的写入交易费用,以及目标账户的读写交易费用,包括读取变更信息流记录的成本。 有关详细信息,请参阅 计费。
将数据复制到另一个存储帐户 在第二个存储帐户中维护数据将产生容量和事务成本。 如果第二个存储帐户所在的区域不同于源帐户,则将数据复制到第二个帐户将额外产生传出流量费用。

后续步骤