分離環境アーキテクチャは 、セキュリティ強化された接続 ベースラインを継承し、プライベート ワークスペース アクセスと必要な外部ファイアウォールという 2 つの要件を追加します。 ワークスペースへのアクセスは、パブリック インターネット経由ではなく、VPN またはインバウンド Private Link 経由に限定されています。 すべてのクラシック コンピューティング エグレスは、検査とポリシーの適用のためにファイアウォールを通過します。
このアーキテクチャには、次の内容があります。
- 完全なネットワーク分離: すべてのトラフィックがプライベート接続を経由します。
- プライベート ワークスペース アクセス: VPN または受信 Private Link のみ。 ワークスペースにパブリック インターネットからアクセスできません。
- 必要なエグレス検査: すべてのクラシック コンピューティング送信トラフィックのファイアウォール検査。
- データ流出防止: ネットワーク層制御によって、未承認のデータ転送がブロックされます。
このアーキテクチャは、次の場合に使用します。
- ワークスペースへのアクセスは、VPN 経由や受信 Private Link などのプライベート接続である必要があります。
- 金融サービス、医療、政府など、規制の厳しい業界でのデータの処理。
- コンプライアンス フレームワークには、エグレス制御 (SOC 2、HIPAA、PCI DSS、FedRAMP など) が必要です。
- エンタープライズゼロトラストセキュリティフレームワークの実装。
- データ流出防止が要件です。
前提条件
- VNet インジェクションされたワークスペースを備えた Azure Azure Databricks Premium レベル。
- 既存の VPN インフラストラクチャまたはインバウンド Private Link 接続。
- ファイアウォールまたはネットワーク仮想アプライアンス (NVA)。
アーキテクチャの概要
分離環境アーキテクチャは、ファイアウォール検査を使用してプライベート接続を介してすべてのトラフィックをルーティングします。
| トラフィックの種類 | Path |
|---|---|
| ユーザー アクセス | ユーザー → VPN またはインバウンド Private Link → ワークスペース |
| 従来型コンピューティング → 制御 | コンピューティング → クラシック プライベート リンク → Azure Databricks コントロール プレーン |
| クラシック コンピューティング → クラウド | コンピューティング → サービス エンドポイントまたは UDR → Azure サービス |
| サーバーレス → ご利用のリソース | サーバーレス コンピューティング → NCC プライベート エンドポイント → Azure リソース |
| クラシック コンピューティング→エグレス | コンピューティング →外部ファイアウォール (必須) →検査済みインターネット |
必要なコンポーネント
Inbound
ワークスペースに到達できるのは、プライベート接続 (VPN、受信Private Link、または既存のインフラストラクチャに応じた両方) のみです。 通常、顧客は積み重ねるのではなく、1 つを選択します。
プライベート アクセス設定 (パブリック アクセスを無効にする)
これは、パブリック イングレスを実際にブロックするゲーティング コントロールです。 これを使用しない場合、ワークスペースは、Private Linkが構成されている場合でもインターネット トラフィックを受け入れます。 Private Linkは、唯一のパスではなく、追加のパスになります。
Azure ポータルで、ワークスペースの Public Network Access を Disabled に設定します。 これにより、ワークスペース UI と API へのパブリック イングレスがブロックされます。
ワークスペースのイングレス コントロール
推奨されるイングレス ポリシー フレームワークである コンテキストベースのイングレス (CBI) を使用して、ワークスペースのイングレスを構成します。 CBI ルールは、ネットワーク ソース (IP 範囲)、ID、認証メカニズム、アクセス スコープを 1 つの許可/拒否モデルに結合するため、ネットワーク ソース属性はスタンドアロン IP アクセス リスト機能と同じジョブを実行します。
IP アクセス リスト は引き続きサポートされ、CBI と共に構成できます。 両方が構成されている場合は、両方のコントロールで要求を許可する必要があります。
構成レベル:
- アカウント レベルの CBI ポリシー: ポリシーにアタッチされているすべてのワークスペースに適用されます。 コンテキストベースのイングレス ポリシーの管理を参照してください。
- ワークスペース レベルの IP アクセス リスト: 1 つのワークスペースに適用します。 「ワークスペース向けの IP アクセス リストを構成する」をご覧ください。
- アカウント レベルの IP アクセス リスト: アカウント コンソールに適用します。 「アカウント コンソール向けの IP アクセス リストを構成する」をご覧ください。
ベスト プラクティス:
- 幅広く開始し、実際の使用状況に基づいて調整します。
- 目的と有効期限を含む IP 範囲を文書化します。
- 既知の適切な IP 範囲を使用して管理者アクセスを維持します。
- 四半期ごとに確認し、古い範囲を削除します。
警告
イングレス ポリシーと IP アクセス リストが正しく構成されていないと、ワークスペースからロックアウトされる可能性があります。 既知の適切な IP 範囲を通じて管理者アクセスを常に維持します。
OpenSharing 受信者のアクセス制御
OpenSharing では、受信者オブジェクトに構成された独自の IP アクセス リストが使用されます。 これはワークスペースの IP アクセス リストとは別であり、コンテキストベースのイングレスではカバーされません。 Databricks から Open 共有への共有(Azure Databricks 以外の受信者)にのみ適用されます。
IP アクセス リストを使用した OpenSharing 受信者アクセスの制限 (Databricks から Open への共有) を参照してください。
受信接続
ワークスペース UI と API へのユーザー アクセスのプライベート接続を確立します。 ユーザーは、VPN または受信方向の Private Link 経由でワークスペースにアクセスし、パブリック インターネット経由では決してアクセスしません。
ワークスペースのInbound Private Linkの設定を参照してください。
カスタム DNS
Azure Databricks エンドポイントをプライベート IP アドレスに解決するようにプライベート DNS を構成します。
Azureプライベート エンドポイントを作成するときに、プライベート DNS ゾーンを自動的に作成します。
送信
サーバーレス エグレス制御 (ネットワーク ポリシーと NCC プライベート エンドポイント) は、 セキュリティ強化された接続 ベースラインから継承されます。 このアーキテクチャでは、Hardened ではオプションである外部ファイアウォールが、クラシック コンピューティングの全アウトバウンドトラフィック検査には必須となります。
外部ファイアウォール (必須)
検査、ログ記録、ポリシー適用のために、すべてのエグレス トラフィックをファイアウォール経由でルーティングします。 オプションは次のとおりです。
- Azure Firewallまたはサード パーティのネットワーク仮想アプライアンス (NVA)。
Tip
アーティファクト ストレージAzure Databricksサービス エンドポイント ポリシーを使用してファイアウォールをバイパスし、データ転送コストを削減します。 アーティファクト ストレージだけで、クラスター ノードごとに最大 11 GB のダウンロードを考慮できます。
ファイアウォール規則で許可する必要がある必要なAzure Databricksエンドポイントについては、Azure Databricks サービスと資産のIP アドレスとドメインを参照してください。
Tip
最大ロックダウンについては、Python、R、Maven パッケージ用のプライベート パッケージ リポジトリ (JFrog Artifactory や Sonatype Nexus など) をホストすることを検討してください。 これにより、PyPI などのパブリック パッケージ インデックスへのアクセスを許可するファイアウォール規則が不要になります。
警告
Azure Databricksコントロール プレーンと SCC リレー接続では、証明書のピン留めで TLS が使用されます。 クラスターとAzure Databricks コントロール プレーン間のトラフィックで TLS 検査 (復号化と再暗号化) を有効にしないでください。 これを行うと、クラスターエラーが発生します。 TLS インターセプトなしで宛先 FQDN または IP によるこれらの接続を許可するようにファイアウォール規則を構成します。 必要なエンドポイントについては、IP アドレスとドメインAzure Databricksサービスと資産を参照してください。
Important
ファイアウォール規則が正しく構成されていないと、Azure Databricks機能が壊れる可能性があります。 非運用環境で十分にテストします。
データ流出防止
許可されていないデータ流出を防ぐために、ネットワーク ポリシーとファイアウォール制御を構成します。
- ネットワーク ポリシーを使用したサーバーレスエグレス制御。
- ファイアウォール/NVA を介したクラシック コンピューティング エグレス。
- 承認されたデータ宛先のプライベート エンドポイント ルール。
実装ガイダンスについては、「 データ流出保護 」を参照してください。
クラシック コンピューティング ベースライン
クラシック コンピューティング ベースラインは マネージド セキュリティから継承され、クラウド サービス エンドポイントは セキュリティ強化された接続から継承されます。 このアーキテクチャには、追加のクラシック コンピューティング コンポーネントは必要ありません。
ベースラインには、VNet インジェクション、セキュア クラスター接続 (SCC)、クラシック Private Linkが含まれます。 クラウド サービス エンドポイントには、ユーザー定義ルート (UDR)、サービス エンドポイント、カスタマー マネージド ストレージ アカウントのプライベート エンドポイントが含まれます。
データ アクセスのエグレス アプローチ
コンピューティング リソースからの送信データ アクセスを処理するには、次の 2 つの方法があります。
ファイアウォール付き NAT ゲートウェイ: 送信接続用の NAT ゲートウェイをデプロイし、検査のためにファイアウォールを経由してトラフィックをルーティングします。 このアプローチにより、外部パッケージ リポジトリと API への制御されたアクセスが可能になり、トラフィック パターンの可視性が維持されます。 外部リソースにアクセスする必要があるが、検査とログ記録が必要な場合は、この方法を使用します。
NAT ゲートウェイなし (完全にプライベート): NAT ゲートウェイを完全に削除して、コンピューティング リソースからすべてのパブリック通信を排除します。 すべてのデータアクセスは、プライベートエンドポイントと VPC エンドポイント経由でのみ行われます。 この方法では、パブリック エグレス パスを介してデータ流出の可能性を排除することで、最高レベルのセキュリティが実現されます。 この方法は、組織がコンピューティング リソースからのパブリック インターネット通信を禁止する場合に使用します。
Implementation
デプロイされた セキュリティ強化された接続 ベースラインから開始します。 次のフェーズでは、このアーキテクチャを定義するプライベート ワークスペース アクセスと必要な外部ファイアウォールを追加します。
フェーズ 1: 受信コントロール
受信側 Private Link を構成する
Azure Azure Databricks UI と API へのユーザー アクセスが、パブリック IP 経由ではなくプライベートにルーティングされるように、インバウンド Private Link を構成します。 ワークスペースのInbound Private Linkの設定を参照してください。
パブリック ネットワーク アクセスを無効にする
Azure ポータルで、ワークスペースの Public Network Access を Disabled に設定します。 これが実際にパブリック イングレスをブロックするものです。 これがないと、インバウンド Private Link が構成されていても、ワークスペースはインターネットからのトラフィックを受け付けます。
プライベート ユーザー アクセスをテストする
VPN またはPrivate Linkを使用してユーザー アクセスをテストし、認証されたユーザーがプライベート ネットワーク パス経由でのみワークスペースに到達できること、およびパブリック アクセスがブロックされていることを確認します。
フェーズ 2: 外部ファイアウォール (必須)
外部ファイアウォールをデプロイする
Azure Firewallまたはサードパーティのネットワーク仮想アプライアンス (NVA) をハブ VNet にデプロイし、VNet ピアリングまたは仮想ハブを使用してワークスペース VNet を接続します。
UDR を使用してファイアウォール経由でエグレスをルーティングする
ワークスペース サブネット内のユーザー定義ルート (UDR) をファイアウォールへの既定のルートで構成し、コンピューティングAzure Databricksからの送信トラフィックがハブ ファイアウォールを通過するようにします。 「Azure Databricks のためのユーザー定義のルート設定」を参照してください。
TLS インターセプトなしでファイアウォール規則を構成する
コントロール プレーンと SCC リレー トラフィックで TLS インターセプトを行わずに、必要なAzure Databricks エンドポイント (Azure Databricks サービスと資産の IP アドレスとドメイン を許可するようにAzure Firewallアプリケーションとネットワークルールを構成します。
フェーズ 3: 検証
エグレス制御を確認する
Azure Firewall のログと診断を確認し、Azure Databricks のトラフィックが検査され、ポリシーに従って制限されていることを確認して、エグレス制御を検証します。
パブリック IP アドレスがないことを確認する
ワークスペース VNet 内のクラスター ノードまたはその他のAzure Databricksマネージド コンピューティング リソースにパブリック IP アドレスが割り当てられていないか確認します。
プライベート パスを介してトラフィック フローを検証する
すべての制御、データ、着信トラフィックが、設計どおりに構成されたPrivate Link エンドポイントとハブ ファイアウォールを通過することを検証します。
Azure Databricks Terraform SRA は、このデプロイ パターンの開始点として、コードとしてのインフラストラクチャ テンプレートを提供します。
Validation
アーキテクチャをデプロイした後、次のチェックを実行して、完全なネットワーク分離、プライベート接続、エグレス制御が構成どおりに機能することを確認します。
| 検査 | 予想される結果 |
|---|---|
| VPN 経由でアクセスできるワークスペース | はい |
| VPN なしでアクセス可能なワークスペース | いいえ |
| SCC を使用してクラスターを起動する | はい、パブリック IP はありません |
| プライベート接続を介したデータ アクセス | はい |
| ファイアウォールの承認なしでエグレスがブロックされる | はい |
| DNS のプライベート IP への解決 | はい |
Troubleshooting
検証チェックが失敗した場合、またはワークロードが必要なエンドポイントに接続できない場合は、次のクラウド固有のテーブルを使用して一般的な問題を診断します。
| Issue | 原因 | Resolution |
|---|---|---|
| クラスターを開始できない | SCC、Azure Databricks コントロール プレーン、またはストレージ アカウント (NSG ルール、ルーティング) に必要なエンドポイントまたは正しく構成されていないプライベート エンドポイントをブロックするファイアウォール | ファイアウォール ログを確認し、インフラストラクチャ規則Azure Databricks追加します。プライベート エンドポイント NSG 規則でクラスター サブネットからのトラフィックが許可されていることを確認します。UDR を確認します |
| DNS 解決が失敗する | 正しく構成されていないプライベート DNS | プライベート DNS ゾーンと VNet リンクを確認する |
| ストレージ アクセスが失敗する | プライベート エンドポイントまたはルーティングの問題 | プライベート エンドポイントの構成とルート テーブルを確認する |
| パッケージのインストールが失敗する | ファイアウォールによってブロックされた PyPI | ファイアウォールの許可リストに PyPI を追加する |
継続的な保守
- ファイアウォール規則: エグレス許可リストを定期的に確認および更新します。
- DNS 管理: ワークスペースを追加するときにレコードを更新します。
- エンドポイントの監視: プライベート エンドポイントの正常性とデータ転送のコストを追跡します。
- ネットワーク ポリシー: 承認された新しいデータ ソースのプライベート エンドポイントを追加します。
- ファイアウォールの削除: ファイアウォールの運用オーバーヘッドが高すぎる場合や、コンプライアンス要件が緩和された場合は、ファイアウォール コンポーネントを削除し、プライベート接続と VPN アクセスを維持できます。
- セキュリティ強化された接続へのダウングレード: プライベート ワークスペースへのアクセスが生産性の障壁になる場合。
次のステップ
| 資源 | Description |
|---|---|
| データ流出保護 | ネットワークと Unity カタログコントロールを組み合わせてデータ流出を防ぐための詳細な参照アーキテクチャ。 |
| ネットワーク | Azure Databricksのネットワーク オプションと概念。 |