Microsoft では、ストレージ アカウントの偶発的または悪意のある削除を防ぐために、すべてのストレージ アカウントを Azure Resource Manager ロックでロックすることをお勧めします。 Azure Resource Manager リソース ロックには、次の 2 種類があります。
- CannotDelete ロックは、ユーザーがストレージ アカウントを削除できないようにしますが、その構成の読み取りと変更を許可します。
- ReadOnly ロックを使用すると、ユーザーはストレージ アカウントを削除したり、構成を変更したりできなくなりますが、構成の読み取りは許可されます。
Azure Resource Manager のロックの詳細については、「 リソースをロックして変更を防ぐ」を参照してください。
注意事項
ストレージ アカウントをロックしても、そのアカウント内のコンテナーまたは BLOB が削除または上書きされないように保護されません。 BLOB データを保護する方法の詳細については、「 データ保護の概要」を参照してください。
Azure Resource Manager ロックを構成する
Azure portal でストレージ アカウントのロックを構成するには、次の手順に従います。
Azure Portal のストレージ アカウントに移動します。
[ 設定] セクションで、[ ロック] を選択します。
[] を選択し、[] を追加します。
リソース ロックの名前を指定し、ロックの種類を指定します。 必要に応じて、ロックに関するメモを追加します。
ReadOnly ロックが有効な場合のデータ操作の承認
ReadOnly ロックがストレージ アカウントに適用されると、そのストレージ アカウントに対するリスト キー操作がブロックされます。 リスト キー操作は HTTPS POST 操作であり、アカウントに対して ReadOnly ロックが構成されている場合、すべての POST 操作は禁止されます。 List Keys 操作はアカウント アクセス キーを返します。このキーを使用して、ストレージ アカウント内の任意のデータの読み取りと書き込みを行うことができます。
ロックがストレージ アカウントに適用されている時点でクライアントがアカウント アクセス キーを所有している場合、そのクライアントは引き続きキーを使用してデータにアクセスできます。 ただし、キーにアクセスできないクライアントは、Microsoft Entra 資格情報を使用してストレージ アカウント内の BLOB またはキュー データにアクセスする必要があります。
以前にアカウント アクセス キーを使用してポータル内の BLOB またはキュー データにアクセスしている場合、 ReadOnly ロックが適用されると、Azure portal のユーザーが影響を受ける可能性があります。 ロックが適用された後、ポータル ユーザーは Microsoft Entra 資格情報を使用してポータル内の BLOB またはキュー データにアクセスする必要があります。 これを行うには、少なくとも 2 つの RBAC ロール (少なくとも Azure Resource Manager 閲覧者ロールと、Azure Storage データ アクセス ロールの 1 つ) がユーザーに割り当てられている必要があります。 詳細については、以下の記事のいずれかを参照してください。
Azure Files または Table Service 内のデータは、以前にアカウント キーを使用してアクセスしていたクライアントにアクセスできなくなる可能性があります。 ベスト プラクティスとして、 ストレージ アカウントに ReadOnly ロックを適用する必要がある場合は、 ReadOnly ロックでロックされていないストレージ アカウントに Azure Files と Table service のワークロードを移動します。