Translated ['src/pentesting-cloud/azure-security/az-services/az-keyvault

This commit is contained in:
Translator
2025-08-04 09:31:54 +00:00
parent 121af6d51f
commit dfa1f6c659

View File

@@ -4,45 +4,45 @@
## 基本情報
**Azure Key Vault** は、Microsoft Azure が提供するクラウドサービスで、**シークレット、キー、証明書、パスワード**などの機密情報を安全に保存および管理します。これは中央集権的なリポジトリとして機能し、Azure Active Directory (Azure AD) を使用して安全なアクセスと細な制御を提供します。セキュリティの観点から、Key Vault は暗号鍵のための**ハードウェアセキュリティモジュール (HSM) 保護**を提供し、シークレットが静止時および転送中に暗号化されることを保証し、**ロールベースのアクセス制御 (RBAC)**ポリシーを通じて堅牢なアクセス管理を提供します。また、**監査ログ**、アクセス追跡のための Azure Monitor との統合、および長期間の鍵露出によるリスクを軽減するための自動鍵ローテーション機能も備えています。
**Azure Key Vault**は、Microsoft Azureが提供するクラウドサービスで、**シークレット、キー、証明書、パスワード**などの機密情報を安全に保存および管理します。これは中央集権的なリポジトリとして機能し、Azure Active Directory (Azure AD)を使用して安全なアクセスと細な制御を提供します。セキュリティの観点から、Key Vaultは暗号鍵のための**ハードウェアセキュリティモジュール (HSM) 保護**を提供し、シークレットが静止時および転送中に暗号化されることを保証し、**ロールベースのアクセス制御 (RBAC)**およびポリシーを通じて堅牢なアクセス管理を提供します。また、**監査ログ**、アクセス追跡のためのAzure Monitorとの統合、および長期間の鍵露出からのリスクを軽減するための自動鍵ローテーション機能も備えています。
完全な詳細については、[Azure Key Vault REST API 概要](https://learn.microsoft.com/en-us/azure/key-vault/general/about-keys-secrets-certificates)を参照してください。
完全な詳細については、[Azure Key Vault REST API概要](https://learn.microsoft.com/en-us/azure/key-vault/general/about-keys-secrets-certificates)を参照してください。
[**docs**](https://learn.microsoft.com/en-us/azure/key-vault/general/basic-concepts)によると、Vault はソフトウェアおよび HSM バックの鍵、シークレット、証明書の保存をサポートしています。管理された HSM プールは HSM バックの鍵のみをサポートします。
[**docs**](https://learn.microsoft.com/en-us/azure/key-vault/general/basic-concepts)によると、VaultはソフトウェアおよびHSMバックの鍵、シークレット、証明書の保存をサポートしています。管理されたHSMプールはHSMバックの鍵のみをサポートします。
**ボールト**の**URL形式**は `https://{vault-name}.vault.azure.net/{object-type}/{object-name}/{object-version}` で、管理された HSM プールの場合は `https://{hsm-name}.managedhsm.azure.net/{object-type}/{object-name}/{object-version}` です。
**ボールト**の**URL形式**は`https://{vault-name}.vault.azure.net/{object-type}/{object-name}/{object-version}`で、管理されたHSMプールの場合は`https://{hsm-name}.managedhsm.azure.net/{object-type}/{object-name}/{object-version}`です。
ここで:
- `vault-name` は鍵ボールトのグローバルに**ユニーク**な名前です。
- `object-type` は "keys"、"secrets" または "certificates" です。
- `object-name` は鍵ボールト内での**ユニーク**なオブジェクト名です。
- `object-version` はシステム生成され、**オブジェクトのユニークなバージョン**を指定するためにオプションで使用されます。
- `vault-name`は鍵ボールトのグローバルに**ユニーク**な名前です。
- `object-type`は「keys」、「secretsまたはcertificatesです。
- `object-name`は鍵ボールト内での**ユニーク**なオブジェクト名です。
- `object-version`はシステム生成され、**オブジェクトのユニークなバージョン**を指定するためにオプションで使用されます。
ボールトに保存されたシークレットにアクセスするためには、ボールト作成時に2つの権限モデルのいずれかを選択できます
- **ボールトアクセスポリシー**
- **Azure RBAC**(最も一般的で推奨される)
- サポートされているすべての詳細な権限は[https://learn.microsoft.com/en-us/azure/role-based-access-control/permissions/security#microsoftkeyvault](https://learn.microsoft.com/en-us/azure/role-based-access-control/permissions/security#microsoftkeyvault) で確認できます。
- サポートされているすべての詳細な権限は[https://learn.microsoft.com/en-us/azure/role-based-access-control/permissions/security#microsoftkeyvault](https://learn.microsoft.com/en-us/azure/role-based-access-control/permissions/security#microsoftkeyvault)で確認できます。
### アクセス制御 <a href="#access-control" id="access-control"></a>
Key Vault リソースへのアクセスは、2つのプレーンによって制御されます
Key Vaultリソースへのアクセスは、2つのプレーンによって制御されます
- **管理プレーン**、そのターゲットは [management.azure.com](http://management.azure.com/) です。
- これは鍵ボールトと**アクセスポリシー**を管理するために使用されます。Azure ロールベースのアクセス制御 (**RBAC**) のみがサポートされています。
- **データプレーン**、そのターゲットは **`<vault-name>.vault.azure.com`** です。
- これは鍵ボールト内の**データ**(鍵、シークレット、証明書)を管理およびアクセスするために使用されます。これは**鍵ボールトアクセスポリシー**または Azure **RBAC** がサポートされています。
- **管理プレーン**、そのターゲットは[management.azure.com](http://management.azure.com/)です。
- これは鍵ボールトと**アクセスポリシー**を管理するために使用されます。Azureロールベースのアクセス制御**RBAC**のみがサポートされています。
- **データプレーン**、そのターゲットは**`<vault-name>.vault.azure.com`**です。
- これは鍵ボールト内の**データ**(鍵、シークレット、証明書)を管理およびアクセスするために使用されます。これは**鍵ボールトアクセスポリシー**またはAzure **RBAC**をサポートします。
**Contributor** のような役割は、アクセスポリシーを管理するための管理プレーンでの権限を持っている場合、アクセスポリシーを変更することでシークレットにアクセスできます。
**Contributor**のような役割は、アクセスポリシーを管理するための管理プレーンでの権限を持っている場合、アクセスポリシーを変更することでシークレットにアクセスできます。
### Key Vault RBAC ビルトインロール <a href="#rbac-built-in-roles" id="rbac-built-in-roles"></a>
### Key Vault RBAC組み込みロール <a href="#rbac-built-in-roles" id="rbac-built-in-roles"></a>
<figure><img src="../../../images/image (27).png" alt=""><figcaption></figcaption></figure>
### ネットワークアクセス
Azure Key Vault では、**ファイアウォール**ルールを設定して、**指定された仮想ネットワークまたは IPv4 アドレス範囲からのみデータプレーン操作を許可**することができます。この制限は Azure 管理ポータルを通じたアクセスにも影響し、ログイン IP アドレスが承認された範囲内でない場合、ユーザーは鍵、シークレット、または証明書を鍵ボールト内でリストすることができません。
Azure Key Vaultでは、**ファイアウォール**ルールを設定して、**指定された仮想ネットワークまたはIPv4アドレス範囲からのみデータプレーン操作を許可**することができます。この制限はAzure管理ポータルを通じたアクセスにも影響し、ログインIPアドレスが承認された範囲内でない場合、ユーザーは鍵、シークレット、または証明書を鍵ボールト内でリストすることができません。
これらの設定を分析および管理するために、**Azure CLI**を使用できます:
```bash
@@ -50,7 +50,7 @@ az keyvault show --name name-vault --query networkAcls
```
前のコマンドは、`name-vault`**のファイアウォール設定を表示します**。これには、有効なIP範囲と拒否されたトラフィックのポリシーが含まれます。
さらに、**プライベートエンドポイント**を作成して、ボールトへのプライベート接続を許可すること可能です。
さらに、**プライベートエンドポイント**を作成して、ボールトへのプライベート接続を許可すること可能です。
### 削除保護
@@ -89,6 +89,9 @@ az role assignment list --include-inherited --scope "/subscriptions/<subscriptio
az keyvault secret show --vault-name <KeyVaultName> --name <SecretName>
# Get old versions secret value
az keyvault secret show --id https://<KeyVaultName>.vault.azure.net/secrets/<KeyVaultName>/<idOldVersion>
# List deleted key vaults
az keyvault secret list-deleted --vault-name <vault-name>
```
{{#endtab }}