一般的なデータ アーキテクチャのデータを保護する方法
この記事では、データ メッシュ アーキテクチャおよびハブ アンド スポーク アーキテクチャで、OneLake データのセキュリティを構成する方法の概要について説明します。
セキュリティ機能
Microsoft Fabric では、必要最小限のアクセス許可のみを提供するために、さまざまなレベルで使用できる別々のコントロールを持つ多層セキュリティ モデルを使用します。 このハウツー ガイドで説明されているさまざまなセキュリティの種類の詳細については、「OneLake のデータ アクセス制御モデル」を参照してください。
データ メッシュ用の保護
データ メッシュは、データをサービスやリソースではなく、製品として扱うアーキテクチャ パラダイムです。 データ メッシュは、共通のプラットフォームを通じて相互運用性と検出可能性を実現しながら、さまざまなドメインやチーム間でデータの所有権とガバナンスを分散化することを目的としています。 データ メッシュ アーキテクチャでは、分散化された各チームが、データ製品の一部であるデータの所有権を管理します。 このセクションで提供されるセキュリティ ガイダンスは、ワークスペースへのアクセスを構成する単一のデータ製品チームに焦点を当てています。 これらの手順は、ダウンストリーム ユーザーのアクセスを有効にすると、各データ製品チームが独自のワークスペースで繰り返すことを意図しています。
データ メッシュの構築を開始するには、Microsoft Fabric のドメイン機能を使用して、関連するデータ製品と所有権に従ってワークスペースにタグを付けます。
ドメイン内では、各チームは独自のワークスペースまたはワークスペースを持ちます。 ワークスペースには、使用する最終的なデータ製品を構築するために必要なデータが格納されます。 ワークスペース ロールを使用して、ワークスペースへのアクセス権を ユーザーに付与します。
データ製品のダウンストリーム コンシューマーを特定し、目標を達成するために必要な最小限のアクセス許可に従ってアクセス権を付与します。 ユーザーをターゲット エクスペリエンスに合わせるには、各種類のダウンストリーム ユーザーに 1 つの Fabric データ アイテムへのアクセス権を付与します。 次の表は、データ メッシュ コンシューマーと関連する Fabric アイテムの一般的なユース ケースを示しています。
User | Fabric アイテム |
---|---|
データ サイエンティスト | Apache Spark ノートブックまたはレイクハウス |
データ エンジニア | Apache Spark ノートブック、データ フロー、またはパイプライン |
ビジネス アナリスト | SQL 分析エンドポイント |
レポート作成者 | セマンティック モデル |
レポート コンシューマー | Power BI レポート |
ハブ アンド スポークのセキュリティ保護
ハブ アンド スポーク アーキテクチャは、すべての認定されたデータ製品を 1 つの一元的に所有された場所で管理するため、データ メッシュとは異なります。 ダウンストリーム コンシューマーは、追加のデータ製品の構築に重点を置くのではなく、中央チームによって作成されたデータに対して分析を実行します。
ダウンストリーム コンシューマーを特定し、目標を達成するために必要な最小限のアクセス許可に従ってアクセス権を付与します。 ユーザーをターゲット エクスペリエンスに合わせるには、各種類のダウンストリーム ユーザーに 1 つの Fabric データ アイテムへのアクセス権を付与します。 ユーザー ペルソナ テーブルには、ハブ アンド スポークの一般的なユース ケースと、関連する Fabric アイテムが示されています。
User | Fabric アイテム |
---|---|
データ サイエンティスト | Apache Spark ノートブックまたはレイクハウス |
ビジネス アナリスト | SQL 分析エンドポイント |
レポート作成者 | セマンティック モデル |
レポート コンシューマー | Power BI レポート |
ワークスペースのロール
ワークスペース ロールの割り当ては、ハブ アンド スポークとデータ メッシュの両方のアーキテクチャに関して同じガイドラインに従います。 ジョブ責任の表には、ユーザーがワークスペースで実行する機能に基づいて、ユーザーに割り当てるワークスペース ロールの概要を示しています。
職責 | ワークスペース ロール |
---|---|
ワークスペースを所有し、ロールの割り当てを管理する | 管理者 |
管理者ユーザー以外のロール割り当てを管理する | メンバー |
Fabric アイテムを作成し、データを書き込む | Contributor |
SQL でテーブルとビューを作成する | ビューアー と SQL のアクセス許可 |
データ サイエンティスト
データ サイエンティストは、Apache Sparkで使用するために、レイクハウス内のデータにアクセスする必要があります。 データ メッシュとハブ アンド スポークの場合、Spark ユーザーは、データが存在するワークスペースとは別のワークスペースからデータを使用します。 これにより、データ サイエンティストは、データを保持するワークスペースを煩雑にせずに、モデルと実験を作成できます。 データ サイエンティストは、Azure Databricks や Dremio など、OneLake データ パスに直接接続する Spark 以外のサービスを使用することもできます。
データ サイエンティストにアクセスをプロビジョニングするには、共有ボタンを使用して Lakehouse を共有します。 ダイアログで [すべての Apache Spark の読み取り] ボックスを選択します。 OneLake データ アクセス ロールが有効になっている Lakehouse の場合は、OneLake データ アクセス ロールに追加して、同じユーザー アクセス権を付与します。 OneLake データ アクセス ロールを使用すると、データに対してより詳細なアクセスを付与できます。 データ エンジニアは、ショートカットを作成して、Lakehouse 内のテーブルまたはフォルダーを選択できます。
データ エンジニア
データ エンジニアは、ダウンストリームのデータ製品を構築するために、Lakehouse 内のデータにアクセスする必要があります。 データ エンジニアは、データを読み取るためのパイプラインまたはノートブックを作成できるように、OneLake のデータにアクセスする必要があります。 真のハブ アンド スポーク モデルでは、データ エンジニアのロールは中央ハブ チームのレイヤー内にのみあります。 ただし、データ メッシュの場合、データ エンジニアは複数ドメインでデータ製品を結合して新しいデータ セットを構築します。
[共有] ボタンを使用して、Lakehouse をデータ エンジニアと共有します。 ダイアログで [すべての Apache Spark の読み取り] ボックスをオンにします。 OneLake データ アクセス ロールが有効になっている Lakehouse の場合は、OneLake データ アクセス ロールに追加して、同じユーザー アクセス権を付与します。 OneLake データ アクセス ロールを使用すると、データに対してより詳細なアクセスを付与できます。 データ エンジニアは、ショートカットを作成して、Lakehouse 内のテーブルまたはフォルダーを選択できます。
ビジネス アナリスト
ビジネス アナリスト (データ アナリストとも呼ばれます) は、SQL でデータを照会してビジネスの質問に回答します。
共有ボタンを使用して、Lakehouse をビジネス アナリストと共有します。 ダイアログの [すべての SQL エンドポイント データの読み取り] チェック ボックスをオンにします。 この設定により、ビジネス アナリストは レイクハウスの SQL エンドポイント内のデータにアクセスできますが、基になる OneLake ファイルは表示されません。
SQL で行レベルまたは列レベルのセキュリティを直接定義することで、これらのユーザーのデータへのアクセスをさらに制限できます。
レポート作成者
レポート作成者は、他のユーザーが使用できる Power BI レポートを作成します。
レポート作成者と Lakehouse を共有するには、[共有] ボタンを使用します。 ダイアログの [既定のセマンティック モデルに関するレポートの作成] チェック ボックスをオンにします。 このアクセス許可により、レポート作成者は、Lakehouse に関連付けられているセマンティック モデルを使用してレポートを作成できます。 これらのユーザーは、OneLake のデータにアクセスすることができず、SQL 分析エンドポイントへのフル アクセスは付与されません。
レポート コンシューマー
レポート コンシューマーは、意思決定のために Power BI レポートのデータを閲覧するビジネス リーダーまたはディレクターです。
[共有] ボタンを使用してコンシューマーとレポートを共有します。 レポートの読み取りアクセス権を付与するボックスをチェックしないでください。基になるデータは表示されないようにします。 ユーザーが SQL 分析エンドポイントにアクセスしてテーブルを表示できないようにするには、これらのユーザーに SQL へのアクセスが可能となるアクセス許可が定義されていないことを確認します。
アプリを使用して、レポート コンシューマーとデータを共有することもできます。 アプリを使用すると、ユーザーは、基になるワークスペースにアクセスしなくても、定義済みのレポートまたはレポートのセットにアクセスできます。 Direct Lake モードのレポートの場合、データを閲覧するには、基になる Lakehouse をユーザーと共有する必要があります。