次の方法で共有


アクセス制御にプライベート エンドポイントを使用する

Azure Web PubSub リソースにプライベート エンドポイントを使用すると、仮想ネットワーク (VNet) 内のクライアントは、プライベート リンクを介してデータに安全にアクセスできるようになります。 プライベート エンドポイントでは、Web PubSub リソースの VNet アドレス空間からの IP アドレスが使用されます。 VNet 上のクライアントと Web PubSub リソースとの間のネットワーク トラフィックは、Microsoft ネットワーク上のプライベート リンクを経由するため、パブリック インターネット上への露出が回避できます。

Web PubSub リソースにプライベート エンドポイントを使用すると、次のことを実現できます。

  • ネットワーク アクセス制御を使用して Web PubSub リソースをセキュリティで保護し、Web PubSub のパブリック エンドポイント上のすべての接続をブロックします。
  • VNet からのデータの流出をブロックできるようにすることで、VNet のセキュリティを強化する。
  • プライベート ピアリングを使用する VPN または Azure ExpressRoute を使用して、VNet に接続するオンプレミス ネットワークから Web PubSub に安全に接続します。

仮想ネットワークでプライベート エンドポイントを使用する

Azure Web PubSub のプライベート エンドポイントの概要を示す図。

プライベート エンドポイントは、VNet 内の Azure サービス用の特別なネットワーク インターフェイスです。 Web PubSub リソースのプライベート エンドポイントを作成すると、VNet 上のクライアントとサービス間の安全な接続が提供されます。 プライベート エンドポイントには、VNet の IP アドレス範囲から IP アドレスが割り当てられます。 プライベート エンドポイントと Web PubSub との間の接続には、セキュリティで保護されたプライベート リンクが使用されます。

VNet 内のアプリケーションは、プライベート エンドポイントを使用して Web PubSub リソースにシームレスに接続できます。 これらのアプリケーションは、それ以外の場合に使用するものと同じ接続文字列と承認メカニズムを使用します。

プライベート エンドポイントは、REST API を含め、Web PubSub リソースがサポートするすべてのプロトコルで使用できます。

VNet で Web PubSub リソースのプライベート エンドポイントを作成すると、承認の同意要求が Web PubSub リソース所有者に送信されます。 プライベート エンドポイントを要求しているユーザーが Web PubSub リソースの所有者でもある場合、この同意要求は自動的に承認されます。

Azure portal[プライベート エンドポイント] タブで、Web PubSub リソースの同意要求とプライベート エンドポイントを管理できます。

ヒント

プライベート エンドポイント経由のみに Web PubSub リソースへのアクセスを制限する場合は、パブリック エンドポイント経由のアクセスを拒否または制御するように、ネットワーク アクセス制御を設定します。

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

プライベート エンドポイントを使用する VNet 上のクライアントは、パブリック エンドポイント経由で接続するクライアントが使用する Web PubSub リソースに対し、同じ接続文字列を使用する必要があります。 VNet から Web PubSub への接続をプライベート リンク経由で自動的にルーティングするには、ドメイン ネーム システム (DNS) 解決に依存します。

重要

パブリック エンドポイントと同じ接続文字列を使用して、プライベート エンドポイントを使用して Web PubSub に接続します。 privatelink サブドメイン URL を使用して Web PubSub に接続しないでください。

既定では、VNet に接続されているプライベート DNS ゾーンが作成され、プライベート エンドポイントに必要な更新も行われます。 独自の DNS サーバーを使用している場合は、DNS 構成にその他の変更が必要になることがあります。 次のセクションでは、プライベート エンドポイントに必要な更新について説明します。

プライベート エンドポイントの DNS の変更

プライベート エンドポイントを作成すると、Web PubSub リソースの DNS CNAME リソース レコードは、プレフィックス privatelink を持つサブドメイン内のエイリアスに更新されます。 既定で、privatelink サブドメインに対応するプライベート DNS ゾーンも作成されます。これには、プライベート エンドポイントの DNS A リソース レコードが含まれます。

プライベート エンドポイントを使用して VNet の外部から Web PubSub リソース ドメイン名を解決すると、Web PubSub リソースのパブリック エンドポイントに解決されます。 プライベート エンドポイントをホストしている VNet から解決されると、ドメイン名はプライベート エンドポイントの IP アドレスに解決されます。

上記の例の場合、Web PubSub リソース sample の DNS リソース レコードは、プライベート エンドポイントをホストしている VNet の外部から解決されるときに、次のようになります。

名前 Type
sample.webpubsub.azure.com CNAME sample.privatelink.webpubsub.azure.com
sample.privatelink.webpubsub.azure.com A <Web PubSub パブリック IP アドレス>

ネットワーク アクセス制御を使用して、パブリック エンドポイント経由の VNet 外部のクライアントのアクセスを拒否または制御できます。

Web PubSub リソース sample の DNS リソース レコードは、プライベート エンドポイントをホストする VNet 内のクライアントによって解決されるときに、次の例のようになります。

名前 Type
sample.webpubsub.azure.com CNAME sample.privatelink.webpubsub.azure.com
sample.privatelink.webpubsub.azure.com A 10.1.1.5

この方法では、プライベート エンドポイントをホストする VNet 上のクライアントと VNet 外のクライアントに対し、同じ接続文字列を使用して Web PubSub にアクセスできます。

ネットワーク上でカスタム DNS サーバーを使用している場合、クライアントで、Web PubSub リソースのエンドポイントの完全修飾ドメイン名 (FQDN) をプライベート エンドポイントの IP アドレスに解決できる必要があります。 プライベート リンク サブドメインを VNet のプライベート DNS ゾーンに委任するように DNS サーバーを構成するか、プライベート エンドポイントの IP アドレスを使用して sample.privatelink.webpubsub.azure.com の A レコードを構成する必要があります。

ヒント

カスタムまたはオンプレミスの DNS サーバーを使用している場合は、privatelink サブドメインの Web PubSub リソース名をプライベート エンドポイントの IP アドレスに解決するように、DNS サーバーを構成する必要があります。 これを行うには、VNet のプライベート DNS ゾーンに privatelink サブドメインを委任するか、DNS サーバー上で DNS ゾーンを構成し、DNS A レコードを追加します。

Web PubSub リソースのプライベート エンドポイントの DNS ゾーン名に、privatelink.webpubsub.azure.com を使用することをお勧めします。

プライベート エンドポイントをサポートするように独自の DNS サーバーを構成する方法の詳細については、次の記事を参照してください。

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

次のセクションでは、Web PubSub のプライベート エンドポイントと新しいインスタンスを作成する方法と、Web PubSub の既存のインスタンス用にプライベート エンドポイントを作成する方法について説明します。

Web PubSub の新しいインスタンスにプライベート エンドポイントを作成する

  1. Azure portal で、Azure Web PubSub の新しいインスタンスを作成します。 [ネットワーク] タブの [接続方法] で、[プライベート エンドポイント] を選択します。

    Web PubSub リソースを作成するときの [ネットワーク] タブを示すスクリーンショット。

  2. [追加] を選択します。 新しいプライベート エンドポイントのサブスクリプション、リソース グループ名、Azure リージョン、名前を選択または入力します。 使用する仮想ネットワークとサブネットを選択します。

  3. [Review + create](レビュー + 作成) を選択します。

既存の Web PubSub リソース用にプライベート エンドポイントを作成する

  1. Azure portal で、お使いの Web PubSub リソースに移動します。

  2. [設定] の左側のメニューで、[プライベート エンドポイント接続] を選択します。

  3. [プライベート エンドポイント] を選択します。

  4. 新しいプライベート エンドポイントのサブスクリプション、リソース グループ、リソース名、リージョンの値を選択または入力します。

  5. ターゲット Web PubSub リソースを選択します。

  6. ターゲット仮想ネットワークを選択します。

  7. [Review + create](レビュー + 作成) を選択します。

価格

料金の詳細については、「Azure Private Link の料金」をご覧ください。

既知の問題

Web PubSub でのプライベート エンドポイントの使用に関する次の既知の問題に注意してください。

Free レベルの制約

Free レベルを使用して作成された Azure Web PubSub インスタンスは、プライベート エンドポイントと統合できません。

プライベート エンドポイントを含む VNet 内のクライアントに対するアクセス制約

既存のプライベート エンドポイントを持つ VNet 内のクライアントには、プライベート エンドポイントを持つ他の Web PubSub インスタンスにアクセスするときの制約があります。 たとえば、VNet N1 に、Web PubSub インスタンス W1 用のプライベート エンドポイントがあるとします。 Web PubSub インスタンス W2 に VNet N2 にプライベート エンドポイントがある場合、VNet N1 内のクライアントも、プライベート エンドポイントを使用して Web PubSub インスタンス W2 にアクセスする必要があります。

Web PubSub インスタンス W2 にプライベート エンドポイントがない場合、VNet N1 内のクライアントは、プライベート エンドポイントを使用せずに、そのアカウント内の Web PubSub リソースにアクセスできます。 この制約は、Web PubSub インスタンス W2 によってプライベート エンドポイントが作成されるときに行われた DNS 変更の結果です。