Azure Databricksのコンテキストベースのネットワークポリシーは、ワークスペースやアカウントレベルのリソース(例:アカウントコンソールやアカウントレベルのGenie One)へのインバウンドおよびアウトバウンドトラフィックの両方を管理するための統一されたセキュリティフレームワークを提供します。
Azure Databricksは、2種類のコンテキストベースの制御をサポートしています:
- コンテキストベースのイングレス制御:誰がどこから、何にアクセスできるリソースを、アイデンティティ、ネットワークソース、リクエストタイプの組み合わせに基づいて制限します。
- サーバーレス出口制御:サーバーレスワークロードがデータを送れる場所を制限し、認可された宛先への送信接続を制限します。
コンテキストベースのネットワークポリシー概要
コンテキストベースのネットワークポリシーにより、アカウント管理者は 誰が 誰から、 どこ から発信しているか、どこから通話している か、どこ に到達できるかを組み合わせた許可・拒否ルールを設定でき、サーバーレスワークロードがどの外部宛先に接続できるかを制御できます。 これにより、セキュリティやコンプライアンス要件を満たし、不正アクセスやデータ流出のリスクを減らすことができます。
ワークスペースレベルのポリシーはワークスペース レベルのポリシーの下で設定され、すべてのワークスペースには明示的な割り当てなしにデフォルトのワークスペースレベルのポリシーが割り当てられます。 アカウント レベルのポリシーは、 アカウント レベルのポリシーで個別に構成されます。そのポリシー ID が account-policy。
コンテキストベースのネットワークポリシーを使えば、以下が可能です:
- 信頼性のあるネットワークソースを認証情報に加えて必要とすることで、信頼できないネットワークからのアクセスを阻止します。
- 安定した出口IPを持たないソフトウェア・アズ・ア・サービス(SaaS)クライアントにアクセスを許可するには、IP範囲ではなくアイデンティティでキーを付けます。
- Azure Databricks APIやワークスペースUIなど、信頼度の低いソースが特定のスコープのみを使えるようにしてアクセスを制限します。
- サーバーレスワークロードからのアウトバウンド接続に対してデフォルトで拒否の姿勢を強制します。
- Unity Catalogシステムのテーブルに詳細な否認ログを記録することで、効果的に監査を行います。
コンテキストベースのネットワーク ポリシーは、次の既存のセキュリティ機能を補完します。
- コンテキストベースのイングレス制御:
- ワークスペースの IP アクセス リスト
- アカウント IP アクセス リスト
- インバウンド プライベート リンク (プライベート アクセス設定を使用)
- サーバーレス エグレス制御:
- アウトバウンド プライベート リンク (ネットワーク接続構成を使用)
ポリシーの種類の比較
コンテキストベースのネットワーク ポリシーには、イングレス制御とエグレス制御の 2 種類があります。 次の表に主要な相違点を示します。
| 特性 | イングレス コントロール | 出口制御 |
|---|---|---|
| 制御する内容 | Azure Databricks のワークスペースおよびアカウント レベルのエンドポイントへの受信リクエスト。 | サーバーレス コンピューティングから外部の宛先への送信接続。 |
| 主なユース ケース | ワークスペースとアカウント レベルのリソースにアクセスできるユーザー、アクセスできる場所、アクセス可能なリソースを制限します。 | サーバーレス コンピューティングが接続できる外部リソースを制御して、データ流出を防ぎます。 |
| ポリシーの条件 | アイデンティティ (複数のユーザーまたは複数のサービス プリンシパル) ネットワーク ソース (CIDR 範囲、登録済みのプライベート エンドポイント) アクセスの種類: ワークスペース (ワークスペース UI、API、アプリ ランタイム、Lakebase ランタイム);アカウントの場合 (アカウント UI、アカウント API) |
許可される場所 FQDN クラウド ストレージ コンテナー |
| 監査ログ |
system.access.inbound_network システム テーブル |
system.access.outbound_network システム テーブル |
コンテキストベースのイングレス制御
コンテキストベースのイングレス制御により、アカウント管理者はアイデンティティ、ネットワークソース、リクエストタイプを組み合わせた許可・拒否ルールを設定できるため、信頼できる組み合わせのみがリソースにアクセスできます。
ワークスペースレベルのポリシーがワークスペースへのアクセスを管理し、単一のアカウントレベルのポリシー(account-policy)がアカウントコンソールやアカウントレベルのGenie Oneなどのアカウントレベルのリソースを管理します。 各アカウントには、明示的な割り当てなしで適用されるすべての適格なワークスペースに適用されるデフォルトのワークスペースレベルのポリシーが含まれています。
ネットワークソース、アクセスタイプ、識別、ルール評価、強制モード、監査、そしてイングレスが他のネットワーク制御とどのように相互作用するかについては、 コンテキストベースのイングレス制御を参照してください。
サーバーレス エグレス制御
サーバーレスの離脱制御は、サーバーレスの計算資源からのアウトバウンドネットワーク接続を管理し、データ流出のリスクを減らします。 ネットワークポリシーは、1つまたは複数のワークスペースに紐づけられたアカウントレベルのオブジェクトで、サーバーレスワークロードのアウトバウンドアクセスモードを設定します。
- 完全アクセス:サーバーレスワークロードはインターネットやその他のネットワークリソースへの制限のないアウトバウンドアクセスが可能です。
- 制限アクセス:アウトバウンドアクセスはUnity Catalogの外部ロケーションと、ポリシーで明示的に記載したFQDNSおよびAzureストレージアカウントに限定されます。
制限アクセスのセキュリティ体制、対応するサーバーレス製品、設定手順については、「 サーバーレス出口制御とは何か?」をご覧ください。
強制モード
イングレスおよびエグレスのポリシーは、ルールを適用し違反リクエストをブロックする 強制 モードと、違反は記録されるがブロックされない ドライラン モードの両方をサポートしています。 Databricksは、意図しないアクセス障害を避けるために、試行実行モードで開始することを推奨しています。
監査ログ
Azure Databricksコンプライアンスと監視のためのポリシー評価を記録します:system.access.inbound_networkの入り拒否やsystem.access.outbound_networkの出出イベントなどです。 これらのログに対してクエリを実行してポリシーの有効性を検証し、未承認のアクセス試行を検出します。
ポリシーが他のコントロールと対話する方法
コンテキストベースのイングレスポリシーはIPアクセスリストやフロントエンドのプライベート接続と連携し、サーバーレスの出口制御はネットワーク接続設定を用いるアウトバウンドプライベート接続と連携して機能します。 イングレスがこれらの各コントロールとどのように相互作用するか、特にクラウドごとのプライベート接続動作については、「 他のコントロールとの関係」を参照してください。
Tip
複雑さを軽減するために、Databricks では、IP アクセス リストも維持するのではなく、コンテキストベースのイングレス ポリシーを唯一のポリシー エンジンとして使用することをお勧めします。 もしワークスペースにすでにIPアクセスリストがある場合は、「 ワークスペースのIPアクセスリストをコンテキストベースの入力に移行する」を参照してください。