チュートリアル:Azure プライベート エンドポイントを使用して Web アプリに接続する

Azure プライベート エンドポイントは、Azure における Private Link の基本的な構成要素です。 これにより、仮想マシン (VM) などの Azure リソースは、Web アプリなどの Private Link リソースと非公開にかつ安全に通信できます。

このチュートリアルでは、以下の内容を学習します。

  • 仮想ネットワークと bastion ホストを作成します。
  • 仮想マシンを作成します。
  • Web アプリを作成する。
  • プライベート エンドポイントを作成します。
  • Web アプリのプライベート エンドポイントへの接続をテストします。

Azure サブスクリプションをお持ちでない場合は、開始する前に 無料アカウント を作成してください。

注意

プライベート エンドポイントは、PremiumV2 レベル、PremiumV3 レベルの Windows Web アプリ、Linux Web アプリ、Azure Functions Premium プラン (エラスティック Premium プランとも呼ばれます) に対するパブリック リージョンで利用できます。

前提条件

  • Azure サブスクリプション

Azure へのサインイン

Azure portal にサインインします。

仮想ネットワークと bastion ホストの作成

このセクションでは、仮想ネットワーク、サブネット、bastion ホストを作成します。

bastion ホストは、プライベート エンドポイントをテストする目的で、仮想マシンに安全に接続するために使用されます。

  1. 画面の左上で、[リソースの作成] [ネットワーク] > [仮想ネットワーク] の順に選択するか、検索ボックスで>を検索します。

  2. [仮想ネットワークの作成][基本] タブで次の情報を入力または選択します。

    設定
    プロジェクトの詳細
    サブスクリプション Azure サブスクリプションを選択します。
    リソース グループ [新規作成] を選択します。
    [名前] に「myResourceGroup」と入力します。
    [OK] を選択します。
    インスタンスの詳細
    名前 myVNet」と入力します。
    リージョン [米国東部] を選択します。
  3. [IP アドレス] タブを選択するか、ページの下部にある [Next: IP Addresses](次へ: IP アドレス) ボタンを選択します。

  4. [IP アドレス] タブで、次の情報を入力します。

    設定
    IPv4 アドレス空間 10.1.0.0/16」を入力します。
  5. [サブネット名] で、 [default](既定) という単語を選択します。

  6. [サブネットの編集] に次の情報を入力します。

    設定
    サブネット名 mySubnet」と入力します。
    サブネットのアドレス範囲 10.1.0.0/24」と入力します。
  7. [保存] を選択します。

  8. [セキュリティ] タブをクリックします。

  9. [BastionHost][有効にする] を選択します。 この情報を入力します。

    設定
    要塞名 myBastionHost」と入力します
    AzureBastionSubnet のアドレス空間 10.1.1.0/24」と入力します。
    パブリック IP アドレス [新規作成] を選択します。
    [名前] に「myBastionIP」と入力します。

    を選択します。
  10. [確認と作成] タブを選択するか、 [確認と作成] ボタンを選択します。

  11. [作成] を選択します

仮想マシンの作成

このセクションでは、プライベート エンドポイントのテストに使用する仮想マシンを作成します。

  1. ポータルの左上で、 [リソースの作成]>[Compute]>[仮想マシン] の順に選択するか、検索ボックスで「仮想マシン」を検索します。

  2. [仮想マシンの作成][Basic] タブに、値を入力するか選択します。

    設定
    プロジェクトの詳細
    サブスクリプション Azure サブスクリプションを選択します。
    リソース グループ [myResourceGroup] を選択します。
    インスタンスの詳細
    仮想マシン名 myVM」と入力します。
    リージョン [(米国) 米国東部] を選択します。
    可用性オプション [インフラストラクチャ冗長は必要ありません] を選択します。
    セキュリティの種類 [Standard] を選択します。
    Image [Windows Server 2019 Datacenter - Gen2] を選択します。
    Azure Spot インスタンス このため、 [いいえ] を選択します。
    サイズ VM サイズを選択するか、既定の設定を使用します。
    管理者アカウント
    ユーザー名 ユーザー名を入力します。
    Password パスワードを入力します。
    パスワードの確認 パスワードを再入力します。
  3. [ネットワーク] タブまたは [次へ: ディスク] を選択してから [次へ: ネットワーク] を選択します。

  4. [ネットワーク] タブで、次の情報を選択します。

    設定
    ネットワーク インターフェイス
    仮想ネットワーク [myVNet] を選択します。
    Subnet [mySubnet] を選択します。
    パブリック IP [なし] を選択します。
    NIC ネットワーク セキュリティ グループ [Basic] を選択します。
    パブリック受信ポート [なし] を選択します。
  5. [Review + create](レビュー + 作成) を選択します。

  6. 設定を確認し、 [作成] を選択します。

Note

パブリック IP アドレスが割り当てられていないか、内部の Basic Azure Load Balancer のバックエンド プールにある VM に対しては、Azure によってデフォルト送信アクセス IP が提供されます。 デフォルト送信アクセス IP メカニズムは、構成できないアウトバウンド IP アドレスを提供します。

詳細については、「Azure での既定の送信アクセス」を参照してください。

パブリック IP アドレスが VM に割り当てられている場合、またはアウトバウンド規則の有無にかかわらず VM が Standard Load Balancer のバックエンド プールに配置されている場合、既定の送信アクセス IP は無効になります。 Azure Virtual Network ネットワーク アドレス変換 (NAT) ゲートウェイ リソースが仮想マシンのサブネットに割り当てられている場合、デフォルト送信アクセス IP は無効になります。

フレキシブル オーケストレーション モードの仮想マシン スケール セットによって作成された VM には、既定の送信アクセスがありません。

Azure でのアウトバウンド接続の詳細については、「アウトバウンド接続に送信元ネットワーク アドレス変換 (SNAT) を使用する」を参照してください。

Web アプリを作成する

このセクションでは、Web アプリを作成します。

  1. 左側のメニューで、[リソースの作成]>[Web]>[Web アプリ] の順に選択するか、検索ボックスで「Web アプリ」を検索します。

  2. [Web アプリの作成][基本] タブで、次の情報を入力または選択します。

    設定
    プロジェクトの詳細
    サブスクリプション Azure サブスクリプションを選択します。
    リソース グループ [myResourceGroup] を選択します。
    インスタンスの詳細
    名前 mywebapp」と入力します。 この名前が使用できない場合は、一意の名前を入力してください。
    発行 [コード] を選択します。
    ランタイム スタック [.NET Core 3.1 (LTS)] を選択します。
    オペレーティング システム [Windows] を選択します。
    リージョン [米国東部] を選択します。
    App Service プラン
    Windows プラン (米国東部) [新規作成] を選択します。
    [名前] に「myServicePlan」と入力します。

    を選択します。
    SKU とサイズ [サイズの変更] を選択します。
    [Spec Picker] (スペックの選択) ページで [P2V2] を選択します。
    [適用] を選択します。
    ゾーン冗長性
    ゾーン冗長性 [無効] をクリックします。
  3. [Review + create](レビュー + 作成) を選択します。

  4. [作成] を選択します

    [基本] タブで Web アプリを作成するために使用される設定を示す [Web アプリの作成] ページのスクリーンショット。

プライベート エンドポイントの作成

  1. 左側のメニューで、[すべてのリソース]>[mywebapp] または Web アプリ作成時に選択した名前を選択します。

  2. Web アプリの概要で、 [設定]>[Networking](ネットワーク) を選択します。

  3. [ネットワーク] で、[プライベート エンドポイント] を選択します。

  4. [プライベート エンドポイント接続] ページで、[+ 追加] を選択します。

  5. [プライベート エンドポイントの追加] ページで、次の情報を入力または選択します。

    設定
    名前 mywebappendpoint」と入力します。
    サブスクリプション Azure サブスクリプションを選択します。
    仮想ネットワーク [myVNet] を選択します。
    Subnet [mySubnet] を選択します。
    プライベート DNS ゾーンとの統合 [はい] を選択します。
  6. [OK] を選択します。

    プライベート エンドポイントの作成に使用される設定を示す [プライベート エンドポイントの追加] ページのスクリーンショット。

プライベート エンドポイントへの接続のテスト

このセクションでは、前の手順で作成した仮想マシンを使用し、プライベート エンドポイントを通じて Web アプリに接続します。

  1. 左側のナビゲーション ペインで [リソース グループ] を選択します。

  2. [myResourceGroup] を選択します。

  3. [myVM] を選択します。

  4. myVM の [概要] ページで [接続][Bastion] の順に選択します。

  5. 仮想マシンの作成時に入力したユーザー名とパスワードを入力します。

  6. [接続] ボタンを選択します。

  7. 接続後にサーバーで Windows PowerShell を開きます。

  8. nslookup <webapp-name>.azurewebsites.net」と入力します。 <Web アプリ名> を、前の手順で作成した Web アプリの名前に置き換えます。 以下に表示されるようなメッセージが返されます。

    Server:  UnKnown
    Address:  168.63.129.16
    
    Non-authoritative answer:
    Name:    mywebapp.privatelink.azurewebsites.net
    Address:  10.1.0.5
    Aliases:  mywebapp.azurewebsites.net
    

    Web アプリ名に対応する 10.1.0.5 というプライベート IP アドレスが返されます。 このアドレスは、前に作成した myVNet 仮想ネットワークの mySubnet サブネットにあります。

  9. Internet Explorer を開き、Web アプリの URL https://<webapp-name>.azurewebsites.net を入力します。

  10. 既定の Web アプリ ページが表示されることを確認します。

    既定の Web アプリ ページが表示されている Internet Explorer のスクリーンショット。

  11. myVM への接続を閉じます。

  12. ローカル コンピューターで Web ブラウザーを開き、Web アプリの URL https://<webapp-name>.azurewebsites.net を入力します。

  13. 403 ページが表示されることを確認します。 このページは、Web アプリに外部からアクセスできないことを示しています。

    外部 Web アプリ アドレスに対するエラー 403 の青いページを示す Web ブラウザーのスクリーンショット。

リソースをクリーンアップする

今後このアプリケーションを使う予定がなければ、次の手順を使用して、仮想ネットワーク、仮想マシン、および Web アプリを削除します。

  1. 左側のメニューから、 [リソース グループ] を選択します。

  2. [myResourceGroup] を選択します。

  3. [リソース グループの削除] を選択します。

  4. [リソース グループ名を入力してください] に「myResourceGroup」と入力します。

  5. [削除] を選択します。

次のステップ

Azure プライベート エンドポイントを使用して Azure SQL サーバーに接続する方法を学習する: