次の方法で共有


プライベート仮想ネットワークに Azure API Management インスタンスを挿入する - Premium v2 レベル

適用対象: Premium v2

この記事では、仮想ネットワークに Azure API Management Premium v2 (プレビュー) インスタンスを挿入するための要件について説明します。

Note

従来の Developer レベルまたは Premium レベルのインスタンスを仮想ネットワークに挿入する場合、要件と構成は異なります。 詳細情報。

API Management Premium v2 インスタンスを仮想ネットワークに挿入すると:

  • API Management ゲートウェイ エンドポイントには、仮想ネットワークを経由してプライベート IP アドレスでアクセスできます。
  • API Management は、ネットワーク内で分離された API バックエンドに送信要求を行うことができます。

この構成は、API Management インスタンスとバックエンド API の両方へのネットワーク トラフィックを分離するシナリオに推奨されます。

受信トラフィックと送信トラフィックを分離するために仮想ネットワークに API Management インスタンスを挿入する図。

Standard v2 または Premium v2 レベルの API Management インスタンスへの "パブリック" 受信アクセスを有効にし、ネットワーク分離バックエンドへの送信アクセスを制限する場合は、「送信接続のために仮想ネットワークと統合する」を参照してください。

重要

  • この記事で説明する仮想ネットワーク インジェクションは、Premium v2 レベル (プレビュー) の API Management インスタンスでのみ使用できます。 さまざまなレベルのネットワーク オプションについては、「Azure API Management で仮想ネットワークを使用する」を参照してください。
  • 現在、Premium v2 インスタンスを仮想ネットワークに挿入できるのは、インスタンスが作成される場合のみです。 既存の Premium v2 インスタンスを仮想ネットワークに挿入することはできません。 ただし、インスタンスの作成後に、インジェクション用のサブネット設定を更新できます。
  • 現時点では、Premium v2 インスタンスの仮想ネットワーク インジェクションと仮想ネットワーク統合を切り替えることはできません。

前提条件

  • Premium v2 価格レベルの Azure API Management インスタンス。
  • クライアント アプリと API Management バックエンド API がホストされている仮想ネットワーク。 API Management instance で使用される仮想ネットワークとサブネットの要件と推奨事項については、次のセクションを参照してください。

ネットワークの場所

  • 仮想ネットワークは、API Management インスタンスと同じリージョンおよび Azure サブスクリプションに存在する必要があります。

サブネットの要件

  • API Management インスタンスのサブネットを別の Azure リソースと共有することはできません。

サブネットのサイズ

  • 最小: /27 (32 アドレス)
  • 推奨: /24 (256 アドレス) - API Management インスタンスのスケーリングに対応するため

ネットワーク セキュリティ グループ

ネットワーク セキュリティ グループをサブネットに関連付ける必要があります。

サブネットの委任

このサブネットは Microsoft.Web/hostingEnvironments サービスに委任する必要があります。

ポータルでの Microsoft.Web/hostingEnvironments へのサブネット委任を示すスクリーンショット。

Note

サブネットをサービスに委任できるように、サブスクリプションに Microsoft.Web/hostingEnvironments リソース プロバイダーを登録することが必要になる場合があります。

サブネットの委任の構成の詳細については、「サブネットの委任を追加または削除する」を参照してください。

addressPrefix プロパティ

Premium v2 レベルの仮想ネットワークの挿入では、addressPrefix サブネット プロパティが有効な CIDR ブロックに設定されている必要があります。

Azure portal を使用してサブネットを構成する場合、サブネットはアドレス プレフィックスの一覧で構成される addressPrefixes (複数形) プロパティを設定します。 ただし、API Management では、addressPrefix プロパティの値として 1 つの CIDR ブロックが必要です。

addressPrefix を使用してサブネットを作成または更新するには、Azure PowerShell、Azure Resource Manager テンプレート、REST API などのツールを使用します。 たとえば、次のように Set-AzVirtualNetworkSubnetConfig Azure PowerShell コマンドレットを使用してサブネットを更新します。

# Set values for the variables that are appropriate for your environment.

$resourceGroupName = "MyResourceGroup"
$virtualNetworkName = "MyVirtualNetwork"
$subnetName = "ApimSubnet"
$addressPrefix = "10.0.3.0/24"


$virtualNetwork = Get-AzVirtualNetwork -Name $virtualNetworkName -ResourceGroupName $resourceGroupName

Set-AzVirtualNetworkSubnetConfig -Name $subnetName -VirtualNetwork $virtualNetwork -AddressPrefix $addressPrefix

$virtualNetwork | Set-AzVirtualNetwork

アクセス許可

仮想ネットワークの挿入を構成するには、サブネットまたは上位レベルで少なくとも次のロールベースのアクセス制御のアクセス許可を持っている必要があります。

アクション 説明
Microsoft.Network/virtualNetworks/read 仮想ネットワークの定義を読み取ります
Microsoft.Network/virtualNetworks/subnets/read 仮想ネットワーク サブネットの定義を読み取ります
Microsoft.Network/virtualNetworks/subnets/join/action 仮想ネットワークに参加します。

仮想ネットワークに API Management を挿入する

Azure portal を使用して Premium v2 インスタンスを作成するとき、必要に応じて仮想ネットワーク インジェクションの設定を構成できます。

  1. API Management サービスの作成ウィザードで、[ネットワーク] タブを選択します。
  2. [接続の種類] で、[仮想ネットワーク] を選択します。
  3. [種類] で、[仮想ネットワーク インジェクション] を選択します。
  4. [仮想ネットワークの構成] で、挿入する仮想ネットワークと委任されたサブネットを選択します。
  5. ウィザードを完了して、API Management インスタンスを作成します。

プライベート IP アドレスにアクセスするための DNS 設定

Premium v2 API Management インスタンスが仮想ネットワークに挿入されるとき、API Management への受信アクセスを有効にするには、自らの DNS を管理する必要があります。

自らのカスタム DNS サーバーを使用するオプションは用意されていますが、次のことをお勧めします。

  1. Azure DNS プライベート ゾーンを構成します。
  2. 仮想ネットワークに Azure DNS プライベート ゾーンをリンクします。

Azure DNS でのプライベート ゾーンの設定方法を確認してください。

既定のホスト名でのエンドポイント アクセス

Premium v2 レベルで API Management インスタンスを作成すると、次のエンドポイントに既定のホスト名が割り当てられます。

  • ゲートウェイ - 例: contoso-apim.azure-api.net

DNS レコードを構成する

仮想ネットワーク内から API Management インスタンスにアクセスするための A レコードを DNS サーバーに作成します。 エンドポイント レコードを API Management インスタンスのプライベート VIP アドレスにマップします。

テスト目的で、API Management がデプロイされている仮想ネットワークに接続されているサブネット内の仮想マシン上のホスト ファイルを更新できます。 API Management インスタンスのプライベート仮想 IP アドレスを 10.1.0.5 と仮定すると、次の例に示すようにホスト ファイルをマップできます。 hosts マッピング ファイルは、%SystemDrive%\drivers\etc\hosts (Windows) または /etc/hosts (Linux、macOS) にあります。 次に例を示します。

内部仮想 IP アドレス ゲートウェイ ホスト名
10.1.0.5 contoso-apim.portal.azure-api.net