Azure Key Vault のファイアウォールと仮想ネットワークを構成するConfigure Azure Key Vault firewalls and virtual networks

この記事では、キー コンテナーへのアクセスを制限するために、Azure Key Vault のファイアウォールと仮想ネットワークを構成する手順について説明します。This article provides step-by-step instructions to configure Azure Key Vault firewalls and virtual networks to restrict access to your key vault. Key Vault の仮想ネットワーク サービス エンドポイントを使用すると、指定した仮想ネットワークや、IPv4 (インターネット プロトコル バージョン 4) アドレス範囲のリストに対するアクセスを制限することができます。The virtual network service endpoints for Key Vault) allow you to restrict access to a specified virtual network and set of IPv4 (internet protocol version 4) address ranges.

重要

ファイアウォール ルールを有効にした後は、要求が許可された仮想ネットワークまたは IPv4 アドレス範囲から送信された場合にのみ、ユーザーは Key Vault データ プレーンの操作を実行できます。After firewall rules are in effect, users can only perform Key Vault data plane operations when their requests originate from allowed virtual networks or IPv4 address ranges. これは、Azure portal から Key Vault にアクセスする場合にも適用されます。This also applies to accessing Key Vault from the Azure portal. ユーザーは Azure portal からキー コンテナーを参照できますが、クライアント マシンが許可リストに登録されていない場合、キー/シークレット/証明書を一覧表示できない場合があります。Although users can browse to a key vault from the Azure portal, they might not be able to list keys, secrets, or certificates if their client machine is not in the allowed list. これは、他の Azure サービスによる Key Vault 選択機能にも影響します。This also affects the Key Vault Picker by other Azure services. ファイアウォール ルールでクライアント マシンが許可されていない場合、ユーザーはキー コンテナーを一覧表示できても、キーは一覧表示できないことがあります。Users might be able to see list of key vaults, but not list keys, if firewall rules prevent their client machine.

注意

構成に関する次の制限事項に注意してください。Be aware of the following configuration limitations:

  • 最大で 127 個の仮想ネットワーク規則と 127 個の IPv4 ルールを指定できます。A maximum of 127 virtual network rules and 127 IPv4 rules are allowed.
  • "/31" や "/32" のプレフィックス サイズを使用する小さいアドレス範囲はサポートされていません。Small address ranges that use the "/31" or "/32" prefix sizes are not supported. これらの範囲を構成するには、個別の IP アドレス ルールを使用します。Instead, configure these ranges by using individual IP address rules.
  • IP ネットワーク ルールは、パブリック IP アドレスに対してのみ許可されます。IP network rules are only allowed for public IP addresses. プライベート ネットワーク用に予約されている IP アドレス範囲 (RFC 1918 で定義) は、IP ルールでは許可されません。IP address ranges reserved for private networks (as defined in RFC 1918) are not allowed in IP rules. プライベート ネットワークには、10.172.16-31、および 192.168. で始まるアドレスが含まれます。Private networks include addresses that start with 10., 172.16-31, and 192.168..
  • 現時点でサポートされているのは、IPv4 アドレスのみです。Only IPv4 addresses are supported at this time.

Azure ポータルの使用Use the Azure portal

Azure portal を使用して Key Vault ファイアウォールと仮想ネットワークを構成する方法を次に示します。Here's how to configure Key Vault firewalls and virtual networks by using the Azure portal:

  1. セキュリティで保護するキー コンテナーに移動します。Browse to the key vault you want to secure.
  2. [ネットワーク] を選択してから、 [ファイアウォールと仮想ネットワーク] タブを選択します。Select Networking, and then select the Firewalls and virtual networks tab.
  3. [許可するアクセス元][選択されたネットワーク] を選択します。Under Allow access from, select Selected networks.
  4. 既存の仮想ネットワークをファイアウォールと仮想ネットワークの規則に追加するには、 [+ 既存の仮想ネットワークを追加] を選択します。To add existing virtual networks to firewalls and virtual network rules, select + Add existing virtual networks.
  5. 表示される新しいブレードで、このキー コンテナーへのアクセスを許可するサブスクリプション、仮想ネットワーク、サブネットを選択します。In the new blade that opens, select the subscription, virtual networks, and subnets that you want to allow access to this key vault. 選択する仮想ネットワークとサブネットでサービス エンドポイントが有効になっていない場合は、サービス エンドポイントを有効にする必要があることを確認して、 [有効] を選択します。If the virtual networks and subnets you select don't have service endpoints enabled, confirm that you want to enable service endpoints, and select Enable. 有効になるまでに最大 15 分かかることがあります。It might take up to 15 minutes to take effect.
  6. [IP ネットワーク] では、CIDR (Classless Inter-Domain Routing) 表記で IPv4 アドレスの範囲を入力して IPv4 アドレス範囲を追加するか、個々の IP アドレスを追加します。Under IP Networks, add IPv4 address ranges by typing IPv4 address ranges in CIDR (Classless Inter-domain Routing) notation or individual IP addresses.
  7. 信頼された Microsoft サービスが Key Vault ファイアウォールをバイパスすることを許可する場合には、[はい] を選択します。If you want to allow Microsoft Trusted Services to bypass the Key Vault Firewall, select 'Yes'. Key Vault で現在信頼されているサービスの完全な一覧については、次のリンクを参照してください。For a full list of the current Key Vault Trusted Services please see the following link. Azure Key Vault の信頼済みサービスAzure Key Vault Trusted Services
  8. [保存] を選択します。Select Save.

[+ 新しい仮想ネットワークを追加] を選択し、新しい仮想ネットワークとサブネットを追加して、新しく作成した仮想ネットワークとサブネットのサービス エンドポイントを有効にすることもできます。You can also add new virtual networks and subnets, and then enable service endpoints for the newly created virtual networks and subnets, by selecting + Add new virtual network. その後、プロンプトに従います。Then follow the prompts.

Azure CLI の使用Use the Azure CLI

Azure CLI を使用して Key Vault ファイアウォールと仮想ネットワークを構成する方法を次に示しますHere's how to configure Key Vault firewalls and virtual networks by using the Azure CLI

  1. Azure CLI をインストールしてサインインします。Install Azure CLI and sign in.

  2. 使用可能な仮想ネットワーク規則の一覧を表示します。List available virtual network rules. このキー コンテナーに対してルールを何も設定していない場合、一覧は空になります。If you haven't set any rules for this key vault, the list will be empty.

    az keyvault network-rule list --resource-group myresourcegroup --name mykeyvault
    
  3. 既存の仮想ネットワークとサブネット上の Key Vault のサービス エンドポイントを有効にします。Enable a service endpoint for Key Vault on an existing virtual network and subnet.

    az network vnet subnet update --resource-group "myresourcegroup" --vnet-name "myvnet" --name "mysubnet" --service-endpoints "Microsoft.KeyVault"
    
  4. 仮想ネットワークとサブネットに対するネットワーク ルールを追加します。Add a network rule for a virtual network and subnet.

    subnetid=$(az network vnet subnet show --resource-group "myresourcegroup" --vnet-name "myvnet" --name "mysubnet" --query id --output tsv)
    az keyvault network-rule add --resource-group "demo9311" --name "demo9311premium" --subnet $subnetid
    
  5. そこから送信されたトラフィックを許可する IP アドレス範囲を追加します。Add an IP address range from which to allow traffic.

    az keyvault network-rule add --resource-group "myresourcegroup" --name "mykeyvault" --ip-address "191.10.18.0/24"
    
  6. すべての信頼されたサービスでこのキー コンテナーにアクセスできるようにする必要がある場合は、bypassAzureServices に設定します。If this key vault should be accessible by any trusted services, set bypass to AzureServices.

    az keyvault update --resource-group "myresourcegroup" --name "mykeyvault" --bypass AzureServices
    
  7. 既定のアクションを Deny に設定することによって、ネットワーク ルールを有効にします。Turn the network rules on by setting the default action to Deny.

    az keyvault update --resource-group "myresourcegroup" --name "mekeyvault" --default-action Deny
    

Azure PowerShell の使用Use Azure PowerShell

注意

この記事は、新しい Azure PowerShell Az モジュールを使用するために更新されました。This article has been updated to use the new Azure PowerShell Az module. AzureRM モジュールはまだ使用でき、少なくとも 2020 年 12 月までは引き続きバグ修正が行われます。You can still use the AzureRM module, which will continue to receive bug fixes until at least December 2020. Az モジュールと AzureRM の互換性の詳細については、「Introducing the new Azure PowerShell Az module (新しい Azure PowerShell Az モジュールの概要)」を参照してください。To learn more about the new Az module and AzureRM compatibility, see Introducing the new Azure PowerShell Az module. Az モジュールのインストール手順については、Azure PowerShell のインストールを参照してください。For Az module installation instructions, see Install Azure PowerShell.

PowerShell を使用して Key Vault ファイアウォールと仮想ネットワークを構成する方法を次に示します。Here's how to configure Key Vault firewalls and virtual networks by using PowerShell:

  1. 最新の Azure PowerShell をインストールしてサインインします。Install the latest Azure PowerShell, and sign in.

  2. 使用可能な仮想ネットワーク規則の一覧を表示します。List available virtual network rules. このキー コンテナーに対してルールを何も設定していない場合、一覧は空になります。If you have not set any rules for this key vault, the list will be empty.

    (Get-AzKeyVault -VaultName "mykeyvault").NetworkAcls
    
  3. 既存の仮想ネットワークとサブネット上の Key Vault のサービス エンドポイントを有効にします。Enable service endpoint for Key Vault on an existing virtual network and subnet.

    Get-AzVirtualNetwork -ResourceGroupName "myresourcegroup" -Name "myvnet" | Set-AzVirtualNetworkSubnetConfig -Name "mysubnet" -AddressPrefix "10.1.1.0/24" -ServiceEndpoint "Microsoft.KeyVault" | Set-AzVirtualNetwork
    
  4. 仮想ネットワークとサブネットに対するネットワーク ルールを追加します。Add a network rule for a virtual network and subnet.

    $subnet = Get-AzVirtualNetwork -ResourceGroupName "myresourcegroup" -Name "myvnet" | Get-AzVirtualNetworkSubnetConfig -Name "mysubnet"
    Add-AzKeyVaultNetworkRule -VaultName "mykeyvault" -VirtualNetworkResourceId $subnet.Id
    
  5. そこから送信されたトラフィックを許可する IP アドレス範囲を追加します。Add an IP address range from which to allow traffic.

    Add-AzKeyVaultNetworkRule -VaultName "mykeyvault" -IpAddressRange "16.17.18.0/24"
    
  6. すべての信頼されたサービスでこのキー コンテナーにアクセスできるようにする必要がある場合は、bypassAzureServices に設定します。If this key vault should be accessible by any trusted services, set bypass to AzureServices.

    Update-AzKeyVaultNetworkRuleSet -VaultName "mykeyvault" -Bypass AzureServices
    
  7. 既定のアクションを Deny に設定することによって、ネットワーク ルールを有効にします。Turn the network rules on by setting the default action to Deny.

    Update-AzKeyVaultNetworkRuleSet -VaultName "mykeyvault" -DefaultAction Deny
    

ReferencesReferences

次のステップNext steps