Azure Storage のドキュメントでは、データ保護とは、ストレージ アカウントとその中のデータが削除または変更されないようにしたり、削除または変更されたデータを復元したりするための戦略を指します。 データが危険にさらされる可能性があるインシデントが発生する前に、データを最適に保護する方法を検討することが重要です。 このガイドは、あなたのケースに必要なデータ保護機能を事前に判断するのに役立ちます。 Azure Storageは障害復旧やセキュリティ、ネットワークのオプションも提供しています。 これらすべての方法は連携して、あなたのデータを包括的に保護します。
基本的なデータ保護に関する推奨事項
ストレージアカウントおよびその中に含まれるデータに対して基本的なデータ保護を望む場合は、以下のステップを踏みます。
Azure Resource Manager ロックをストレージ アカウントで構成して、アカウントが削除または構成変更されないようにします。 詳細を見る...
ストレージ アカウントに対してコンテナーの論理的な削除を有効にして、削除されたコンテナーとその内容を回復します。 詳細はこちら...
ストレージアカウントでBlobソフト削除を有効にして、削除または上書きされたBlobを復元してください。 詳細情報を見る...
以下のセクションでは、これらの選択肢や他のシナリオにおけるデータ保護オプションについてより詳しく説明しています。 アカウントの誤削除やランサムウェアなど、より広範なデータ損失シナリオから保護するには、アカウント内機能に加えてAzure Backupを有効にすることを検討してください。
これらの機能にかかるコストの概要については、「コストに関する考慮事項のまとめ」を参照してください。
ヒント
ストレージアカウントの保護戦略を強化するためのアドバイスを得るにはAzure Copilotをご利用ください。 詳細については、「 Azure Copilot を使用してストレージ アカウントを管理および移行する」を参照してください。
データ保護オプションの概要
次の表は、一般的なデータ保護のシナリオに対して Azure Storage で使用できるオプションをまとめたものです。 状況に応じたシナリオを選択して、使用可能なオプションの詳細を確認してください。 階層型名前空間が有効になっているストレージ アカウントでは、現時点では一部の機能が利用できません。
| シナリオ | データ保護オプション | 推奨事項 | 保護の利点 | Data Lake Storage で使用可能 |
|---|---|---|---|---|
| ストレージ アカウントの削除または変更を防止します。 | Azure Resource Manager ロック 詳細情報を見る... |
ストレージ アカウントが削除されないように、Azure Resource Manager ロックを使用してすべてのストレージ アカウントをロックします。 | ストレージ アカウントが削除または構成変更されないようにします。 アカウントのコンテナーまたは BLOB は削除または上書きから保護されません。 |
はい |
| 指定された期間中、削除されたコンテナーを復元します。 | コンテナーのソフト削除 詳細を見る... |
すべてのストレージ アカウントに対してコンテナーの論理的な削除を有効にします。最小保有期間は 7 日間です。 ブロブデータを最適に保護するには、Blob の論理削除を有効にします。 異なる保有期間を必要とするコンテナーを別のストレージ アカウントに格納します。 |
削除されたコンテナとその内容は保持期間内に復元可能です。 コンテナー レベルの操作 (コンテナーの削除など) のみを復元できます。 コンテナーの論理的な削除を有効にしても、コンテナー内の個々の BLOB は、その BLOB が削除されている場合に復元できるようにはなりません。 |
はい |
| 指定された期間中、削除された BLOB または BLOB バージョンを復元します。 | Blob の論理削除 詳細情報を見る... |
すべてのストレージ アカウントに対して BLOB の論理的な削除を有効にします。最小保有期間は 7 日間です。 Blobデータを最適に保護するには、コンテナのソフト削除を有効にしてください。 異なる保持期間を必要とする blob は、別々のストレージ アカウントに格納します。 |
削除されたブロブまたはブロブ バージョンは、保持期間内に復元できます。 | はい |
| 上書き時に、以前のバージョンの BLOB の状態を自動的に保存します。 | Blob バージョン管理 詳細はこちら... |
自動で上書きやメタデータの変更をキャプチャし、過去のバージョンを明示的に削除するまで保持したい場合は、ブロブのバージョン管理を有効にしてください。 コストを最小限に抑えるために、ライフサイクル管理ポリシーやストレージ アクション タスクを使って古いバージョンを自動的に削除できます。 追加の保護層としてブロブソフト削除を有効にしてください。 詳細を見る... コストを制限するために、バージョン管理を必要としない BLOB データを別のアカウントに格納します。 |
BLOB のあらゆる書き込み操作で、新しいバージョンを作成します。 ブロブを削除すると、ブロブの現在のバージョンは以前のバージョンになります。 以前のバージョンは明示的に削除されるまで保持されるか、現行版に昇格できます。 | いいえ |
| 指定された時点での BLOB の状態を手動で保存します。 | BLOB スナップショット 詳細を見る... |
意図的なポイントインタイムキャプチャや、階層的な名前空間を持つアカウントでバージョン管理ができない場合のブロブバージョン管理の代替として推奨されます。 | ブロブは上書きされてもスナップショットから復元できます。 BLOB が削除された場合は、スナップショットも削除されます。 ブロブソフト削除を有効にすると、上書きによってソフト削除スナップショットが作成されます。 |
いいえ |
| 制御対象の期間中、BLOB のバージョンの削除を防止します。 | BLOB バージョンのイミュータビリティ ポリシー 詳細はこちら... |
たとえば、法律または規制コンプライアンス要件を満たすために、ビジネス クリティカルなドキュメントを保護するように個別の BLOB のバージョンの不変ポリシーを設定します。 | BLOB のバージョンが削除されたり、そのメタデータが上書きされたりしないように保護します。 上書き操作を行うと、新しいバージョンが作成されます。 少なくとも 1 つのコンテナーでバージョンレベルの不変性が有効になっている場合は、ストレージ アカウントも削除されないよう保護されます。 コンテナーに少なくとも 1 つの BLOB が存在する場合、コンテナーの削除は失敗します。 |
いいえ |
| ユーザーが指定した期間、コンテナーとその BLOB が削除または変更されないようにします。 | コンテナーの不変ポリシー 詳細を見る... |
たとえば、法律または規制コンプライアンス要件を満たすために、ビジネス クリティカルなドキュメントを保護するようにコンテナーの不変ポリシーを設定します。 | コンテナーとその BLOB をすべての削除と上書きから保護します。 訴訟ホールドまたはロックされた時間ベースの保有ポリシーが有効になっている場合、ストレージ アカウントも削除から保護されます。 不変ポリシーが設定されていないコンテナーは、削除から保護されません。 |
はい |
| 一組のブロック BLOB を以前の時点に復元します。 | ポイントインタイム復元 詳細はこちら... |
ポイントタイム リストアを使用して以前の状態に戻すには、コンテナーを削除するのではなく、個々のブロック BLOB を削除するようにアプリケーションを設計します。 | 一連のブロック BLOB を過去の特定の時点の状態に戻すことができます。 ブロック BLOB に対して実行された操作のみが元に戻ります。 コンテナー、ページ BLOB、または追加 BLOB に対して実行された操作は元に戻されません。 |
いいえ |
| BLOB を削除または上書きできますが、データは定期的に 2 つ目のストレージ アカウントにコピーされます。 | Azure Blob コンテナー バックアップ 詳細を見る |
コンテナー バックアップを有効にすると、データへの直接アクセスが許可されていない Microsoft テナントに、データのオフサイトコピーがバックアップされます。 | 重要なコンテナの選択的バックアップを提供し、元のストレージアカウントとは異なるストレージアカウントに個別のコンテナを復元できるようにします。 | はい AzCopy と Azure Data Factory がサポートされています。 オブジェクトのレプリケーションはサポートされません。 |
| ブロック ブロブを別のリージョンにあるコピー先アカウントに非同期でコピーします。 | オブジェクトレプリケーション 詳細はこちら... | オブジェクトレプリケーションを有効にして、別のリージョンにあるブロックブロブの冗長コピーを維持し、元のリージョンが利用できなくなった場合でもデータを利用可能に保ちます。 レプリケーションが必要なブロック BLOB は、汎用 v2 アカウントまたは Premium ブロック BLOB アカウントに保存してください。オブジェクト レプリケーションでサポートされるのは、これらのアカウントの種類のみであるためです。 | 送信元アカウントに書き込まれたブロックブロブは、レプリケーションポリシーに従って非同期的に宛先アカウントにコピーされます。 複製されるのはブロックブロブのみで、付加ブロブやページブロブはサポートされておらず、オブジェクトレプリケーションはアカウント内の個々のブロブの誤削除を防ぐ機能がありません。 | はい |
リソースの種類別のデータ保護
次の表は、保護対象のリソースに応じて Azure Storage のデータ保護オプションをまとめたものです。
| データ保護オプション | アカウントが削除されないように保護します | コンテナーが削除されないように保護します | オブジェクトの削除を防止 | オブジェクトが上書きされるのを防止する |
|---|---|---|---|---|
| Azure Resource Manager ロック | はい | いいえ | いいえ | いいえ |
| コンテナーのソフト削除 | いいえ | はい | いいえ | いいえ |
| Blob のソフト削除 | いいえ | いいえ | はい | はい |
| Blob バージョン管理6 | いいえ | いいえ | はい | はい |
| ブロブスナップショット6 | いいえ | いいえ | いいえ | はい |
| blob バージョンのイミュータビリティ ポリシー | はい1 | はい2 | はい | ○3 |
| コンテナーの不変ポリシー | はい4 | はい | はい | はい |
| ポイントインタイム復元5 | いいえ | いいえ | はい | はい |
| Azure Blob コンテナー バックアップ | いいえ | はい | はい | はい |
| オブジェクトレプリケーション7 | いいえ | はい | はい | はい |
| データを2つ目のアカウントにコピーするための独自実装のソリューション6 | いいえ | はい | はい | はい |
1 ストレージアカウントの削除は、バージョンレベルの不変ストレージが有効になっているコンテナが少なくとも1つあれば失敗します。
2 コンテナ内に少なくとも 1 つのブロブが存在する場合、ポリシーがロックされているかロック解除されているかに関係なく、コンテナの削除は失敗します。
3 現在のバージョンの内容を上書きすると新しいバージョンが作成されます。 不変ポリシーは、バージョンのメタデータが上書きされないように保護します。
4 法的保留やロックされた時間ベースの保持ポリシーがコンテナの範囲で有効である一方で、ストレージアカウントは削除からも保護されます。
5 Data Lake Storage ワークロードでは現在サポートされていません。
6 AzCopy と Azure Data Factory は、Blob Storage と Data Lake Storage の両方のワークロードで利用できるオプションです。 オブジェクト レプリケーションは、Blob Storage ワークロードでのみサポートされています。
7 複製されたコピーは宛先アカウントに保持されます。 オブジェクト レプリケーションでは、ソース アカウント内の BLOB の削除を防ぐことはできません。また、レプリケーションは非同期であるため、最近の書き込みが宛先にまだ反映されていない可能性があります。
リソースタイプに基づくデータ復旧アクション
上書きまたは削除されたデータを回復する必要がある場合の対処方法は、有効にしたデータ保護オプションと影響を受けたリソースによって異なります。 次の表では、データを回復するために実行できるアクションについて説明します。
| 削除または上書きされたリソース | 考えられる回復アクション | 復旧の要件 |
|---|---|---|
| ストレージ アカウント | 削除済みストレージ アカウントの回復を試みる 詳細を見る… |
ストレージ アカウントは、最初は Azure Resource Manager デプロイ モデルを使用して作成され、過去 14 日以内に削除された。 元のアカウントが削除されて以来、同じ名前の新しいストレージ アカウントが作成されていない。 |
| コンテナー | 論理削除されたコンテナーとその内容を復元する 詳細を見る... |
コンテナーの論理的な削除が有効になっており、コンテナーの論理的な削除の保有期間がまだ過ぎていない。 |
| コンテナーと BLOB | 2 つ目のストレージ アカウントからデータを復元する | すべてのコンテナーと BLOB の操作が効果的に 2 つ目のストレージ アカウントにレプリケートされている。 |
| ブロッブ | 論理的に削除された BLOB を回復する 詳細情報はこちら... |
Blob のソフト削除が有効になっており、ソフト削除の保持期間が過ぎていない。 |
| ブロック BLOB のセット | ブロック BLOB のセットを以前の時点の状態に復旧する1 詳細はこちら… |
ポイントインタイム リストアが有効になっており、復元ポイントが保有期間内にある。 ストレージ アカウントが侵害されておらず、破損もしていない。 |
| BLOB スナップショット | ソフト削除されたスナップショット1を復元する 詳細を見る... |
Blobのソフト削除が有効で、Blobを上書きしてソフト削除スナップショットを作成し、ソフト削除の保持期間がまだ終了していません。 あるいは、blobソフト削除が有効で、スナップショットを削除したのにソフト削除の保持期間が切れていない場合もあります。 |
| BLOB バージョン | 論理的に削除されたバージョンを回復する1 詳細情報... |
BLOB の論理的な削除が有効になっており、論理的な削除の保有期間が過ぎていない。 |
1 現在、Data Lake Storage ワークロードではサポートされていません。
コストに関する考慮事項の概要
次の表は、このガイドで説明されているさまざまなデータ保護オプションのコストに関する考慮事項をまとめたものです。 以下の機能を有効にしたり設定したりするのに料金はかかりませんが、その動作が伴うコストを考慮してください。
| データ保護オプション | コストに関する検討事項 |
|---|---|
| ストレージ アカウントに対する Azure Resource Manager ロック | ストレージ アカウントでのロックの構成は無料。 |
| コンテナーの論理的な削除 | ソフト削除されたコンテナ内のデータは、ソフト削除コンテナが永久に削除されるまで、アクティブなデータと同じ料金で請求されます。 |
| Blob のソフト削除 | ソフト削除されたブロブデータは、永久に削除されるまでアクティブなデータと同じ料金で請求されます。 ブロブが上書きまたは削除された際に自動的にスナップショットやバージョンを生成するトランザクションには請求されませんが、Blobの削除解除操作の呼び出しには書き込みトランザクションレートで請求されます。 頻繁に上書きされるデータに対して論理削除を有効にすると、キャパシティ料金が増加したり、リスト表示の遅延が生じたりする可能性があります。 影響を測るために、Microsoftは最低7日間の保持期間から始めることを推奨しています。 詳細については、価格と請求を参照してください。 |
| BLOB バージョン管理 | ブロブのバージョン管理を有効にすると、アカウント内のブロブへの書き込みごとに新しいバージョンが作成され、容量コストが増加する可能性があります。 Blob バージョンの料金は、ユニークなブロックまたはページに基づいて決まります。 そのため、ベース BLOB が特定のバージョンから逸脱するほど、コストが増加します。 ブロブやブロブバージョンのティアを変更すると、請求に影響があるかもしれません。 詳細については、「価格と課金」を参照してください。 ライフサイクル管理やストレージアクションを使って、コスト管理のために古いバージョンを削除しましょう。 |
| BLOB のスナップショット | スナップショット内のデータに対して料金が発生し、その料金は一意のブロックまたはページに基づいて決まります。 そのため、ベース BLOB がスナップショットから逸脱するほど、コストが増加します。 Blobやスナップショットのティアを変更すると、請求に影響が出る可能性があります。 詳細については、「価格と課金」を参照してください。 コスト管理のために、ライフサイクル管理やストレージアクションを使って古いスナップショットを削除しましょう。 |
| blob バージョンの不変ポリシー | BLOB バージョンに対する時間ベースの保持ポリシーまたは訴訟ホールドを作成、変更、または削除すると、書き込みトランザクション料金が発生します。 |
| コンテナーの不変ポリシー | 不変データは可変データと同じレートで価格が設定されます。 データが変更可能になり、削除されるまで、課金は継続します。 |
| ポイントインタイム リストア | ポイントインタイム復元を有効にすると、ブロブのバージョン管理、ソフト削除、変更フィードも可能になり、それぞれについて追加料金が発生する可能性があります。 復元操作を実行するときにポイントインタイム リストアに対して課金されます。 復元操作のコストは、復元されるデータの量によって異なります。 詳細については、「価格と課金」を参照してください。 |
| 保管済みバックアップ | コンテナー バックアップでは、バックアップ ストレージ料金またはインスタンス料金に加え、バックアップ対象のソースアカウントでは、ソース側のコスト (オブジェクト レプリケーションに関連する費用) が発生します。 「価格」を参照してください。 |
| オブジェクトレプリケーション | オブジェクトレプリケーションの設定には料金がかかりません。変更フィードやブロブのバージョン管理の有効化、レプリケーションポリシーの追加も含まれます。 オブジェクトの複製には変更フィードとバージョン管理が必要であり、それぞれが他の料金を生む可能性があります。 宛先アカウントで複製されたデータを維持すると、容量コストが発生し、ブロブや各ブロブのバージョンの保存コストが含まれます。 宛先アカウントが送信元と異なるリージョンにある場合、データの複製にはエグレス料金も発生します。 オブジェクトレプリケーションにはトランザクションコストが発生します。すなわち、ソースアカウントでは書き込み・トランザクション料金、そしてデスティネーションアカウントでは読み取り・書き込みトランザクション料金(変更フィードレコードの読み取りコストを含む)です。 詳細については、「課金」を参照してください。 |
| 2 つ目のストレージ アカウントにデータをコピーする | 2 つ目のストレージ アカウントでデータを維持すると、容量とトランザクションのコストが発生します。 2 つ目のストレージ アカウントがソース アカウントとは異なるリージョンにある場合、その 2 つ目のアカウントへのデータのコピーにより、さらにエグレス料金が発生します。 |
次のステップ
Azureの組み込みポリシーを使って、データ保護機能を広く有効化しましょう。 ソフト削除、バージョン管理、オブジェクトレプリケーションを可能にするポリシーが存在します。
災害復旧機能に関するガイダンスや推奨事項については、「 災害復旧」を参照してください。
ネットワークセキュリティと認証に関するガイダンスについては、「 セキュリティとネットワーキング」をご覧ください。