Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Microsoft Fabric のネットワーク保護のアップデートについて
Search
Ryoma Nagata
August 27, 2025
Technology
1
94
Microsoft Fabric のネットワーク保護のアップデートについて
Microsoft Data Analytics Day(Online) 勉強会 2025/08
https://sqlserver.connpass.com/event/364307/
発表資料
Ryoma Nagata
August 27, 2025
Tweet
Share
More Decks by Ryoma Nagata
See All by Ryoma Nagata
Microsoft Analytics Day 2025.7 最新情報ピックアップ・デモ
ryomaru0825
0
42
Microsoft Fabric ガバナンス設計の一歩目を考える
ryomaru0825
1
500
Fabric + Databricks 2025.6 の最新情報ピックアップ
ryomaru0825
1
230
Microsoft Fabric のライセンスについて
ryomaru0825
2
4.4k
Microsoft Fabric OneLake を通じた Delta Lake & Iceberg の相互運用性
ryomaru0825
1
430
Microsoft Fabric OneLake の実体について
ryomaru0825
0
1k
European Fabric Community Conference 2024 での個人的ピックアップ
ryomaru0825
1
250
Microsoft Purview Data Governance について
ryomaru0825
2
2.2k
Microsoft Fabric OneLakeの相互運用性、他ソリューションとの連動について
ryomaru0825
2
670
Other Decks in Technology
See All in Technology
Webアクセシビリティ入門
recruitengineers
PRO
1
230
ZOZOTOWNフロントエンドにおけるディレクトリの分割戦略
zozotech
PRO
16
5.2k
イオン店舗一覧ページのパフォーマンスチューニング事例 / Performance tuning example for AEON store list page
aeonpeople
2
270
AIエージェント就活入門 - MCPが履歴書になる未来
eltociear
0
450
[CV勉強会@関東 CVPR2025 読み会] MegaSaM: Accurate, Fast, and Robust Structure and Motion from Casual Dynamic Videos (Li+, CVPR2025)
abemii
0
190
Yahoo!広告ビジネス基盤におけるバックエンド開発
lycorptech_jp
PRO
1
270
RAID6 を楔形文字で組んで現代人を怖がらせましょう(実装編)
mimifuwa
0
300
GCASアップデート(202506-202508)
techniczna
0
250
Amazon Bedrock AgentCore でプロモーション用動画生成エージェントを開発する
nasuvitz
6
420
新卒(ほぼ)専業Kagglerという選択肢
nocchi1
1
2.2k
実践アプリケーション設計 ②トランザクションスクリプトへの対応
recruitengineers
PRO
2
150
実践アプリケーション設計 ③ドメイン駆動設計
recruitengineers
PRO
1
170
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
Documentation Writing (for coders)
carmenintech
73
5k
Raft: Consensus for Rubyists
vanstee
140
7.1k
The Language of Interfaces
destraynor
160
25k
The Art of Programming - Codeland 2020
erikaheidi
55
13k
Typedesign – Prime Four
hannesfritz
42
2.8k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
Being A Developer After 40
akosma
90
590k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.4k
4 Signs Your Business is Dying
shpigford
184
22k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
283
13k
How to train your dragon (web standard)
notwaldorf
96
6.2k
Transcript
Microsoft MVP for Data Platform 永田 亮磨 (ZEAL CORPORATION) X:
@ryomaru0825 Linkedin: ryoma-nagata-0825 Qiita: ryoma-nagata Microsoft Fabric の ネットワーク保護のアップデートについて
自己紹介 永田 亮磨(Ryoma Nagata) • Microsoft MVP for Data Platform
• Databricks Solutions Architect Champion • 株式会社ジール • Microsoft Data Analytics Solution の導入など • 主な活動場所 • Qiita : @ryoma-nagata • X(Twitter) : @ryomaru0825 • connpass : • JSSUG (Japan SQL Server User Group) • JEDAI - The Data & AI Meetup 推しサービス(≒守備範囲) Databricks / Power BI / Machine Learning PurviewDG / Microsoft Fabric
お品書き Fabric における ネットワークセキュリティの最新状況 テナントレベル / ワークスペースレベル
プライベート IP の引き込みとパブリックアクセスのブロックが異なる防御であること ワークスペースレベルのPrivate link の活用デモ SQL Endpoint のプライベート接続 注意 ポータル操作は許可されない レイクハウスは後から作成する ワークスペースのプライベート リンクでサポートされるシナリオ - Microsoft Fabric | Microsoft Learn Fabric command line interface - Microsoft Fabric REST APIs | Microsoft Learn
ワークスペースレベルでのネットワーク保護がプレビュー開始 プライベートネットワークに経路を限定し、セキュリティを強化 テナント全体ではなく、環境(ワークスペース)ごとでの柔軟な設定 Fabric ワークスペース レベルの Private Link
(プレビュー) |Microsoft Fabric ブログ |マイクロソフト ファブリック
3種のレイヤーによる Fabric 受信防御 Microsoft Fabric の受信防御は現在3つのレイヤーで構成可能(併用可能) Entra ID による条件付きアクセス
Fabric サービスに Entra ID でログインすることが出来る条件を指定( M365 を使用するときにもよく利用される) Fabric テナント全体でのネットワーク保護 プライベートリンク:プライベート IP による通信で Fabric にアクセス パブリックアクセスブロック:パブリック IP による通信を遮断する Fabric ワークスペースでのネットワーク保護 プライベートリンク:プライベート IP による通信で Fabric ワークスペースにアクセス パブリックアクセスブロック:パブリック IP による通信を遮断する Microsoft Entra ID 条件付きアクセス デバイス制限 クライアント IP 制限 Fabric ワークスペース Fabric テナント ネットワーク保護 テナントレベルのプライベートリ ンク パブリックアクセスブロック ネットワーク保護 ワークスペースレベルのプライ ベートリンク パブリックアクセスブロック サービスへの認証 サービス全体 サービス内のリソース
Fabric の受信防御の目的と、ドキュメントに記載された主な制限 プライベートリンク: 対象リソースに対してプライベート IP 経由の接続を提供 対象 サポート外となる主な機能 プライベートリンク
パブリック受信アクセスブロック テナントレベル → 一括で全体統制 × Copilot × Power BI の PDF エクスポート × 使用状況メトリック、Fabric 容量メトリック アプリ × !オンプレミスデータゲートウェイ(インストール時にプラ イベートリンクを一時的に無効にする回避が必要) × Cosmos DB, Open Mirroring 以外のミラーリング × Warehouse ビジュアルクエリ × データフローGen1をソースにしたモデル ワークスペースレベル → プロジェクト個々で影響 小さく設定 × 仮想ネットワークデータゲートウェイまたはオンプレミス データゲートウェイを使用したデータパイプラインとコピー ジョブ(Power BI の接続は可能) × イベントストリームの利用 × スキーマ有効なレイクハウス × デプロイパイプライン × Fabric Portal 画面(!現時点は GUI 開発不可) × 既定のセマンティックモデル 共通 × スタータープール(数分の起動時間が必要になる) × OneLake カタログの統制タブ × 試用版容量 × ウェアハウスへのコピー - (ワークスペースレベルでの制限が大きく未知数) パブリック受信アクセスブロック: Microsoft Fabric 内を含む Public ネットワーク経由での アクセスを完全にブロック(プライベートリンクは必須) プライベートIP パブリックIP Microsoft Fabric 仮想ネットワーク VPN Public NW プライベートIP パブリックIP Microsoft Fabric 仮想ネットワーク VPN Public NW
ワークスペースでのパブリック受信アクセスブロック下の挙動 Fabric ポータルがサポートされず、APIや外部ツールでのみ操作可能 workspace API アクセスもブロックされてしまう点についてはプレビュー特有の不具合の可能性あり ワークスペースのプライベート リンクでサポートされるシナリオ
- Microsoft Fabric | Microsoft Learn
テナント×ワークスペースのプライベートリンク設定の組み合わせの例 ネットワークとアクセスできるワークスペースの組み合わせ A -> WS 1 ・・・テナントへのプライベートリンクにアクセスできない場合、WSプライベートリンクのみアクセス可 B
-> WS 1, 2, 3・・・同上 C -> WS 3,4・・・ワークスペースレベルでパブリックアクセスブロックが無効なワークスペースにはテナントプライベートリン からアクセス可能 外部ネットワーク -> × テナントレベルのパブリックアクセスブロック有効のため テナントとワークスペースのプライベート リンクを使用する - Microsoft Fabric | Microsoft Learn
Fabric 送信保護 マネージド仮想ネットワークとパブリック送信アクセスブロックを使用して外部へのアクセスを制御 データにアクセスするだけでなく、送信することへの対策 Microsoft Fabric Storage ワークスペース -
マネージド仮想ネットワーク:無効 - アウトバウンドブロック:無効 共用の仮想ネットワーク Microsoft の管理するネットワーク Public IP にアクセス Synapse Analytics Azure SQL DB Fabric Engine マネージド仮想ネットワーク マネージド プライベートエンドポイント Private IP にアクセス Fabric Engine マネージド仮想ネットワーク マネージド プライベートエンドポイント Fabric Engine ワークスペース - マネージド仮想ネットワーク:有効 - アウトバウンドブロック:無効 ワークスペース - マネージド仮想ネットワーク:有効 - アウトバウンドブロック:有効 プライベートリンク パブリックIP マネージド仮想ネットワーク 外へのアクセス不可 OneLake (別のワークスペース)
パブリック送信アクセスブロックのシナリオ(現時点) ショートカット プライベートエンドポイント経由×OneLake限定 (私の環境では不可) ノートブック
プライベートエンドポイント経由でAzure PaaS また はOneLakeデータアクセス パブリックライブラリからの取得不可 レイクハウス SQL 分析エンドポイントは利用不可 利用不可の機能 CICD : Git 、配置パイプライン 実際には作成不可 ワークスペースの送信アクセス保護の概要 - Microsoft Fabric | Microsoft Learn ワークスペースの送信アクセス保護 - シナリオ - Microsoft Fabric |Microsoft Learn
設定の流れ
テナントレベルの保護設定の概要フロー - プライベートリンク 1. テナント設定を変更 3. 2を参照するプライベートエ ンドポイントを作成 2. プライベートリンクサービ
スを作成 管理ポータルにアクセスし、トグルをオン (Fabric 管理者ロールが必要) テナント ID を使用してカスタムテンプレート をデプロイ 「Microsoft.PowerBI/privateLink ServicesForPowerBI」を選択して、 プライベートエンドポイントを作成 テナント レベルのプライベート リンクを設定して使用する - Microsoft Fabric | Microsoft Learn
テナントレベルの保護設定の概要フロー - パブリックアクセスブロック 1. プライベートリンク経由で Fabricにアクセス 2. テナント設定を変更 パブリック IP
経由でアクセスしている場 合、設定できない 管理ポータルにアクセスし、トグルをオン (Fabric 管理者ロールが必要) テナント レベルのプライベート リンクを設定して使用する - Microsoft Fabric | Microsoft Learn
ワークスペースレベルの保護設定の概要フロー - プライベートリンク 1. テナント設定を変更 3. 2を参照するプライベートエ ンドポイントを作成 2. プライベートリンクサービ
スを作成 管理ポータルにアクセスし、トグルをオン (Fabric 管理者ロールが必要) テナント ID とワークスペース ID を使用して カスタムテンプレートをデプロイ 「Microsoft.Fabric/privateLinkSer vicesForFabric」を選択して、プライ ベートエンドポイントを作成 ワークスペース レベルのプライベート リンクを設定して使用する - Microsoft Fabric | Microsoft Learn
ワークススペースレベルの保護設定の概要フロー - パブリック受信/送信アクセスブロック 1. テナント設定を変更 python ノートブックで変更可能 設定をするワークスペースとは別のワークス ペースで実行することを推奨 ※予期せぬ切断を回避
ワークスペースの送信アクセス保護を設定する - Microsoft Fabric | Microsoft Learn ワークスペース レベルのプライベート リンクを設定して使用する - Microsoft Fabric | Microsoft Learn 2. REST API でワークスペース 設定を変更(将来的にはUI) 管理ポータルにアクセスし、トグルをオン (Fabric 管理者ロールが必要)
Fabric python notebook による変更サンプル from sempy import fabric import json
workspaceID = fabric.resolve_workspace_id(workspace=“<ワークスペース名>") url = f"https://api.fabric.microsoft.com/v1/workspaces/{workspaceID}/networking/communicationPolicy" client = fabric.FabricRestClient() responce = client.get(url) data = json.loads(responce.content) print("変更前") print(data) # 以下どちらかまたは併用で指定 # # パブリック受信ブロック # payload = { # "inbound": { # "publicAccessRules": { # "defaultAction": "Deny" # } # } # } # # パブリック送信ブロック payload = { "outbound": { "publicAccessRules": { "defaultAction": "Deny" } } } response = client.put(url,json=payload) print("変更後") responce = client.get(url) data = json.loads(responce.content) print(data)
複雑な仕様を踏まえて考えたこと 最も影響が少なく、現状メリットのあるユースケースは 「パブリックアクセスは有効にしながら、ワークスペースプライベートリンクのみを使用 すること」 テナントレベルのプライベートリンクとパブリックアクセスブロック→既存ワークロードやオンプレミスデータゲートウェイ に影響 ワークスペースプライベートアクセスブロック→ポータルUIを使いたいので今は非現実的 →
プライベート接続が必要なシーンでのみプライベートリンクを経由する構成 →セキュリティ対策としてではなく、可用性を向上させるための施策としてプライ ベートリンクを使用する
プライベート接続が必要なシーンの具体例 Fabric SQL Endpoint は インターネットへの 1433 接続が必要だが外部への データベース通信が許可されない環境が多々ある
セキュリティが厳しい組織では SQL Server ポートで知られる1433 はパブリック IP 宛には許可されていないこと が多い この対策として Azure SQL でプライベートリンクを導入したり、 プライベートリンクの運用が難しい場合には Azure の SQL ゲートウェイの IP に対して通信許可を開けていたりとむずがゆい構成をとる場合もあった ただし、 Fabric は Azure のように SQL ゲートウェイの 固定IP が公開されていない&プライベートリンクは影響 が大きすぎるという課題があった
構成例とデモ 1. データワークスペースへの疎通NG確認 1. 名前解決の様子も確認 2. プロキシワークスペースにアクセスしてショートカット 3. プロキシワークスペース経由でデータにアクセス
補足)Private DNSゾーンに登録されるレコードについて プライベートリンクを作成する際、 DNS 統合を選択しているとAレコードが追加 される。 SQL エンドポイントの場合、SQLエンドポイント接続文字列に.z{xy}を追加した値がエイリアスになる
*xy=ワークスペースIDの先頭2文字 # エンドポイント用途 FQDN 1 ワークスペースAPI https://{workspaceid}.z{xy}.w.api.fabric.microsoft.com 2 OneLake API https://{workspaceid}.z{xy}.onelake.fabric.microsoft.com 3 ADLS互換API https://{workspaceid}.z{xy}.dfs.fabric.microsoft.com 4 blob API https://{workspaceid}.z{xy}.blob.fabric.microsoft.com 5 SQL Endpoint接続 https://{workspaceid}.z{xy}.c.fabric.microsoft.com エイリアス: https://{SQLエンドポイント接続文字列}.z{xy}.datawarehouse.fabric.microsoft.com)
1433ブロック時のエラー
Thank you !