データ権限
概要
データウェアハウスのデータ処理では多数の中間テーブルが生成されますが、これらは業務側での利用には適しておらず、すべてを公開すると業務でテーブルを選ぶ際の複雑さが増します。また、多くのプロジェクトには、データ権限をきめ細かく管理したいというニーズ(データベース・テーブル単位の権限管理)があります。
データ開発プラットフォームのデータ権限付与機能を使うと、データ開発ユーザーはスペース内で、スペースのデータベース、テーブル、ビューなどのアセットについて、プロジェクトドメイン/その他のスペースドメインに使用権限を付与できます。権限を付与されたプロジェクトは、BIダッシュボードやクロスソースアセット構成でこれらのリソースを使用でき、権限を付与されたスペースは、自身のスペースドメイン内でこれらの権限付与されたアセットを使って二次開発を行えます。
権限関連の定義
- 「プロジェクト権限付与」は前提条件です
- 「データ権限付与」はアプリケーション層での制御です
- 「ロール権限」は、アカウントのロールに対応する機能権限の制御です
| 定義 | 権限付与元 | 権限が与えられた主体 | 権限の分類 | 説明 |
|---|---|---|---|---|
| スペース - プロジェクト権限付与 | スペース | プロジェクト |
|
|
| データ権限付与 | スペースA | プロジェクト スペースB |
|
|
| ロール権限 | ロールA | ロールB |
|
|
コアコンセプトとエンティティ
データ権限付与の基本モデルは、「あるシナリオ」で「権限付与対象」に「コンテンツリソース」の「関連権限」を付与することです。
| 定義 | 説明 |
|---|---|
リソースグループ | 権限を付与できるリソースの範囲はスペースのオンラインアセットであり、リソースグループを定義する際にはリソースの範囲を宣言する必要があります。
|
| 認証スペース |
|
| 権限主体 | 権限管理やシステム設計の分野では、権限主体(Authorization Subject)とは、アクセス権限を付与されるエンティティを指します。能動的な場合も受動的な場合もあり、コンテキストやシステム設計によって異なります。 ここでは権限が付与されたプロジェクトまたはその他のデータ開発スペースを指します。 |
| 権限が与えられた主体 | プロジェクト、データ開発スペース |
| 権限タイプ | データ開発スペース - 権限付与は次のもののみを対象とします:
|
| 権限付与施策 | 権限付与アクションの1つのインスタンス |
リソースグループ
データ開発スペースのリソースグループとは
- 権限を付与できるリソースの範囲はスペースのオンラインアセットであり、リソースグループを定義する際にはリソースの範囲を宣言する必要があります。
- リソースの範囲に含まれるエンティティは、データベースdb、テーブル、直接接続ビューです
| 倉庫 | Catalog | データベース | db |
|---|---|---|---|
プリセットETL倉庫 | Hive | 本番環境データベース(オンライン) | hive.ws_xxxx_product |
| IDEデータベース | hive.ws_xxxx_ide |
注意⚠️:Dev開発環境データベースは外部に権限を付与できません
データ開発リソースグループのタイプ
- スペースにはプリセットのリソースグループが用意されています。カスタムリソースグループを作成することもできます
| リソースグループのタイプ | 定義 | db |
|---|---|---|
| プリセットリソースグループ | スペース全体 |
|
| 本番データベーステーブル | hive.ws_xxxx_product | |
| IDEデータベーステーブル | hive.ws_xxxx_ide | |
| カスタムリソースグループ | 2つの定義方法
|
リソースグループの作成
右上の 「+リソースグループ」 をクリックすると、リソースグループの作成ページに移動します
| 定義方法 | 操作方法 | 説明 |
|---|---|---|
| 指定テーブル | 単一テーブルの集合を直接選択します |
|
| 正規表現マッチング | 正規表現を記述し、ルールを満たす空間テーブルをマッチングします |
|
リソースグループを保存すると、「認証」ページへのクイックリンクが表示されます
リソースグループの編集
リソースグループ管理リストの編集アイコンをクリックすると、リソースグループの編集ページに移動します
| リソースグループのカテゴリ | 編集可能な項目 | 編集不可の項目 |
|---|---|---|
| プリセットリソースグループ | / |
|
| カスタムリソースグループ |
|
|
リソースグループの削除
| 削除方法 | リソースグループの分類 | 削除アクション |
|---|---|---|
| 能動的な削除 | プリセットリソースグループ | 削除不可 |
| カスタムリソースグループ | リソースグループを削除すると、その権限付与施策も同時に削除されるため、ユーザーに通知する必要があります | |
| 受動的な削除 | / | スペースが削除されるとリソースグループも削除され、復元できません |
権限付与施策
「あるシナリオ」で「権限付与対象」に「コンテンツリソース」の「関連権限」を付与します。
「XXXプロジェクト」 に 「本番データベーステーブルとIDEデータベーステーブル」 の クエリ権限 を付与します
「リソースグループ作成」と「認証」は、連続した2つの独立したアクションです。
認証タイプ
デフォルトでは、スペースから権限を付与された権限主体はすべて、meta、list、queryの権限を持ちます。
| 権限タイプ | 含まれる権限 | デフォルト施策 |
メタ情報クエリ meta |
| 許可 |
下位リストクエリ list |
| 許可 |
読み取り query |
| 許可 |
権限が与えられた主体の範囲
スペースは各プロジェクトに対して個別に権限を設定でき、権限は次の3種類です:
| 権限 | 説明 |
|---|---|
| 供給可能 & 利用可能 |
|
| 使用のみ |
|
| 権限付与しない | このデータ開発ワークスペースで加工したアセットを、プロジェクトにまだ権限付与していないことを指します |
したがって、データ開発スペースからデータ権限を付与されるための前提条件は、このプロジェクトが「供給可能」権限を持っていることです。
権限付与の追加
方法1:リソースグループで設定
「リソースグループ」での権限付与設定は安定した構造であり、現在のリソースグループに専属します。
「構成権限」詳細ページに移動すると、認証方式 = リソースグループに権限を付与する のみ選択できます。保存時には確認ポップアップが表示されます:「新規のX個のライセンスポリシーが追加されます」
方法2:共通ナビゲーションで設定
右上の「認証」ボタンをクリックします
「構成権限」詳細ページに移動すると、「分析主体に権限を付与する」と「リソースグループに権限を付与する」の2つの視点の認証方式を設定できます。
権限付与施策の編集
- 1つのリソースグループを複数の異なる主体に権限付与でき、複数の権限付与施策が生成されます
- 有効な施策でも、関連付けられたリソースグループの定義は変更できます
- 施策に関連付けられたリソースグループの権限付与設定が変更されると、施策も追加・削除されます
| 操作 | トリガー方法 | 説明 |
|---|---|---|
| 施策の追加 | 手動追加 | 「認証」を手動で追加して新規作成した権限付与施策 |
| 「リソースグループ」の権限付与を編集し、一部の新しい権限主体に権限を付与した場合 | ||
施策の削除 | 能動的な削除 | 操作列で施策を手動削除するか、施策を一括削除します
|
| 受動的な削除 | 「リソースグループ」の権限付与を編集し、一部の権限主体の権限付与を取り消した場合
| |
プロジェクトの削除:権限が与えられた主体(プロジェクト)がシステムから削除された場合
スペースの削除:スペース配下のすべてのアセットが削除されます | ||
| 施策の有効化/無効化 | 能動的な有効化 | 施策が正常に作成されると、デフォルトで「有効中」になります |
| 能動的な無効化 | 操作列で施策を手動で無効化します | |
受動的な無効化 | プロジェクトの「供給可能」権限の取り消し:施策は「無効」になります プロジェクトの削除:権限が与えられた主体(プロジェクト)がシステムから削除されると、施策は無効化されて削除されます |
権限付与施策の管理リスト
認証ツール
データ権限モジュールには、該当するアセットの権限範囲を特定するためのクイック認証ツールが用意されています。
クエリ:
- 現在選択している権限リソースは、どのリソースグループに含まれていますか?
- 現在選択している権限リソースは、特定のスペース/プロジェクト内で権限を持っていますか?

