Microsoft Fabric のデータ ウェアハウスのセキュリティ
適用対象:✅ Microsoft Fabric の SQL 分析エンドポイントおよびウェアハウス
この記事は、Microsoft Fabric のレイクハウスの SQL 分析エンドポイントとウェアハウスを保護するためのセキュリティ トピックを対象にしています。
Microsoft Fabric のセキュリティの詳細については、「Microsoft Fabric のセキュリティ」を参照してください。
SQL 分析エンドポイントとウェアハウスへの接続の詳細については、接続に関する記事を参照してください。
Microsoft Fabric のアクセス許可と詳細な SQL アクセス許可が連携して、接続時のウェアハウスへのアクセスとユーザーのアクセス許可が管理されます。
- ウェアハウスへの接続は、少なくともウェアハウスに対する Microsoft Fabric 読み取りアクセス許可が付与されていることに依存します。
- Microsoft Fabric アイテムのアクセス許可を使用すると、SQL 内でこれらのアクセス許可を付与することなく、ユーザーに SQL アクセス許可を付与できます。
- Microsoft Fabric ワークスペース ロールは、ワークスペース内のすべてのウェアハウスに Microsoft Fabric のアクセス許可を付与します。
- ユーザーの詳細なアクセス許可は、T-SQL を使用してさらに詳細まで管理できます。
ワークスペース ロールは、ワークスペース内の開発チームの共同作業に使用されます。 ロールの割り当てにより、ユーザーが使用できるアクションが決定され、ワークスペース内のすべてのアイテムに適用されます。
- Microsoft Fabric ワークスペース ロールの概要については、「ワークスペースのロール」を参照してください。
- ワークスペース ロールを割り当てる手順については、「ワークスペースへのアクセス権を付与する」を参照してください。
ワークスペース ロールを通じて提供される特定のウェアハウス機能の詳細については、「Fabric データ ウェアハウスのワークスペース ロール」を参照してください。
ワークスペース内のすべてのアイテムに適用されるワークスペース ロールとは対照的に、アイテムのアクセス許可は個々のウェアハウスに直接割り当てることができます。 ユーザーは、その単一のウェアハウスに割り当てられたアクセス許可を受け取ります。 これらのアクセス許可の主な目的は、ウェアハウスを下流で使用するために共有を有効にすることです。
ウェアハウスに付与される特定のアクセス許可の詳細については、データの共有とアクセス許可の管理に関する記事を参照してください。
ワークスペース ロールとアイテムのアクセス許可を使用すると、ウェアハウス全体の粗いアクセス許可をユーザーに簡単に割り当てることができます。 ただし、場合によっては、ユーザーにより詳細なアクセス許可が必要になります。 これを実現するために、標準の T-SQL コンストラクトを使用して、ユーザーに特定のアクセス許可を付与することができます。
Microsoft Fabric データ ウェアハウスでは、管理者が未承認のアクセスから機密データを保護するために使用できる複数のデータ保護テクノロジがサポートされています。 承認されていないユーザーまたはロールからデータをセキュリティで保護するか、データを難読化することで、これらのセキュリティ機能は、アプリケーションを変更することなく、ウェアハウスと SQL 分析エンドポイントの両方にデータ保護を提供できます。
- オブジェクト レベルのセキュリティは、特定のデータベース オブジェクトへのアクセスを制御します。
- 列レベルのセキュリティでは、テーブル内の列の不正な表示を防ぎます。
- 行レベルのセキュリティでは、使い慣れた
WHERE
句フィルター述語を使用して、テーブル内の行を不正に表示することを防ぎます。 - 動的データ マスクでは、マスクを使用してアクセスを完了できなくすることで、メール アドレスや番号などの機密データの不正な表示を防ぎます。
オブジェクト レベルのセキュリティは、ユーザー特権またはロールに基づいて、テーブル、ビュー、プロシージャなどの特定のデータベース オブジェクトへのアクセスを制御するセキュリティ メカニズムです。 これにより、ユーザーまたはロールは、アクセス許可が付与されているオブジェクトのみを操作することができ、データベース スキーマとそれに関連付けられているリソースの整合性と機密性が保護されます。
SQL での詳細なアクセス許可を管理するための詳細については、「SQL の詳細なアクセス許可」を参照してください。
行レベルのセキュリティは、ユーザー ロールや属性などの指定された条件に基づいて、データベース テーブル内の個々の行またはレコードへのアクセスを制限するデータベース セキュリティ機能です。 これにより、ユーザーはアクセスが明示的に承認されたデータのみを表示または操作することができ、データのプライバシーと制御が強化されます。
行レベルのセキュリティの詳細については、「Fabric データ ウェアハウスでの行レベルのセキュリティ」を参照してください。
列レベルのセキュリティは、データベース テーブル内の特定の列またはフィールドへのアクセスを制限するデータベース セキュリティ対策であり、機密情報や制限された情報を隠しながら、ユーザーが承認された列のみを表示および操作できるようにします。 データ アクセスをきめ細かく制御し、データベース内の機密データを保護します。
列レベルのセキュリティの詳細については、「Fabric データ ウェアハウスでの列レベルのセキュリティ」を参照してください。
動的データ マスクでは、公開する機密データの量を管理者が指定できるため、そのようなデータに対する未承認の閲覧を防ぎ、アプリケーション レイヤーへの影響が最小限に抑えられます。 動的データ マスクは、指定されたデータベース フィールドで、クエリの結果セットに含まれる機密データを隠蔽するように構成できます。 動的データ マスクでは、データベース内のデータは変更されず、マスク ルールはクエリ結果に適用されるため、既存のアプリケーションで使用できます。 多くのアプリケーションは、既存のクエリを変更せずに、デリケートなデータをマスクすることができます。
動的データ マスキングの詳細については、「Fabric データ ウェアハウスでの動的データ マスキング」をご覧ください。
共有は、下流で使用するためにユーザーにウェアハウスへの読み取りアクセスを付与する便利な方法です。 共有を使用することで、組織内の下流のユーザーは、SQL、Spark、または Power BI を使用してウェアハウスを使用できます。 共有受信者に付与されるアクセス許可のレベルをカスタマイズして、適切なアクセス レベルを提供できます。
共有の詳細については、データの共有とアクセス許可の管理に関する記事を参照してください。
ユーザーに割り当てるアクセス許可を評価する場合は、次のガイダンスを考慮してください。
- ワークスペース内のすべてのアイテムにアクセスできるようにするため、ソリューションで現在共同作業を行っているチーム メンバーのみにワークスペース ロール (管理者、メンバー、共同作成者) を割り当てる必要があります。
- 主に読み取り専用アクセスが必要な場合は、ビューアー ロールに割り当て、T-SQL 経由で特定のオブジェクトの読み取りアクセス権を付与します。 詳細については、「SQL の詳細なアクセス許可を管理する」を参照してください。
- 高次の特権を持つユーザーの場合は、管理者、メンバー、または共同作成者ロールを割り当てます。 適切なロールは、実行する必要がある他のアクションに依存します。
- 個々のウェアハウスにのみアクセスする必要がある、または特定の SQL オブジェクトにのみアクセスする必要がある他のユーザーには、Fabric アイテムのアクセス許可を付与し、SQL 経由で特定のオブジェクトへのアクセス権を付与する必要があります。
- 特定の各メンバーを追加するのではなく、Microsoft Entra ID (旧称 Azure Active Directory) グループのアクセス許可を管理することもできます。 詳細については、「Microsoft Fabric の SQL 認証の代替え手段とする Microsoft Entra 認証」を参照してください。
ウェアハウスと SQL 分析エンドポイントでのユーザー アクティビティを追跡して、規制コンプライアンスとレコード管理の要件を満たしていることを確認するために、Microsoft Purview と PowerShell を介して一連の監査アクティビティにアクセスできます。 ユーザー監査ログを使用して、Fabric 項目に対して誰がアクションを実行しているのかを特定できます。
ユーザー監査ログにアクセスする方法の詳細については、Microsoft Fabric でのユーザー アクティビティの追跡と操作一覧に関する記事を参照してください。