Azure Private Link は、Azure Databricks ワークスペースへのプライベートで安全な接続を作成し、ネットワーク トラフィックがパブリック インターネットに公開されないようにします。
Private Link 接続には、次の 3 種類があります。
- フロントエンド (ユーザーからワークスペース): ユーザーとそのツール (Web アプリ、API、BI ツールなど) から Azure Databricks ワークスペースへの接続をセキュリティで保護します。
- バックエンド (コンピューティングからコントロール プレーン): Azure Databricks クラスターから、機能するために必要なコア Azure Databricks サービスへの接続をセキュリティで保護します。
- Web 認証: プライベート ネットワークを使用するときに、シングル サインオン (SSO) を使用して Web アプリにユーザーがログインできるようにします。 Microsoft Entra ID からの認証コールバックを処理するための特別なプライベート エンドポイントが作成されます。それ以外の場合はプライベート環境で失敗します。 Web 認証は、フロントエンドプライベート接続でのみ必要です。
注意
セキュリティを最大限に高めるために、 フロントエンドとバックエンドの両方の接続 を実装して、ワークスペースへのすべてのパブリック ネットワーク アクセスをブロックします。
アーキテクチャの概要
このドキュメントで説明するアーキテクチャは、Azure Private Link の標準的な実装パターンを表しています。 最適な構成はネットワーク トポロジに完全に依存するため、ユニバーサル ソリューションではなく、基本的なフレームワークとして機能することを目的としています。 このモデルを適応させる必要がある主な要因は次のとおりです。
- 既存のハブ アンド スポークまたはトランジット VNet 設計。
- カスタム DNS 転送と解決ポリシー。
- 特定のファイアウォールとネットワーク セキュリティ グループ (NSG) 規則。
- リージョン間またはマルチクラウド接続の要件。
必要な VNet
プライベート接続では、2 つの異なる仮想ネットワークが使用されます。
- トランジット VNet: この仮想ネットワークは、ユーザー接続の中央ハブとして機能します。 これには、ワークスペースへのクライアント アクセスとブラウザーベースの SSO 認証に必要なフロントエンド プライベート エンドポイントが含まれています。
- ワークスペース VNet: これは、Azure Databricks ワークスペースとバックエンド プライベート エンドポイントをホストするために特別に作成する仮想ネットワークです。
サブネットの割り当てとサイズ変更
プライベート接続とデプロイをサポートするために、各 VNet のサブネットを計画します。
トランジット VNet サブネット:
- プライベート エンドポイント サブネット: すべてのフロントエンド プライベート エンドポイントに IP アドレスを割り当てます。
- ブラウザー認証ワークスペース のサブネット: ブラウザー認証ワークスペースをデプロイするには、ホストまたはパブリック サブネットとコンテナーまたはプライベート サブネットの 2 つの専用サブネットが推奨されます。
ワークスペース VNet サブネット:
- ワークスペース サブネット: Azure Databricks ワークスペースのデプロイ自体には、ホストまたはパブリック サブネットとコンテナーまたはプライベート サブネットの 2 つのサブネットが必要です。 ワークスペース サブネットに関連するサイズ設定情報については、「 アドレス空間のガイダンス」を参照してください。
- バックエンド プライベート エンドポイント サブネット: バックエンド プライベート接続用にプライベート エンドポイントをホストするには、追加のサブネットが必要です。
サイズ設定は個々の実装ニーズによって異なりますが、ガイドとして以下を使用できます。
| VNet | サブネットの目的 | 推奨される CIDR 範囲 |
|---|---|---|
| トランシット | プライベート エンドポイント サブネット | /26 to /25 |
| トランシット | ブラウザー認証ワークスペース |
/28 または /27 |
| Workspace | バックエンド プライベート エンドポイント サブネット | /27 |
Azure Databricks プライベート エンドポイント
Azure Databricks では、トラフィックを完全に民営化するために、2 種類のプライベート エンドポイントが使用されます。 それらを正しく実装するために、それぞれの異なるロールを理解します。
-
ワークスペース エンドポイント (
databricks_ui_api):これは、ワークスペースとの間のコア トラフィックをセキュリティで保護するためのプライマリ プライベート エンドポイントです。 フロントエンドとバックエンドの両方の接続を処理します。 -
Web 認証エンドポイント (
browser_authentication): これは、プライベート接続経由の Web ブラウザー ログインに対してシングル Sign-On (SSO) を機能させるためにのみ必要な特殊な追加エンドポイントです。 これは、フロントエンドとエンド ツー エンドの接続に必要です。
Web 認証エンドポイントの場合は、次の点に注意してください。
- SSO コールバック要件: クライアント アクセスに Private Link を使用する場合、このエンドポイントはユーザー Web ログインに必須です。 プライベート ネットワークでブロックされている Microsoft Entra ID からの SSO 認証コールバックを安全に処理します。 このエンドポイントを作成すると、Azure Databricks によって必要なプライベート DNS レコードが自動的に構成されます。 このプロセスは REST API 認証には影響しません。
-
デプロイ規則: Azure リージョンとプライベート DNS ゾーンごとに存在できる
browser_authenticationエンドポイントは 1 つだけです。 この単一のエンドポイントは、同じ DNS 構成を共有するそのリージョン内のすべてのワークスペースにサービスを提供します。 - 運用のベスト プラクティス: 停止を防ぐために、各運用リージョンに専用の "プライベート Web 認証ワークスペース" を作成します。 その唯一の目的は、この重要なエンドポイントをホストすることにあります。 このワークスペースの "パブリック ネットワーク アクセス" を無効にし、そのワークスペースに対して他のフロントエンド プライベート エンドポイントが作成されていないことを確認します。 このホスト ワークスペースが削除されると、そのリージョン内の他のすべてのワークスペースに対して Web ログインが失敗します。
- 代替構成: より簡単なデプロイでは、専用のワークスペースを作成する代わりに、既存のワークスペースでエンドポイントをホストできます。 これは、運用環境以外の環境に適しているか、リージョンにワークスペースが 1 つだけあると確信している場合に適しています。 ただし、ホスト ワークスペースを削除すると、それに依存する他のワークスペースの認証が直ちに中断されます。
フロントエンドプライベート接続
次の図は、フロントエンド プライベート接続のネットワーク フローを示しています。 フロントエンド接続では、 databricks_ui_api プライベート エンドポイントとトランジット VNet 経由の browser_authentication プライベート エンドポイントを使用して、ユーザーとそのツールから Azure Databricks ワークスペースへの接続をセキュリティで保護します。
フロントエンド ハイブリッド プライベート リンクの構成に関するページを参照してください。
バックエンドプライベート接続
次の図は、バックエンド プライベート接続のネットワーク フローを示しています。 バックエンドプライベート接続では、ワークスペース VNet 経由の databricks_ui_api プライベート エンドポイントを使用して、Azure Databricks クラスターから、機能するために必要なコア Azure Databricks サービスへの接続をセキュリティで保護します。
Azure Databricks へのバックエンド プライベート接続の構成に関するページを参照してください。
主な考慮事項
プライベート接続を構成する前に、次の点に注意してください。
- プライベート エンドポイントで ネットワーク セキュリティ グループ ポリシーが有効になっている場合は、プライベート エンドポイントがデプロイされているサブネット上のネットワーク セキュリティ グループで、受信セキュリティ規則に対してポート 443、6666、3306、8443- 8451 を許可する必要があります。
- ネットワークと Azure portal とそのサービスの間に接続を作成するには、Azure portal の URL を許可リストに追加することが必要になる場合があります。 「ファイアウォールまたはプロキシ サーバーで Azure portal の URL を許可する」を参照してください。
適切な Private Link 実装を選択する
このガイドを使用して、ニーズに最も適した実装を判断します。
| 考慮事項 | フロントエンド ハイブリッド | バックエンドのみ | エンド ツー エンドのプライベート |
|---|---|---|---|
| 主なセキュリティ目標 | ユーザー アクセスのセキュリティ保護 | クラスター トラフィックをセキュリティで保護する | 最大分離 (すべてをセキュリティで保護) |
| ユーザー接続 | パブリックまたはプライベート | パブリック (インターネット) | プライベートのみ |
| コントロール プレーンへのクラスター接続 | パブリック (標準のセキュリティ で保護されたパス) | プライベート (必須) | プライベート (必須) |
| 前提条件 | Premium プラン、VNet インジェクション、SCC | Premium プラン、VNet インジェクション、SCC | Premium プラン、VNet インジェクション、SCC |
| ワークスペース のネットワーク アクセス設定 | パブリック アクセスが有効になっている | パブリック アクセスが有効になっている | パブリック アクセスが無効になっている |
| 必要な NSG ルール | 全てのルール | NoAzureDatabricksRules | NoAzureDatabricksRules |
| 必要なプライベート エンドポイント | フロントエンド (databricks_ui_api)、ブラウザー認証 | バックエンド (databricks_ui_api) | 3 つすべて (フロントエンド、バックエンド、ブラウザー認証) |
| 相対コスト | エンドポイントあたりのコスト + データ転送 | エンドポイントあたりのコスト + データ転送 | 最高コスト (複数のエンドポイント + データ転送) |