Azure Synapse Analytics のセキュリティに関するホワイト ペーパー: ネットワークのセキュリティ

注意

この記事は、"Azure Synapse Analytics のセキュリティに関するホワイト ペーパー" シリーズの記事に含まれています。 このシリーズの概要については、Azure Synapse Analytics のセキュリティに関するホワイト ペーパーを参照してください。

Azure Synapse を保護するには、一連のネットワーク セキュリティ オプションを検討する必要があります。

ネットワーク セキュリティの用語

この最初のセクションでは、ネットワーク セキュリティに関連するいくつかの重要な Azure Synapse 用語の概要と定義について説明します。 この記事を読んでいる間、これらの定義に留意してください。

Synapse ワークスペース

"Synapse ワークスペース" は、Azure Synapse によって提供されるすべてのサービスのセキュリティ保護可能な論理コレクションです。 専用 SQL プール (旧称 SQL DW)、サーバーレス SQL プール、Apache Spark プール、パイプライン、その他のサービスが含まれます。 IP ファイアウォール規則、マネージド仮想ネットワーク、および流出防止のために承認されたテナントなどの特定のネットワーク構成設定は、ワークスペース レベルで構成され、保護されます。

Synapse ワークスペース エンドポイント

エンドポイントは、サービスにアクセスするための着信接続点です。 各 Synapse ワークスペースには、次の 3 つの異なるエンドポイントがあります。

  • 専用 SQL プールにアクセスするための専用 SQL エンドポイント
  • サーバーレス SQL プールにアクセスするためのサーバーレス SQL エンドポイント
  • ワークスペース内の Apache Spark プールやパイプライン リソースにアクセスするための開発エンドポイント

これらのエンドポイントは、Synapse ワークスペースの作成時に自動的に作成されます。

Synapse Studio

Synapse Studio は、Azure Synapse 用にセキュリティで保護された Web フロントエンド開発環境です。 データ エンジニア、データ サイエンティスト、データ開発者、データ アナリスト、Synapse 管理者など、さまざまなロールがサポートされています。

Synapse Studio を使用して、次のようなさまざまなデータと管理の操作を Azure Synapse で実行します。

  • 専用 SQL プール、サーバーレス SQL プール、実行中の SQL スクリプトへの接続。
  • Apache Spark プールでのノートブックの開発と実行。
  • パイプラインの開発と実行。
  • 専用 SQL プール、サーバーレス SQL プール、Apache Spark プール、パイプライン ジョブの監視。
  • ワークスペース項目の Synapse RBAC アクセス許可の管理。
  • データ ソースとシンクとのマネージド プライベート エンドポイント接続の作成。

ワークスペース エンドポイントには、Synapse Studio を使用して接続できます。 また、ワークスペース エンドポイントへのプライベート通信を確保するために、プライベート エンドポイントを作成することもできます。

パブリック ネットワーク アクセスとファイアウォール規則

既定では、ワークスペース エンドポイントはプロビジョニング時には "パブリック エンドポイント" です。 Azure への VPN 接続や ExpressRoute 接続を必要とすることなく、顧客の組織の外部にあるネットワークを含め、任意のパブリック ネットワークからこれらのワークスペース エンドポイントへのアクセスが可能になります。

Azure Synapse などの PaaS サービスを含むすべての Azure サービスは、悪意のある攻撃 (アクティブなトラフィックの監視、常時検出、攻撃の自動軽減) を軽減するために DDoS 基本保護によって保護されています。

ワークスペース エンドポイントへのすべてのトラフィックは、パブリック ネットワーク経由であっても、Transport Level Security (TLS) プロトコルによって転送中に暗号化され、保護されます。

機密データを保護するには、ワークスペース エンドポイントへのパブリック アクセス全体を無効にすることをお勧めします。 これにより、すべてのワークスペース エンドポイントには、プライベート エンドポイントを使用してしかアクセスできないことが確実になります。

サブスクリプションまたはリソース グループ内のすべての Synapse ワークスペースに対してパブリック アクセスを無効にするには、Azure Policy を割り当てます。 また、ワークスペースによって処理されるデータの機密度に基づいて、ワークスペースごとにパブリック ネットワーク アクセスを無効にすることもできます。

ただし、パブリック アクセスを有効にする必要がある場合は、指定されたパブリック IP アドレスの一覧からの着信接続のみを許可するように IP ファイアウォール規則を構成することを強くお勧めします。

オンプレミス環境に Azure への VPN アクセスまたは ExpressRoute が存在しないときに、ワークスペース エンドポイントへのアクセスが必要な場合は、パブリック アクセスを有効にすることを検討してください。 この場合は、IP ファイアウォール規則で、オンプレミスのデータセンターとゲートウェイのパブリック IP アドレスの一覧を指定します。

プライベート エンドポイント

Azure プライベート エンドポイントは、顧客独自の Azure Virtual Network (VNet) サブネットで作成されたプライベート IPアドレスを持つ仮想ネットワーク インターフェイスです。 プライベート エンドポイントは、Azure Synapse、専用 SQL プール (旧称 SQL DW)、Azure SQL Databases、Azure Storage、または Azure Private Link サービスを利用する Azure 内の任意のサービスなど、プライベート エンドポイントをサポートする任意の Azure サービスに対して作成できます。

3 つの Synapse ワークスペース エンドポイントすべてについて、VNet でプライベート エンドポイントを個別に作成できます。 これにより、Synapse ワークスペースの 3 つのエンドポイント用に 3 つのプライベート エンドポイントが作成される可能性があります。1 つは専用 SQL プール用、1 つはサーバーレス SQL プール用、もう 1 つは開発エンドポイント用です。

プライベート エンドポイントには、パブリック エンドポイントと比較して多くのセキュリティ上のメリットがあります。 Azure VNet 内のプライベート エンドポイントには、次の場所からのみアクセスできます。

  • このプライベート エンドポイントを含む同じ VNet。
  • リージョンまたはグローバルにピアリングされた Azure VNet。
  • VPN Gateway または ExpressRoute 経由で Azure に接続されているオンプレミス ネットワーク。

プライベート エンドポイントの主なメリットは、パブリック インターネットにワークスペース エンドポイントを公開する必要がなくなったことです。 "公開は少なければ少ないほどよいです。"

次の図は、プライベート エンドポイントを示しています。

Diagram shows a customer VNet in Azure and an Azure Synapse Analytics workspace. Elements of the diagram are described in the following table.

上の図は、次の重要なポイントを示しています。

Item 説明
Item 1. 顧客 VNet 内のワークステーションが、Azure Synapse プライベート エンドポイントにアクセスします。
Item 2. 顧客 VNet と別の VNet との間のピアリング。
Item 3. ピアリングされた VNet からのワークステーションが、Azure Synapse プライベート エンドポイントにアクセスします。
Item 4. オンプレミス ネットワークが、VPN または ExpressRoute を介して Azure Synapse プライベート エンドポイントにアクセスします。
Item 5. ワークスペース エンドポイントが、Azure Private Link サービスを使用してプライベート エンドポイントを介して顧客の VNet にマップされます。
Item 6. Synapse ワークスペースでパブリック アクセスが無効になります。

次の図では、プライベート エンドポイントが、サービス全体ではなく、PaaS リソースのインスタンスにマップされます。 ネットワーク内でセキュリティ インシデントが発生した場合、マップされたリソース インスタンスだけが公開され、露出とデータ漏えいや流出の脅威を最小限に抑えます。

Diagram shows three workspaces: A, B, and C. Elements of the diagram are described in the following table.

上の図は、次の重要なポイントを示しています。

Item 説明
Item 1. 顧客 VNet 内のプライベート エンドポイントが、ワークスペース A の単一の専用 SQL プール (旧称 DW SQL) エンドポイントにマップされます。
Item 2. 他のワークスペース (B および C) の他の SQL プール エンドポイントには、このプライベート エンドポイントからアクセスできないので、露出を最小限に抑えます。

プライベート エンドポイントは Microsoft Entra のテナントとリージョン間で機能します。そのため、テナントとリージョン間で Synapse ワークスペースへのプライベート エンドポイント接続を作成できます。 この場合、プライベート エンドポイント接続承認ワークフローを実行します。 リソース所有者は、承認または拒否されるプライベート エンドポイント接続を制御します。 リソース所有者は、ワークスペースに接続できるユーザーを完全に制御できます。

次の図は、プライベート エンドポイント接続承認ワークフローを示しています。

Diagram shows a customer VNet in Tenant A, and a customer VNet in Tenant B. An Azure Private Link connects them. Elements of the diagram are described in the following table.

上の図は、次の重要なポイントを示しています。

Item 説明
Item 1. テナント A のワークスペース A 内の専用 SQL プール (旧称 SQL DW) には、テナント A の顧客 VNet 内のプライベート エンドポイントからアクセスされます。
Item 2. テナント A のワークスペース A 内の同じ専用 SQL プール (旧称 SQL DW) には、接続承認ワークフローを通じて、テナント B の顧客 VNet 内のプライベート エンドポイントからアクセスされます。

マネージド VNet

Synapse マネージド VNet 機能では、Synapse ワークスペース間で Apache Spark プールとパイプライン コンピューティング リソースに完全に管理されたネットワーク分離が提供されます。 これはワークスペースの作成時に構成できます。 さらに、同じワークスペース内で Spark クラスターのネットワーク分離も提供されます。 各ワークスペースには、Synapse によって完全に管理される独自の仮想ネットワークがあります。 マネージド VNet は、変更を加えるユーザーには表示されません。 マネージド VNet 内で Azure Synapse によってスピンアップされるパイプラインまたは Apache Spark プール コンピューティング リソースは、独自の VNet 内にプロビジョニングされます。 これにより、他のワークスペースから完全にネットワークが分離されます。

この構成では、通常は VNet インジェクションで行われるように、Apache Spark プールおよびパイプライン リソースの VNet とネットワーク セキュリティ グループを作成して管理する必要がなくなります。

そのため、専用 SQL プールやサーバーレス SQL プールなど、Synapse ワークスペース内のマルチテナント サービスは、マネージド VNet 内にプロビジョニングされません

次の図は、マネージド VNet 内に Apache Spark プールとパイプライン リソースがあるワークスペース A と B の 2 つのマネージド VNet 間のネットワーク分離を示しています。

Diagram shows two workspaces: Workspace A and B with network isolation between workspaces.

マネージド プライベート エンドポイント接続

マネージド プライベート エンドポイント接続を使用すると、(Private Link をサポートする) 任意の Azure PaaS サービスに安全かつシームレスに接続できます。顧客の VNet からそのサービスのプライベート エンドポイントを作成する必要はありません。 Synapse によって、プライベート エンドポイントが自動的に作成され管理されます。 これらの接続は、Azure PaaS サービスに "プライベートに" 接続するために、Apache Spark プールやパイプライン リソースなど、Synapse マネージド VNet 内でプロビジョニングされるコンピューティング リソースで使用されます。

たとえば、パイプラインから Azure ストレージ アカウントに "プライベートに" 接続する場合、通常の方法では、ストレージ アカウント用のプライベート エンドポイントを作成し、セルフホステッド統合ランタイムを使用してストレージ プライベート エンドポイントに接続します。 Synapse マネージド Vnet では、Azure 統合ランタイムを使用してストレージ アカウントにプライベートに接続できます。これには、そのストレージ アカウントに直接、マネージド プライベート エンドポイント接続を作成するだけです。 この方法では、Azure PaaS サービスにプライベートに接続するためのセルフホステッド統合ランタイムが必要なくなります。

そのため、専用 SQL プールやサーバーレス SQL プールなど、Synapse ワークスペース内のマルチテナント サービスは、マネージド VNet 内にプロビジョニングされません。 したがって、送信接続のためにワークスペースで作成されたマネージド プライベート エンドポイント接続を使用しません。

次の図は、ワークスペース A のマネージド VNet から Azure ストレージ アカウントに接続するマネージド プライベート エンドポイントを示しています。

Diagram shows Workspace A with an Azure Private Link to Azure storage.

高度な Spark セキュリティ

マネージド VNet には、Apache Spark プール ユーザーにいくつかの追加のメリットがあります。 VNet インジェクションのように、"固定" サブネット アドレス空間の構成について心配する必要はありません。 Azure Synapse が、ワークロードへのこれらのアドレス空間の動的割り当てを自動的に行います。

さらに、Spark プールがジョブ クラスターとしても動作します。 これは、ワークスペースと対話するときに、各ユーザーが独自の Spark クラスターを取得することを意味します。 ワークスペース内での Spark プールの作成は、Spark ワークロードの実行時にユーザーに割り当てられるものに関するメタデータ情報です。 つまり、各ユーザーは、ワークロードを実行するために、"マネージド VNet 内の専用サブネットで" 独自の Spark クラスターを取得します。 同じユーザーからの Spark プール セッションは、同じコンピューティング リソースで実行されます。 この機能を提供することにより、主に次の3つのメリットがあります。

  • ユーザーに基づくワークロードの分離によるセキュリティの強化。
  • うるさい隣人の削減。
  • パフォーマンスの向上。

データ流出防止

マネージド VNet の Synapse ワークスペースには、"データ流出防止" と呼ばれる追加のセキュリティ機能があります。 専用 SQL プール、サーバーレス SQL プール、Apache Spark プール、パイプラインなど、すべてのサービスから、Azure Synapse から送信されるすべてのエグレス トラフィックを保護します。 これを構成するには、(ワークスペースの作成時に) ワークスペース レベルでデータ流出防止を有効にして、送信接続を Microsoft Entra テナントの許可リストに制限します。 既定では、ワークスペースのホーム テナントのみがリストに追加されますが、ワークスペースの作成後にいつでも Microsoft Entra テナントのリストを追加または変更することができます。 テナントの追加は高度な権限を必要とする操作であり、Synapse 管理者の昇格されたロールが必要です。 複雑なネットワーク セキュリティ ポリシーを導入する必要なく、Azure Synapse から他の組織やテナントへのデータの流出を効果的に制御します。

データ流出防止が有効になっているワークスペースの場合、Synapse パイプラインと Apache Spark プールで、すべての送信接続にマネージド プライベート エンドポイント接続を使用する必要があります。

専用 SQL プールとサーバーレス SQL プールでは、送信接続にマネージド プライベート エンドポイントを使用しません。ただし、SQL プールからの送信接続は、"承認されたターゲット" (マネージド プライベート エンドポイント接続のターゲット) に対してのみ行うことができます。

Synapse Private Link ハブを使用すると、Azure Private Link を使用して顧客の VNet から Synapse Studio に安全に接続できます。 この機能は、お客様が Synapse Studio を使用して、送信インターネット トラフィックが限られた Azure サービスのセットに制限されている制御された制限付きの環境から Synapse ワークスペースにアクセスする必要がある場合に便利です。

これを実現するには、プライベート リンク ハブ リソースと、VNet からこのハブへのプライベート エンドポイントを作成します。 このプライベート エンドポイントは、VNet のプライベート IP アドレスと一緒に、完全修飾ドメイン名 (FQDN) web.azuresynapse.net を使用して Studio にアクセスするために使用されます。 プライベート リンク ハブ リソースは、Synapse Studio の静的なコンテンツを Azure Private Link 経由でユーザーのワークステーションにダウンロードします。 さらに、ワークスペース エンドポイントとの通信がプライベートであることを確認するために、個々のワークスペース エンドポイント用に個別のプライベート エンドポイントを作成する必要があります。

次の図は、Synapse Studio のプライベート リンク ハブを示しています。

Diagram shows private link hubs for Synapse Studio. Elements of the diagram are described in the following table.

上の図は、次の重要なポイントを示しています。

Item 説明
Item 1. 制限付きの顧客 VNet 内のワークステーションが、Web ブラウザーを使用して Synapse Studio にアクセスします。
Item 2. プライベート リンク ハブ リソース用に作成されたプライベート エンドポイントが、Azure Private Link を使用して静的な Studio コンテンツをダウンロードするために使用されます。
Item 3. Synapse ワークスペース エンドポイント用に作成されたプライベート エンドポイントが、Azure Private Link を使用してワークスペース リソースに安全にアクセスします。
Item 4. 制限付き顧客 VNet のネットワーク セキュリティ グループ規則では、Azure Resource Manager、Azure Front Door、Microsoft Entra ID など、限られた Azure サービスのセットに対して、ポート 443 経由の送信トラフィックを許可します。
Item 5. 制限付き顧客 VNet のネットワーク セキュリティ グループ規則では、VNet からの他のすべての送信トラフィックを拒否します。
Item 6. Synapse ワークスペースでパブリック アクセスが無効になります。

専用 SQL プール (旧称 SQL DW)

Azure Synapse オファリングより前は、SQL DW という名前の Azure SQL データ ウェアハウス製品が提供されました。 この名前が専用 SQL プール (旧称 SQL DW) に変更されました。

専用 SQL プール (旧称 SQL DW) は、論理 Azure SQL Server 内に作成されます。 これは、SQL DW やその他の Azure SQL Databases を含むデータベースのコレクションの中央管理ポイントとして機能する、セキュリティ保護可能な論理コントラクトです。

Azure Synapse 向けのこの記事の前のセクションで説明したコアネットワーク セキュリティ機能の大部分は、専用 SQL プール (旧称 SQL DW) にも適用できます。 これには次のようなものがあります。

  • IP ファイアウォール規則
  • パブリック ネットワーク アクセスの無効化
  • プライベート エンドポイント
  • 送信ファイアウォール規則によるデータ流出防止

専用 SQL プール (旧称 SQL DW) はマルチテナント サービスであるため、マネージド VNet 内にはプロビジョニングされません。 これは、マネージド VNet やマネージド プライベート エンドポイント接続など、一部の機能が適用されないことを意味します。

ネットワーク セキュリティ機能のマトリックス

次の比較表は、Azure Synapse オファリングでサポートされるネットワーク セキュリティ機能の概要を示しています。

機能 Azure Synapse: Apache Spark プール Azure Synapse: 専用 SQL プール Azure Synapse: サーバーレス SQL プール 専用 SQL プール (旧称 SQL DW)
IP ファイアウォール規則 はい イエス イエス はい
パブリック アクセスの無効化 はい イエス イエス はい
プライベート エンドポイント はい イエス イエス はい
データ流出防止 はい イエス イエス はい
Synapse Studio を使用した安全なアクセス はい イエス 有効 いいえ
Synapse プライベート リンク ハブを使用した制限付きネットワークからのアクセス はい イエス 有効 いいえ
マネージド VNet とワークスペース レベルのネットワーク分離 はい 該当なし 該当なし 該当なし
送信接続用のマネージド プライベート エンドポイント接続 はい 該当なし 該当なし 該当なし
ユーザー レベルのネットワーク分離 はい 該当なし 該当なし 該当なし

次のステップ

このホワイト ペーパー シリーズの次の記事では、脅威の防止について説明します。