注
この機能には Premium レベルが必要です。
このページでは、コンテキストベースのイングレス制御の概要について説明します。 サーバーレスエグレス制御については、「 サーバーレスエグレス制御とは」を参照してください。
イングレス ポリシーを構成するには、 コンテキストベースのイングレス ポリシーの管理に関するページを参照してください。
コンテキストベースのイングレス制御の概要
コンテキストベースのイングレス制御は、IP アクセス リストおよびフロントエンドのプライベート接続と連携して機能し、アカウント管理者が、Azure Databricks で 誰 が、どこから 呼び出しているか、そして 何 にアクセスできるかを組み合わせた許可ルールと拒否ルールを設定できるようにします。 これにより、信頼できる ID、要求の種類、ネットワーク ソースの組み合わせのみがワークスペースに到達できるようになります。 コンテキストベースのイングレス制御は、アカウント レベルで構成されます。 1 つのポリシーで複数のワークスペースを管理できます。
コンテキストベースのイングレスを使用すると、次のことができます。
- 資格情報に加えて、信頼されたネットワーク ソースである 2 番目の要素を要求して、信頼されていないネットワークからのアクセスを停止します。
- IP 範囲の代わりに ID をキー設定することで、安定したエグレス IP なしで SaaS クライアントへのアクセスを許可します。
- 信頼度の低いソースが、Azure Databricks API やワークスペース UI などの特定のスコープのみを使用できるようにすることで、アクセスを制限します。
- 特権自動化の保護: 高価値のサービス プリンシパルを高信頼ネットワークのみに制限します。
- 監査を効果的に行う: ブロックされた要求を監視するために、Unity カタログ システム テーブルで詳細な拒否ログをキャプチャします。
コンテキストベースのイングレス コントロールのコア概念
ネットワーク ソース
ネットワーク ソースは、要求の配信元を定義します。 サポートされる型には次のようなものがあります。
パブリック アクセス ポリシー:
- すべてのパブリック IP: 任意のパブリック インターネット ソース。
- 選択した IP: 特定の IPv4 アドレスまたは CIDR 範囲。
プライベート アクセス ポリシー:
- すべての登録済みプライベート エンドポイント: アカウントに登録されているすべてのプライベート エンドポイント。
- 選択したプライベート エンドポイント: アカウントに登録されている特定のプライベート エンドポイント。
-
Azure workspace Private Link: ワークスペース ポリシーの拒否ルールでのみ。 すべての
databricks_ui_apiエンドポイントへのアクセスを拒否します。 -
すべてのプライベートアクセス: ワークスペース ポリシーの拒否ルールでのみ。 すべての
databricks_ui_apiおよび登録済みエンドポイントへのアクセスを拒否します。
アクセスの種類
規則は、さまざまな受信要求スコープに適用されます。 各スコープは、許可または拒否できる受信要求のカテゴリを表します。
ワークスペース レベルのポリシー アクセスの種類:
- ワークスペース UI: ワークスペースへのブラウザー アクセス。
- API: SQL エンドポイント (JDBC/ODBC) を含むAzure Databricks API を介したプログラムによるアクセス。 すべての API または特定の API スコープ (アプリ、ダッシュボード、モデル サービスなど) を対象にすることができます。
- アプリ ランタイム: Databricks Apps のデプロイへのアクセスを許可または拒否します。 Databricks アプリを参照してください。 このアクセスの種類では、[ すべてのユーザーとサービス プリンシパル の ID] オプションのみがサポートされています。
- Lakebase ランタイム: Lakebase データベース インスタンスへの接続。 Lakebase インスタンスを参照してください。 このアクセスの種類では、[ すべてのユーザーとサービス プリンシパル の ID] オプションのみがサポートされています。
アカウント レベルのポリシー アクセスの種類:
- アカウント UI: アカウント レベルのリソース (アカウント コンソールやアカウント レベルの Genie One など) へのブラウザー アクセス。
- アカウント API: Azure Databricks アカウント API を介したプログラムによるアクセス。
アイデンティティーズ
ルールは、さまざまな ID の種類を対象にすることができます。 Apps ランタイムと Lakebase ランタイム アクセスの種類の場合、サポートされているオプションは[すべてのユーザーとサービス プリンシパル]のみです。
アカウント レベルのポリシーでサポートされているオプションは、 すべてのユーザーとサービス プリンシパルのみです。
- すべてのユーザーとサービス プリンシパル: 人間のユーザーと自動化の両方。
- すべてのユーザー: 人間のユーザーのみ。
- すべてのサービス プリンシパル: オートメーション アイデンティティのみ。
- 選択した ID: 特定のユーザーまたはサービス プリンシパル。
ルールの評価
- 既定の拒否: 制限モードでは、明示的に許可されない限り、アクセスは拒否されます。
- 許可前に拒否: 拒否ルールを使用すると、許可ルールの例外を定義できます。
- 既定のワークスペース レベルのポリシー: 各アカウントには、明示的なポリシーの割り当てなしで、対象となるすべてのワークスペースに既定のワークスペース レベルのイングレス ポリシーが適用されます。
強制モード
コンテキストベースのイングレス ポリシーでは、次の 2 つのモードが有効になります。
- すべての製品に対して強制適用: Azure Databricks はルールを積極的に適用し、ルールに違反する要求をブロックします。
- すべての製品向けのドライ ラン モード: Azure Databricks は違反をログに記録しますが、リクエストはブロックしません。 このモードを使用して、適用する前にポリシーの影響を評価します。
注
ネットワーク ポリシーでは、一度に 1 つの強制モードのみがサポートされます。
Auditing
拒否された要求またはドライラン要求は、 system.access.inbound_network システム テーブルに記録されます。 システム テーブルにアクセスできない場合は、メタストア管理者がアクセス許可を付与できます。
システム テーブルへのアクセス権の付与を参照してください。
各ログ エントリには、次のものが含まれます。
- イベント時間
- ワークスペース ID
- リクエストを拒否したルールのラベル
- 要求の種類
- アイデンティティ
- ネットワーク ソース
- アクセスの種類 (DENIED または DRY_RUN_DENIAL)
これらのログにクエリを実行して、ルールが期待どおりに動作することを確認し、予期しないアクセス試行をキャッチします。
他のコントロールとの関係
- ワークスペース IP アクセス リスト: 論理 AND を使用してコンテキストベースのイングレス ポリシーと共に評価され、2 つの間に厳密なシーケンスはありません。 要求は、IP アクセス リストとイングレス ポリシーの両方で許可されている場合にのみ許可されます。 ワークスペースの IP アクセス リストは、アクセスをさらに絞り込むことができますが、拡大することはできません。
- サーバーレス エグレス制御: サーバーレス コンピューティングからの送信ネットワーク トラフィックを制御することで、イングレス ポリシーを補完します。 ネットワーク ポリシーの管理を参照してください。
Tip
複雑さを軽減するために、Databricks では、IP アクセス リストも維持するのではなく、コンテキストベースのイングレス ポリシーを唯一のポリシー エンジンとして使用することをお勧めします。
-
フロントエンドのプライベート接続: ワークスペース ポリシーと指定された登録済みエンドポイントについては、コンテキストベースの受信アクセスまたは
databricks_ui_apiプライベート エンドポイントのいずれかで許可されているエンドポイントが許可されます。 しかし、ワークスペースのコンテキストベースのイングレスポリシーにすべてのdatabricks_ui_apiエンドポイントを拒否する拒否ルールがある場合、どのdatabricks_ui_apiエンドポイントもAzure Databricksにアクセスできません。 ワークスペースについては「Inbound Private Linkの設定」を参照してください。 - [パブリック ネットワーク アクセスの許可] トグル: [パブリック ネットワーク アクセスを許可する] が有効になっている場合、ワークスペースの IP アクセス リストが評価されます。 それ以外の場合、すべてのパブリック イングレスがブロックされ、ワークスペースのパブリック イングレス ポリシーは評価されません。
注
コンテキストベースのイングレス(GA)は一般的に利用可能です。 関連する機能の一部はベータ版です:
- アカウントのコンテキストベースのイングレスポリシー:アカウントコンソール、アカウントレベルのGenie One、アカウントAPIにアクセスポリシーを適用します。 これらの保険の却下は記録されません。
- ネットワーク ソースとしてのパートナー プラットフォーム: サード パーティ製アプリ (Power BI、Tableau Cloud、および dbt プラットフォーム) がAzure Databricksに接続するために使用する IP を許可リストします。 Azure Databricksは、これらの IP リストを自動的に管理および更新します。
ベスト プラクティス
- ドライランモードから始め、アクセスを中断することなく影響を観察します。
- IP をローテーションする SaaS クライアントでは、可能な限り ID ベースのルールを使用します。
- まず、特権サービス プリンシパルに拒否規則を適用して、影響を受ける領域を制限します。
- ポリシー名は明確で一貫性を保ちます。
注
コンテキストベースのイングレス制御は、Azure West Indiaリージョン、Azure Government、またはAzure Chinaリージョンでは利用できません。 代わりに IPアクセスリストを 使いましょう。