Microsoft Fabric のエンド ツー エンドのセキュリティ シナリオ

セキュリティは、特に機密データや機密データが含まれる場合に、あらゆるデータ分析ソリューションの重要な側面です。 このため、Microsoft Fabric には、保存中および転送中のデータを保護したり、ユーザーとアプリケーションのアクセスとアクセス許可を制御したりできる包括的なセキュリティ機能のセットが用意されています。

この記事では、Fabric を使用して独自の分析ソリューションを自信を持って構築するのに役立つ、Fabric のセキュリティの概念と機能について説明します。

背景

この記事では、あなたが米国の医療機関で働くデータ エンジニアであるシナリオについて説明します。 組織は、電子健康記録、ラボの結果、保険金請求、ウェアラブル デバイスなど、さまざまなシステムから提供される患者データを収集して分析します。

あなたは、ファブリックのメダリオンアーキテクチャを使用してレイクハウスを建設することを計画しています。これは、ブロンズ、シルバー、ゴールドの3つのレイヤーで構成されています。

  • ブロンズ レイヤーは、データ ソースから到着した生データを保存します。
  • シルバー レイヤーは、データ品質チェックと変換を適用して、分析用のデータを準備します。
  • ゴールド レイヤーは、レポートと視覚化のために集計およびエンリッチメントされたデータを提供します。

オンプレミス ネットワーク上にあるデータ ソースもあれば、ファイアウォールの内側にあり、セキュリティで保護された認証済みアクセスが必要なデータ ソースもあります。 Azure SQL Database や Azure Storage など、Azure で管理されるデータ ソースもあります。 パブリック インターネットにデータを公開しない方法で、これらの Azure データ ソースに接続する必要があります。

クラウド内のデータを安全に取り込み、保存、処理、分析できるため、Fabric を使用することにしました。 重要なのは、組織の業界およびポリシーの規制に準拠している間に行われます。

Fabric はサービスとしてのソフトウェア (SaaS) であるため、ストレージやコンピューティング リソースなどの個々のリソースをプロビジョニングする必要はありません。 必要なのは ファブリック容量です。

データ アクセス要件を設定する必要があります。 具体的には、レイクハウスのブロンズレイヤーとシルバーレイヤーのデータに自分と仲間のデータ エンジニアだけがアクセスできるようにする必要があります。 これらのレイヤーでは、データのクリーン、検証、変換、エンリッチメントを実行する予定です。 また、ゴールド レイヤー内のデータへのアクセスを制限する必要もあります。 ゴールド レイヤーへのアクセス権を持つのは、データ アナリストやビジネス ユーザーを含む承認されたユーザーのみです。 レポート、機械学習、予測分析など、さまざまな分析目的でデータを使用するには、このアクセス権が必要です。 データ アクセスは、ユーザーの役割と部門によってさらに制限される必要があります。

ファブリックに接続する (受信保護)

まず、受信保護を設定します。これは、自分や他のユーザーがサインインして Fabric にアクセスする方法に関係します。

Fabric は Microsoft Entra テナントにデプロイされるため、認証と承認は Microsoft Entra によって処理されます。 Microsoft Entra 組織アカウント (職場または学校アカウント) でサインインします。 次に、他のユーザーが Fabric に接続する方法を検討します。

Microsoft Entra テナントは、IT 部門の管理下にある ID セキュリティ境界です。 このセキュリティ境界内では、Microsoft Entra オブジェクト (ユーザー アカウントなど) の管理とテナント全体の設定の構成は、IT 管理者によって行われます。 他の SaaS サービスと同様に、Fabric はテナントを論理的に分離します。 テナント内のデータとリソースは、明示的に承認しない限り、他のテナントからアクセスすることはできません。

ユーザーが Fabric にサインインすると、次のようになります。

図は、Fabric セキュリティ アーキテクチャの概要を示しています。図の項目を次の表に示します。

品目 説明
項目 1。 ユーザーがブラウザー (またはクライアント アプリケーション) を開き、Fabric ポータルにサインインします。
項目 2。 ユーザーはすぐに Microsoft Entra ID にリダイレクトされ、認証が必要です。 認証では、正しいユーザーがサインインしていることを確認します。
項目 3。 認証が成功すると、Web フロントエンドはユーザーの要求を受け取り、最も近い場所からフロントエンド (HTML および CSS) コンテンツを配信します。 また、要求はメタデータ プラットフォームとバックエンド容量プラットフォームにルーティングされます。
項目 4。 テナント のホーム リージョンに存在するメタデータ プラットフォームには、ワークスペースやアクセス制御などのテナントのメタデータが保存されます。 このプラットフォームにより、ユーザーは関連するワークスペースと Fabric 項目にアクセスする権限が付与されます。
項目 5。 バックエンド容量プラットフォームは、コンピューティング操作を実行し、データを保存します。 容量リージョンにあります。 ワークスペースが Fabric 容量に割り当てられると、データレイク OneLake を含め、ワークスペースに存在するすべてのデータが容量リージョンに保存され、処理されます。

メタデータ プラットフォームとバックエンド容量プラットフォームはそれぞれ、セキュリティで保護された仮想ネットワークで実行されます。 これらのネットワークは、顧客やその他のサービスからの要求を受信できるように、一連のセキュリティで保護されたエンドポイントをインターネットに公開します。 これらのエンドポイントとは別に、サービスは、パブリック インターネットからのアクセスをブロックするネットワーク セキュリティ規則によって保護されます。

ユーザーが Fabric にサインインすると、他の保護レイヤーを適用できます。 そうすることで、テナントには特定のユーザー のみがアクセスでき、そして ネットワークの場所やデバイスのコンプライアンスなどの他の条件が満たされている場合に限られます。 この保護レイヤーは、受信保護と呼ばれます。

このシナリオでは、Fabric の機密性の高い患者情報を担当します。 そのため、組織は、Fabric にアクセスするすべてのユーザーが多要素認証 (MFA) を実行する必要があり、企業ネットワーク上に存在する必要があることを義務付けています。ユーザー ID をセキュリティで保護するだけでは不十分です。

また、組織は、ユーザーがどこからでも作業し、個人のデバイスを使用できるようにすることで、ユーザーに柔軟性を提供します。 Microsoft Intune ではBring Your Own-Device (BYOD) がサポートされているため、承認されたユーザー デバイスを Intune に登録します。

さらに、これらのデバイスが組織のポリシーに準拠していることを確認する必要があります。 具体的には、これらのポリシーでは、最新のオペレーティング システムと最新のセキュリティ パッチがインストールされている場合にのみ、デバイスが接続できる必要があります。 これらのセキュリティ要件は、Microsoft Entra 条件付きアクセスを使用して設定します。

条件付きアクセスには、テナントをセキュリティで保護するいくつかの方法が用意されています。 次のことを実行できます。

Fabric テナント全体をロックダウンする必要がある場合は、仮想ネットワークを使用してパブリック インターネット アクセスをブロックできます。 ファブリックへのアクセスは、そのセキュリティで保護された仮想ネットワーク内からのみ許可されます。 この要件は、Fabric のテナント レベルでプライベート リンクを有効にすることによって設定されます。 これにより、すべての Fabric エンドポイントが、すべての Power BI レポートへのアクセスを含め、仮想ネットワーク内のプライベート IP アドレスに解決されます。 (プライベート エンドポイントを有効にすると、多くの Fabric 項目に影響するため、有効にする前に、この記事をよくお読みください)。

Fabric外部のデータへのセキュリティで保護されたアクセス (送信保護)

次に、ファイアウォールまたはプライベート エンドポイントの背後にあるデータに安全にアクセスすることに関係する送信保護を設定します。

組織には、オンプレミス ネットワーク上にあるデータ ソースがいくつかあります。 これらのデータ ソースはファイアウォールの内側にあるため、Fabric には安全なアクセスが必要です。 Fabric がオンプレミスのデータ ソースに安全に接続できるようにするには、オンプレミス データ ゲートウェイをインストールします。

Data Factory のデータフローデータ パイプラインでゲートウェイを使用して、オンプレミスデータの取り込み、準備、変換を行い、コピー アクティビティを使用して OneLake に読み込むことができます。 Data Factory では、100 を超える異なるデータ ストアに接続できる包括的なコネクタセットがサポートされています。

その後、Power Query を使用してデータフローを構築します。これにより、コードの少ないインターフェイスで直感的なエクスペリエンスが提供されます。 これを使用してデータ ソースからデータを取り込み、300 以上のデータ変換のいずれかを使用して変換します。 その後、データ パイプラインを使用して、複雑な抽出、変換、読み込み (ETL) プロセスを構築して調整します。 ETL プロセスでは、データフローを更新し、大規模にさまざまなタスクを実行し、ペタバイト単位のデータを処理できます。

このシナリオでは、複数の ETL プロセスが既に存在します。 まず、Azure Data Factory (ADF) にいくつかのパイプラインがあります。 現時点では、これらのパイプラインはオンプレミスのデータを取り込み、セルフホステッド統合ランタイムを使用して Azure Storage のデータ レイクに読み込みます。 2 つ目は、Spark で記述された Azure Databricks のデータ インジェスト フレームワークです。

Fabric を使用するようになったので、ADF パイプラインの出力先をリダイレクトして レイクハウス コネクタを使用します。 また、Azure Databricks の取り込みフレームワークでは、Azure Blog Filesystem (ABFS) ドライバーをサポートする OneLake API を使用して、OneLake を Azure Databricks と統合します。 (同じ方法を使用して統合することもできますApache Spark を使用した Azure Synapse Analytics での OneLake)。

また、Azure SQL Database にあるデータ ソースもあります。 プライベート エンドポイントを使用して、これらのデータ ソースに接続する必要があります。 この場合、仮想ネットワーク (VNet) データ ゲートウェイを設定し、データフローを使用して Azure データに安全に接続し、Fabric に読み込みます。 VNet データ ゲートウェイでは、インフラストラクチャをプロビジョニングおよび管理する必要はありません (オンプレミス データ ゲートウェイに対して行う必要がある)。 これは、Fabric が Azure Virtual Network にコンテナーを安全かつ動的に作成するためです。

Spark でデータ インジェスト フレームワークを開発または移行する場合は、マネージド プライベート エンドポイントを使用して、Fabric ノートブックとジョブから Azure のデータ ソースに安全かつプライベートに接続できます。 マネージド プライベート エンドポイントを Fabric ワークスペースに作成して、パブリック インターネット アクセスがブロックされている Azure のデータ ソースに接続できます。 Azure SQL Database や Azure Storage などのプライベート エンドポイントをサポートします。 マネージド プライベート エンドポイントは、Fabric ワークスペース専用の マネージド VNet でプロビジョニングおよび管理されます。 一般的な Azure 仮想ネットワーク とは異なり、マネージド VNet とマネージド プライベート エンドポイントは Azure ポータルには見つかりません。 これは、Fabric によって完全に管理されており、ワークスペースの設定で見つかるためです。

Azure Data Lake Storage (ADLS) Gen2 アカウントには既に多くのデータが保存されているため、Spark や Power BI などの Fabric ワークロードを接続するだけで済みます。 また、OneLake ADLS ショートカットにより、データ統合パイプライン、データ エンジニアリング ノートブック、Power BI レポートなど、あらゆる Fabric エクスペリエンスから既存のデータに簡単に接続できます。

ワークスペース ID を持つファブリック ワークスペースは、パブリック ネットワークを無効にした場合でも、ADLS Gen2 ストレージ アカウントに安全にアクセスできます。 これは、信頼されたワークスペース アクセスによって可能になります。 これにより、Fabric は Microsoft バックボーン ネットワークを使用してストレージ アカウントに安全に接続できます。 つまり、通信ではパブリック インターネットが使用されないため、ストレージ アカウントへのパブリック ネットワーク アクセスを無効にすることはできますが、特定の Fabric ワークスペースに接続することはできます。

コンプライアンス

Fabric を使用して、業界の規制や組織のポリシーへのコンプライアンスを維持しながら、クラウドでデータを安全に取り込み、保存、処理、分析したいと考えています。

Fabric は Microsoft Azure コア サービスの一部であり、Microsoft オンライン サービス規約Microsoft エンタープライズ プライバシー ステートメントによって管理されます。 通常、認定は製品の発売 (一般提供、または GA) 後に行われますが、Microsoft は最初から開発ライフサイクル全体を通じてコンプライアンスのベスト プラクティスを統合しています。 このプロアクティブなアプローチにより、確立された監査サイクルに従いながらも、将来の認定のための強力な基盤が確保されます。 簡単に言うと、正式な認証が後になっても、最初からコンプライアンスを構築することを優先します。

Fabric は、ISO 27001、27017、27018、27701 などの多くの業界標準に準拠しています。 Fabric は HIPAA に準拠しており、医療データのプライバシーとセキュリティに不可欠です。 Microsoft Azure コンプライアンス オファリングの付録 A と B をチェックすると、認定の対象となるクラウド サービスに関する詳細な分析情報を得ることができます。 監査ドキュメントには、Service Trust ポータル(STP) からアクセスすることもできます。

コンプライアンスは共同責任です 法令を遵守するために、クラウド サービス プロバイダーとその顧客は、それぞれの役割を確実に果たすために共同責任を負います。 パブリック クラウド サービスを検討して評価するときは、共有責任モデルと、クラウド プロバイダーが処理するセキュリティ タスクと、処理するタスクを理解することが重要です。

データの処理

機密性の高い患者情報を処理するため、すべてのデータが保存時と転送中の両方で十分に保護されていることを確認する必要があります。

保存時の暗号化は、保存されているデータ (保存されているデータ) を保護します。 保存データに対する攻撃には、データが保存されているハードウェアに物理的にアクセスし、そのハードウェア上のデータを侵害する試みが含まれます。 保存時の暗号化 は、データをディスク上で確実に暗号化することで、暗号化されていないデータに攻撃者がアクセスできないよう設計されています。 保存時の暗号化は、国際標準化機構 (ISO) や医療保険の携行性と説明責任に関する法律 (HIPAA) など、一部の業界標準と規制に準拠するために必要な必須の手段です。

すべての Fabric データ ストアは、 Microsoft が管理するキーを使用して保存時に暗号化されます。このキーを使用すると、顧客データとシステム データとメタデータも保護されます。 暗号化されていない状態の間、データは永続的ストレージに保持されません。 Microsoft マネージド キーを使用すると、カスタム キー管理ソリューションのリスクやコストをかけずに保存データを暗号化できます。

データは転送中も暗号化されます。 クライアント システムからファブリック エンドポイントへの受信トラフィックはすべて、トランスポートレイヤーセキュリティ (TLS)1.2 以上を適用します。 また、可能な場合は常に TLS 1.3 をネゴシエートします。 TLS には、強力な認証、メッセージの機密性、整合性 (メッセージの改ざん、傍受、偽造の検出が有効)、相互運用性、アルゴリズムの柔軟性、デプロイと使用のしやすさといったメリットがあります。

暗号化に加えて、Microsoft サービス間のネットワーク トラフィックは常に、世界最大のバックボーン ネットワークの 1 つである Microsoft グローバル ネットワーク経由でルーティングされます。

データの保存場所

患者データを扱う際に、コンプライアンス上の理由から、組織はデータが米国地理的境界から離れてはならないことを義務付けています。 組織のメインの運用は、ニューヨークとシアトルの本社で行われます。 Power BI の設定中に、組織はテナント のホーム リージョンとして米国東部リージョンを選択しました。 運用のために、データ ソースに近い米国西部リージョンに Fabric 容量を作成しました。 OneLake は世界中で利用できるため、Fabric の使用中に組織のデータ所在地ポリシーを満たすことができるかどうかが懸念されます。

Fabric では、テナント のホーム リージョン以外の地域 (geo) にある容量である複数地域の容量を作成できることを学習します。 これらの容量に Fabric ワークスペースを割り当てます。 この場合、ワークスペース内のすべてのアイテムのコンピューティングとストレージ (OneLake およびエクスペリエンス固有のストレージを含む) は複数地域リージョンに存在しますが、テナントのメタデータはホーム リージョンに残ります。 データはこれら 2 つの地域にのみ保存および処理されるため、組織のデータ所在地の要件が満たされます。

アクセス制御

あなたは、あなたとあなたの仲間のデータエンジニアだけが、レイクハウスのブロンズレイヤーとシルバーレイヤーのデータにフルアクセスできることを確認する必要があります。 これらのレイヤーを使用すると、データのクリーン、検証、変換、エンリッチメントを実行できます。 ゴールド レイヤー内のデータへのアクセスを、レポートや分析などのさまざまな分析目的で使用できる、データ アナリストやビジネス ユーザーなどの承認されたユーザーのみに制限する必要があります。

Fabric には、ワークスペース内の項目とデータへのアクセスを制御できる柔軟な アクセス許可モデル が用意されています。 ワークスペースは、ファブリック内の項目をグループ化するためのセキュリティ保護可能な論理エンティティです。 ワークスペース ロールを使用して、ワークスペース内のアイテムへのアクセスを制御します。 ワークスペースの 4 つの基本的な役割は次のとおりです。

  • 管理者: アクセス許可の管理を含め、ワークスペース内のすべてのコンテンツを表示、変更、共有、管理できます。
  • メンバー: ワークスペース内のすべてのコンテンツを表示、変更、共有できます。
  • 投稿者: ワークスペース内のすべてのコンテンツを表示および変更できます。
  • ビューアー: ワークスペース内のすべてのコンテンツを表示できますが、変更することはできません。

このシナリオでは、メダリオン レイヤー (ブロンズ、シルバー、ゴールド) ごとに 1 つずつ、3 つのワークスペースを作成します。 ワークスペースを作成したため、管理者ロールに自動的に割り当てられます。

次に、これら 3 つのワークスペースの投稿者ロールにセキュリティ グループを追加します。 セキュリティ グループには仲間のエンジニアがメンバーとして含まれているため、これらのワークスペースで Fabric アイテムを作成および変更できますが、他のユーザーとアイテムを共有することはできません。 また、他のユーザーにアクセスを許可することもできません。

ブロンズワークスペースとシルバーワークスペースでは、あなたと同僚のエンジニアが Fabric アイテムを作成して、データを取り込み、データを保存し、データを処理します。 ファブリック項目は、レイクハウス、パイプライン、ノートブックで構成されます。 ゴールド ワークスペースでは、2 つの レイクハウス、複数のパイプラインとノートブック、およびいずれかのレイクハウスに保存されているデータの高速なクエリ パフォーマンスを提供する Direct Lake セマンティック モデルを作成します。

その後、データ アナリストとビジネス ユーザーがアクセスを許可されているデータにアクセスする方法について慎重に検討します。 具体的には、自分の役割と部署に関連するデータにのみアクセスできます。

最初の レイクハウス には実際のデータが含まれており、SQL 分析エンドポイントにデータアクセス許可は適用されません。 2 つ目の レイクハウス には、最初の レイクハウス へのショートカットが含まれており、SQL 分析エンドポイントに詳細なデータアクセス許可が適用されます。 セマンティック モデルは、最初のレイクハウスに接続します。 ユーザーに適切なデータアクセス許可を適用する (ユーザーは自分の役割と部門に関連するデータにのみアクセスできるように)、最初の レイクハウス をユーザーと共有しません。 代わりに、Direct Lake セマンティック モデルと、SQL 分析エンドポイントでデータアクセス許可を適用する 2 つ目の レイクハウス のみを共有します。

固定 ID を使用するようにセマンティック モデルを設定し、セマンティック モデルに行レベル セキュリティ (RLS) を実装して、ユーザーがアクセスできるデータを制御するモデル ルールを適用します。 その後、セマンティック モデルのみをデータ アナリストやビジネス ユーザーと 共有します 。これは、パイプラインやノートブックなど、ワークスペース内の他の項目にアクセスしてはいけないためです。 最後に、ユーザーが Power BI レポートを作成できるように、セマンティック モデルに対する Build 権限を付与します。 そうすることで、セマンティック モデルは共有セマンティック モデルになり、Power BI レポートのソースになります。

データ アナリストは、ゴールド ワークスペース内の 2 番目のレイクハウスにアクセスする必要があります。 その レイクハウス の SQL 分析エンドポイントに接続して、SQL クエリを記述し、分析を実行します。 そのため、その レイクハウス を共有し、SQL セキュリティ モデル を使用して、レイクハウス SQL 分析エンドポイントで必要なオブジェクト (マスク規則を持つテーブル、行、列など) にのみアクセスできるようにします。 データ アナリストは、自分の役割と部署に関連するデータにのみアクセスできるようになりました。また、パイプラインやノートブックなど、ワークスペース内の他の項目にはアクセスできません。

一般的なセキュリティ シナリオ

次の表に、一般的なセキュリティ シナリオと、それらを実現するために使用できるツールを示します。

シナリオ ツール 方向
私は ETL 開発者 であり、複数のソース システムとテーブルから大量のデータを Fabric に大規模に読み込みたいと考えています。 ソース データはオンプレミス (または他のクラウド) であり、ファイアウォールやプライベート エンドポイントを持つ Azure データ ソースの背後にあります。 データ パイプライン (コピー アクティビティ) でオンプレミス データ ゲートウェイを使用します。 送信
私はパワーユーザーであり、アクセス権を持つソース システムから Fabric にデータを読み込みたいと考えています。 私は開発者ではないため、ローコードインターフェイスを使用してデータを変換する必要があります。 ソース データはオンプレミス (または他のクラウド) であり、ファイアウォールの内側にあります。 Dataflow Gen 2オンプレミス データ ゲートウェイを使用します。 送信
私はパワーユーザーであり、アクセス権を持つソース システムから Fabric にデータを読み込みたいと考えています。 ソース データはプライベート エンドポイントの背後にある Azure にあり、オンプレミスのデータ ゲートウェイ インフラストラクチャをインストールメイン必要はありません。 データフロー Gen 2VNet データ ゲートウェイを使用します。 送信
Spark ノートブックを使用してデータ インジェスト コードを記述できる 開発者 です。 アクセス権を持つソース システムから Fabric のデータを読み込みたい。 ソース データはプライベート エンドポイントの背後にある Azure にあり、オンプレミスのデータ ゲートウェイ インフラストラクチャをインストールメイン必要はありません。 Azure プライベート エンドポイントFabric ノートブックを使用します。 送信
Azure Data Factory (ADF) と Synapse パイプラインには、データ ソースに接続して Azure にデータを読み込む既存のパイプラインが多数あります。 次に、これらのパイプラインを変更して、Fabric にデータを読み込みたいと考えています。 既存のパイプラインで レイクハウス コネクタ を使用します。 送信
Spark で開発されたデータ インジェスト フレームワークがあり、データ ソースに安全に接続して Azure に読み込みます。 Azure Databricks または Synapse Spark で実行しています。 Azure Databricks や Synapse Spark を引き続き使用して、Fabric にデータを読み込みたいと考えています。 OneLake と Azure Data Lake Storage (ADLS) Gen2 API (Azure Blob Filesystem ドライバー) を使用する 送信
Fabric エンドポイントがパブリック インターネットから保護されていることを確認する必要があります。 SaaS サービスとして、ファブリック バックエンドは既にパブリック インターネットから保護されています。 保護を強化するには、Fabric の Microsoft Entra 条件付きアクセス ポリシー を使用するか、Fabric のテナント レベルでプライベート リンクを有効にして、パブリック インターネット アクセスをブロックします。 受信
Fabric に企業ネットワーク内からのみ、または準拠しているデバイスからのみアクセスできるようにしたいと考えています。 Fabric には Microsoft Entra 条件付きアクセス ポリシー を使用します。 受信
Fabric にアクセスするすべてのユーザーが多要素認証を実行する必要があることを確認する必要があります。 Fabric には Microsoft Entra 条件付きアクセス ポリシー を使用します。 受信
パブリック インターネットから Fabric テナント全体をロックダウンし、仮想ネットワーク内からのみアクセスを許可する必要があります。 Fabric のテナント レベルでプライベート リンクを有効にし、パブリック インターネット アクセスをブロックします。 受信

Fabric セキュリティの詳細については、次のリソースを参照してください。