Microsoft Fabric での主要な共有シーンと方法

## はじめに

FAQ : レポートやデータの共有はどのようにするべき ? 

といったよくある質問への回答です。

## 前提知識

基本的なアクセス権の付与の考え方は以下を参照ください。

https://qiita.com/ryoma-nagata/items/f03e560a3350a6a052db#%E3%82%A2%E3%82%A4%E3%83%86%E3%83%A0


## 共有パターン 1 : Power BI レポートの共有

もっともよくあるパターンです。4つの方法から選択ください。

:::note info

大前提として、Power BI アイテムの共有には Power BI Pro などの有償ユーザーライセンスが必要です。（または F64 以上の容量ライセンスを使用したワークスペース）

詳細：https://learn.microsoft.com/ja-jp/fabric/enterprise/licenses#per-user-licenses

:::


| 方法 | 特徴 | どのような場合に選ぶ |
|:-:|:-:|:-:|
| ワークスペースでの権限付与  | ワークスペース上のすべてのアイテムに対して権限が適用される  | 公開前のレビューなどワークスペースすべての情報を見せたい場合  |
| レポートアイテムの直接共有  | 手軽だが、権限付与がレポート単位となるため煩雑化しやすい | 単発での分析共有など  |
| ワークスペースアプリでの共有  | 複数のレポートをパッケージ化して管理可能。ワークスペースにつき一つの制約あり  | Power BI レポートのみを広範囲に共有する場合  |
| 組織アプリでの共有  | Fabric のノートブック、リアルタイムダッシュボード、レポートのパッケージ化。複数作成可能 | 複数の広範囲共有アプリが必要な場合や、Python ノートブックの共有が必要となる場合など  |



### ワークスペースでの権限付与

ワークスペースのアクセス権設定で行います。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/281819/8218e72b-7ce7-4578-8292-4dab25c4860b.png)

詳細は前提知識で紹介した記事を参照。

この方式は、ワークスペース内のすべてのアイテムを閲覧可能としてしまうため、開発中の資材などが見える場合や、レイクハウスやウェアハウスを含む場合にデータ見えてしまう点に注意してください。


### レポートアイテムの直接共有

https://learn.microsoft.com/ja-jp/power-bi/collaborate-share/service-share-dashboards

アクセス許可の管理などからアクセス権付与またはリンクの共有にて実施します。
共有するレポートの数が増えると割当の管理も増えることに注意してください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/281819/d84d4e0d-c29f-41c9-8b2b-c84c63af62be.png)

アクセス権付与

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/281819/f4360441-89c3-4492-9df9-f5ccc1a4e869.png)


共有リンク

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/281819/ce742c7f-14ac-480c-a466-9310ae363ded.png)


:::note info
リンクの共有はテナント設定から制御をかけることが可能です

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/281819/cfaaf2b2-a5f5-4fc9-a1eb-38d865c56cd8.png)
:::

### ワークスペースアプリでの共有

https://learn.microsoft.com/ja-jp/power-bi/collaborate-share/service-create-distribute-apps

ワークスペースアプリの設定からアクセス許可の管理を行います。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/281819/95465aa2-633e-4a2a-8bb0-5ab6863843c2.png)

対象の管理など
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/281819/78439f18-0516-48dd-8504-9a57b4d2329a.png)

複数の Power BI レポートを含めたパッケージとしてアクセス権を管理することができます。

主な特徴、制約

- 組織全体を共有先として指定可能
- 更新をするまではレポートの変更が反映されないので、ワークスペースをアプリ発行前のステージング領域として扱うことができます。※レポートの基となるデータは常にワークスペースの状態が反映されます
- ユーザーごとにアプリ上で表示するレポートを制御可能※表示されるデータの制御はセマンティックモデルで行います
- アプリはワークスペースにつき一つのみ作成可能です。

### 組織アプリでの共有（2025/3時点でプレビュー）

https://learn.microsoft.com/ja-jp/power-bi/consumer/org-app-items/org-app-items

組織アプリという名称のアイテム内でアクセス許可の管理を行います

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/281819/acce99c4-1e3f-4127-9d44-52bf56be94ee.png)

組織アプリは Power BI レポート、Notebook、リアルタイムダッシュボードを含めたパッケージとしてアクセス権を管理することができます。

主な特徴、制約
- レポート以外の Fabric アイテムを含めることができます。
- ワークスペース内に複数作成が可能です。
- ワークスペースアプリのように一つのアプリでユーザーごとに表示するレポートを変えるといった対応はできません、
- 作成するためにはワークスペースがFabric 容量モードである必要があります
- 同じデータで新しいレポートを作成する権限（ビルド権限）の付与はセマンティックモデル側で設定する必要があります。

その他の相違点は先頭の公開ドキュメント URL を確認ください。

### セマンティックモデルへのアクセス権について

ここまで紹介したいずれかの方法でレポートを共有すると、レポートの背後のセマンティックモデル（レポートが要求したデータを応答するためのBIモデルアイテム）への読み取りアクセス権も同時に付与されます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/281819/76d38133-7fcd-4760-b5e3-442ed27fd114.png)

権限管理画面は他のアイテムとよく似ています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/281819/c306c69e-694b-4583-98a4-bca61dd2506b.png)


## 共有パターン 2 : DB 接続の許可

レイクハウスや、ウェアハウスを作成した後に、DB接続（SQL アクセス）を許可するというパターンです。 Fabric 上のデータを Power BI を含む BI ツールや、ETL ツールのソースにしたいなどが主な採用シーンです。

この場合、公開範囲の違いにより大きく3つの方法から選びます。

| 方法 | 特徴 | どのような場合に選ぶ |
|:-:|:-:|:-:|
| ワークスペースでの権限付与 | ワークスペース上のすべてのアイテムに対して権限が適用される  | ワークスペース上すべての情報を見せたい場合  |
| アイテムでの権限付与 | 対象のデータベース内のすべてのデータが共有される | データベースレベルでの共有をする場合や、特定のアイテムにショートカット作成を許可したい場合 |
| テーブルやビューでの権限付与 | 対象のオブジェクトのデータが共有される | テーブルやスキーマレベルでのアクセス制御が必要な場合 |

なお、DB 接続として考える場合は、レイクハウス上のテーブルについては SQL 分析エンドポイントを介して接続されるため、ウェアハウスの原則が適用されます。

https://learn.microsoft.com/ja-jp/fabric/data-warehouse/share-warehouse-manage-permissions


### ワークスペースでの権限付与

Power BI の場合と同様です。すべてのワークスペースデータを表示できてしまう点に注意ください。

### アイテムでの権限付与


共有ボタンまたはアクセス管理画面から設定を行います。

共有ボタン
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/281819/a8973ec0-abc2-4238-93a9-05528581c4dd.png)


アクセス管理
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/281819/7aff9fae-a73e-4e6e-9bab-470e1ed3f6fa.png)


レイクハウスの場合

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/281819/ba3049ad-f008-4542-9bda-e431afb80834.png)


ウェアハウスの場合

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/281819/8a6c0614-e74e-4868-9ae9-02f94e2f18a8.png)

:::note warn

ショートカットを許可する場合には、すべての Apache spark を読み取る or すべての OneLake データを読み取るを選択し、ReadAll 権を付与します。

:::

アイテムまたはテーブルでの権限付与を行った場合、SSMS での接続はオプションを既定ではなく、アイテム名で指定する必要があります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/281819/b7abf894-6cb3-4723-8fd6-2c3240ebab64.png)



### テーブルでの権限付与

アイテムに読取権限のみを付与するため、追加のアクセス許可にチェックを入れない状態からはじめます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/281819/925cbe39-50c9-41b5-94bf-3bd446bda9a0.png)

この状態にすることで、ワークスペースが提供する SQL Server 上に Login が同期され、対象データベースへのSQL Server 接続が可能となります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/281819/3a004ec6-84d1-4814-9fe3-df8ae3bb108e.png)

有用な参考情報：https://blog.engineer-memo.com/2024/04/26/microsoft-fabric-%e3%81%ae-synapse-data-warehouse-%e3%81%ae%e7%89%b9%e6%80%a7%e3%82%92%e6%8a%8a%e6%8f%a1%e3%81%99%e3%82%8b%e3%81%9f%e3%82%81%e3%81%ae%e3%83%89%e3%82%ad%e3%83%a5%e3%83%a1%e3%83%b3/#i-18

その後、GRANT などでオブジェクトへのアクセス権を設定します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/281819/f48be904-d2a0-4b23-a5f0-842d9d30972f.png)