データマートへのアクセスを制御する
この記事では、行レベルのセキュリティ、Power BI Desktop のルール、データマートがアクセス不可になる、または利用できなくなるしくみなど、データマートへのアクセス制御について説明します。
ワークスペースのロール
各種ワークスペース ロールにユーザーを割り当てることで、データマートに関する次の機能が提供されます。
ワークスペース ロール | 説明 |
---|---|
管理者 | データフローを介したデータの取り込み、SQL と視覚化のクエリの記述、モデルまたはセマンティック モデルの更新 (リレーションシップの作成、メジャーの作成など) を行うためのアクセス許可をユーザーに付与します |
Member | データフローを介したデータの取り込み、SQL と視覚化のクエリの記述、モデルまたはセマンティック モデルの更新 (リレーションシップの作成、メジャーの作成など) を行うためのアクセス許可をユーザーに付与します |
Contributor | データフローを介したデータの取り込み、SQL と視覚化のクエリの記述、モデルまたはセマンティック モデルの更新 (リレーションシップの作成、メジャーの作成など) を行うためのアクセス許可をユーザーに付与します |
ビューアー | SQL と視覚化のクエリの記述、読み取り専用モードでの "モデル ビュー" へのアクセスを行うためのアクセス許可をユーザーに付与します。 詳しくは、「閲覧者の制限事項」を参照してください。 |
閲覧者の制限事項
閲覧者ロールは、他のワークスペース ロールと比べて制限の大きいロールです。 閲覧者に与えられる SQL アクセス許可の数が減るだけでなく、制限されたアクションも増えます。
機能 | 制限事項 |
---|---|
Settings | 閲覧者は読み取り専用アクセス権を持っているので、データマートの名前変更、説明の追加、秘密度ラベルの変更はできません。 |
モデル ビュー | 閲覧者は、モデル ビューに対して読み取り専用モードになります。 |
クエリを実行する | ビューアーには、特に付与されていない限り、完全な DML/DDL 機能はありません。 閲覧者は、SQL クエリ エディターで SELECT ステートメントを使ってデータを読み取り、視覚化クエリ エディターのツール バーにあるすべてのツールを使うことができます。 また、閲覧者は Power BI Desktop やその他の SQL クライアント ツールからデータを読み取ることもできます。 |
Excel で分析 | 閲覧者は Excel で分析する権限を持っていません。 |
セマンティック モデルを手動で更新する | ビューアーは、データマートが接続されている既定のセマンティック モデルを手動で更新することはできません。 |
新しいメジャー | ビューアーには、メジャーを作成するアクセス許可がありません。 |
系列ビュー | ビューアーは、系列ビュー グラフを読み取るアクセス権を持っていません。 |
アクセス許可の共有または管理 | 閲覧者は、データマートを他のユーザーと共有する権限を持っていません。 |
レポートの作成 | 閲覧者はワークスペース内にコンテンツを作成するアクセス権を持たないため、データマートの上にレポートを作成することはできません。 |
行レベルのセキュリティ
行レベル セキュリティ (RLS) を使用すると、特定のユーザーのデータ アクセスをデータマートに制限できます。 フィルターでは行レベルでデータ アクセスが制限され、ロール内でフィルターを定義することができます。 Power BI サービスでは、ワークスペースのメンバーはワークスペース内のデータマートにアクセスでき、RLS ではそのようなデータ アクセスを制限しません。
データマート エディターでデータマートの RLS を構成できます。 データマートで構成された RLS は、自動生成されたセマンティック モデルやレポートなど、ダウンストリーム項目に自動的に適用されます。
Note
データマートは拡張行レベルのセキュリティ エディターを使用します。つまり、Power BI でサポートされているすべての行レベルのセキュリティ フィルターを定義できるわけではありません。 制限には、USERNAME() や USERPRINCIPALNAME() といった動的ルールなど、現在は DAX を使うことによってのみ定義できる式が含まれます。 これらのフィルターを使ってロールを定義するには、DAX エディターを使用するように切り替えてください。
データマートの行レベル セキュリティ (RLS) ロールと規則を定義する
RLS ロールを定義するには、次の手順を実行します。
[行セキュリティの設定] ウィンドウを使って新しい RLS ロールを作成します。 テーブルにフィルターの組み合わせを定義し、[保存] を選択してロールを保存できます。
ロールが保存されたら、[割り当て] を選択してユーザーをロールに追加します。 割り当てたら、[保存] を選択してロールの割り当てを保存し、RLS 設定モーダルを閉じます。
作成されたロールを検証するには、次の手順を実行します。
ロールのチェック ボックスをオンにして検証するロールを選択し、[OK] を選択します。
ご自分のアクセス権に戻すには、リボンの [表示方法] ボタンをもう一度選択し、[なし] を選択します。
データマートが利用できなくなるしくみ
データマートは、次のいずれかの状況が発生すると、使用できないデータマートとしてマークされる可能性があります。
状況 1: Premium ワークスペースが Premium から Premium 以外に変更されると、そのワークスペース内のすべてのデータマートが使用できなくなります。 データマート エディターが使用できなくなり、データマートと自動生成されたセマンティック モデルのダウンストリームの使用がブロックされます。 ユーザーまたは管理者は、データマートを復元するために、ワークスペースを元の Premium 容量にアップグレードする必要があります。
状況 2: データフローがデータマートおよび関連付けられたセマンティック モデルを更新するが、システム ロックのためにデータマートまたはセマンティック モデルの更新が保留中の場合、データマートは使用できなくなります。 データマート エディターは、データマートが使用できない状態になるとアクセスできなくなります。 次の図に示す [再試行] アクションを使用すると、ユーザーはデータフロー、データマート、セマンティック モデル間の同期をトリガーできます。 要求されたアクションが完了するまでに数分かかる場合がありますが、ダウンストリームの使用を続行できます。
状況 3: Premium ワークスペースが別のリージョンの別の Premium 容量に移行されると、"ワークスペース リージョンが変更されたため、データマートを開けません。 データマートを開くには、データマートの作成時に接続されたリージョンにワークスペースを再接続します。データマートが作成されたリージョンはワークスペースが存在するリージョンである必要があり、移行はサポートされていないため、この動作は仕様です。
関連するコンテンツ
この記事では、データマートへのアクセスの制御に関する情報を提供しました。
データマートと Power BI の詳細については、以下の記事を参照してください。
データフローとデータ変換の詳細については、次の記事を参照してください。