オブジェクト レベルのセキュリティ (OLS)

オブジェクト レベルのセキュリティ (OLS) を使用すると、モデル作成者はレポート ビューアーから特定のテーブルまたは列をセキュリティで保護できます。 たとえば、個人データを含む列は、特定の閲覧者のみが表示および操作できるように制限できます。 さらに、オブジェクト名とメタデータを制限することもできます。 これにより、セキュリティが強化され、適切なアクセス レベルを持たないユーザーは、従業員や財務記録などのビジネスクリティカルな個人情報や機密性の高い個人情報を検出できなくなります。 必要なアクセス許可を持たない閲覧者の場合、セキュリティで保護されたテーブルまたは列が存在しないかのように見えます。

OLS を使用するレポートを作成する

行レベルセキュリティ (RLS) と同様に、OLS もモデル ロール内で定義されます。 表形式モデル定義言語 (TMDL) ビューまたは 表形式エディターなどの外部ツールを使用して、OLS 定義を作成できます。

TMDL ビューを使用してオブジェクト レベルのセキュリティを構成する

TMDL ビューを使用すると、TMDL スクリプトを使用してセマンティック モデル内で直接 OLS ルールを定義できるため、外部ツールは必要ありません。

  1. 作成環境で TMDL ビューを開きます。

  2. 新しい TMDL スクリプト タブを作成し、セキュリティで保護するテーブルまたは列に適切なcreateOrReplaceを持つロールを定義するmetadataPermission スクリプトを作成します。

    • なし: OLS が適用され、テーブルまたは列がそのロールから非表示になります。
    • 読み取り: そのロールに対してテーブルまたは列が表示されます。

テーブル全体をセキュリティで保護するには:

createOrReplace

    role CategoriesOLS
        modelPermission: read

        tablePermission Customers
            metadataPermission: none

特定の列をセキュリティで保護するには:

createOrReplace

    role CategoriesOLS
        modelPermission: read

        tablePermission Customers
            columnPermission Address
                metadataPermission: none
  1. 適用する前に [プレビュー ] ボタンを使用して、セマンティック モデルに加えられた変更を確認します。

  2. [ 適用 ] ボタンを選択して TMDL スクリプトを実行し、ロール定義をセマンティック モデルに適用します。

  3. セマンティック モデルをPower BI サービスに発行します。

  4. Power BI サービスで、セマンティック モデルの [その他のオプション (...)] メニューを選択します。 [ セキュリティ ] ページを選択し、メンバーまたはグループを適切なロールに割り当てます。

表形式エディターを使用してオブジェクト レベルのセキュリティを構成する

  1. Power BI Desktop で、OLS ルールを定義するモデルとロールを 作成 します。

  2. [ 外部ツール ] リボンで、[ 表形式エディター] を選択します。 [Tabular Editor] ボタンが表示されない場合は、プログラムをインストールします。 テーブル エディターを開くと、モデルに自動的に接続されます。

    [外部ツール] メニューのスクリーンショット。

  3. モデルビューで、ロールのドロップダウンメニューを選択します。 手順 1 で作成したロールが表示されます。

    [モデル] ビューの [ロール] フォルダーの下に表示されているロール名のスクリーンショット。

  4. OLS 定義を有効にするロールを選択し、[テーブルのアクセス許可] を展開します。

    OLS の [テーブルのアクセス許可] にアクセスする場所を示すスクリーンショット。

  5. テーブルまたは列のアクセス許可を [なし] または [読み取り] に設定します。

    なし: OLS が適用され、テーブルまたは列がそのロールから非表示になります。 読み取り: そのロールに対してテーブルまたは列が表示されます。

    [ テーブルのアクセス許可 ] のカテゴリを [なし] に設定します。

    テーブル全体の OLS ルールを [なし] に設定するスクリーンショット。

  6. ロールの OLS を定義したら、変更を保存します。

    ロール定義の保存のスクリーンショット。

  7. Power BI Desktop で、セマンティック モデルを Power BI サービスに発行します。

  8. Power BI サービスで、セマンティック モデルの [その他のオプション] (...) メニューを選択して [セキュリティ] ページに移動し、メンバーまたはグループを適切なロールに割り当てます。

OLS ルールが定義されました。 必要なアクセス許可を持たないユーザーは、そのフィールドを使用するすべてのレポート ビジュアルに対してフィールドが見つからないというメッセージを受け取ります。

列が見つからないか、この式では使用できない可能性があるという内容のエラーメッセージのスクリーンショット。

考慮事項と制限事項

  • OLS は、ワークスペース内の "閲覧者" にのみ適用されます。 管理者メンバー、または共同作成者ロールが割り当てられたワークスペース メンバーには、セマンティック モデルの編集アクセス許可があるため、OLS は適用されません。 詳細については、ワークスペースでのロールに関する記事を参照してください。

  • 1 つ以上のテーブル オブジェクトまたは列オブジェクトに対して OLS が構成されたセマンティック モデルは、次の Power BI 機能ではサポートされていません。

    • クイック インサイトの視覚化
    • スマート ナラティブ ビジュアル
    • Excel のデータ型ギャラリー
  • OLSのその他の制限