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
140
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 Fabric 攻略ガイド 2.0 (ドラフト)
ryomaru0825
2
340
Microsoft Analytics Day 2025.7 最新情報ピックアップ・デモ
ryomaru0825
0
52
Microsoft Fabric ガバナンス設計の一歩目を考える
ryomaru0825
2
600
Fabric + Databricks 2025.6 の最新情報ピックアップ
ryomaru0825
1
240
Microsoft Fabric のライセンスについて
ryomaru0825
2
4.6k
Microsoft Fabric OneLake を通じた Delta Lake & Iceberg の相互運用性
ryomaru0825
1
450
Microsoft Fabric OneLake の実体について
ryomaru0825
0
1.1k
European Fabric Community Conference 2024 での個人的ピックアップ
ryomaru0825
1
250
Microsoft Purview Data Governance について
ryomaru0825
2
2.2k
Other Decks in Technology
See All in Technology
Webアプリケーションにオブザーバビリティを実装するRust入門ガイド
nwiizo
7
900
なぜテストマネージャの視点が 必要なのか? 〜 一歩先へ進むために 〜
moritamasami
0
240
LLMを搭載したプロダクトの品質保証の模索と学び
qa
1
1.1k
「その開発、認知負荷高すぎませんか?」Platform Engineeringで始める開発者体験カイゼン術
sansantech
PRO
2
1k
新アイテムをどう使っていくか?みんなであーだこーだ言ってみよう / 20250911-rpi-jam-tokyo
akkiesoft
0
360
[ JAWS-UG 東京 CommunityBuilders Night #2 ]SlackとAmazon Q Developerで 運用効率化を模索する
sh_fk2
3
470
人工衛星のファームウェアをRustで書く理由
koba789
15
8.3k
Snowflake Intelligence × Document AIで“使いにくいデータ”を“使えるデータ”に
kevinrobot34
1
140
AIエージェントで90秒の広告動画を制作!台本・音声・映像・編集をつなぐAWS最新アーキテクチャの実践
nasuvitz
3
390
20250910_障害注入から効率的復旧へ_カオスエンジニアリング_生成AIで考えるAWS障害対応.pdf
sh_fk2
3
280
Evolución del razonamiento matemático de GPT-4.1 a GPT-5 - Data Aventura Summit 2025 & VSCode DevDays
lauchacarro
0
210
Snowflake Intelligenceにはこうやって立ち向かう!クラシルが考えるAI Readyなデータ基盤と活用のためのDataOps
gappy50
0
290
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.4k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
820
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
850
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
3k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.6k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
Into the Great Unknown - MozCon
thekraken
40
2k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
53k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
GraphQLの誤解/rethinking-graphql
sonatard
72
11k
Faster Mobile Websites
deanohume
309
31k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
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 における ネットワークセキュリティの最新状況
ワークスペースレベルでのネットワーク保護がプレビュー開始 プライベートネットワークに経路を限定し、セキュリティを強化 テナント全体ではなく、環境(ワークスペース)ごとでの柔軟な設定 Fabric ワークスペース レベルの Private Link
(プレビュー) |Microsoft Fabric ブログ |マイクロソフト ファブリック
3種のレイヤーによる Fabric 受信防御 Microsoft Fabric の受信防御は現在3つのレイヤーで構成可能(併用可能) Entra ID による条件付きアクセス
Fabric サービスに Entra ID でログインすることが出来る条件を指定 M365 を使用するときにもよく利用され、Fabric のネットワーク保護は第一にこれを使用することが推奨 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を使いたいので今は非現実的
パブリックアクセスは有効でもEntra ID の条件付きアクセスで防御するのがはじめに検討するべきステップ M365 は広く使われているが、 パブリックアクセスブロックではなく、条件付きアクセスを基本に、Azure Peering Service(Microsoft Peering) で通信経路をプライベート化するのが定石 → プライベート接続が必要なシーンでのみプライベートリンクを経由する構成 →セキュリティ対策としてではなく、可用性を向上させるための施策としてプライ ベートリンクを使用する
プライベート接続が必要なシーンの具体例 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 !