lookml-access-grants について
lookml-access-grantsは、LookMLのアクセス権を定義し、ユーザーがExplore、Join、View、フィールドを閲覧できる範囲を制御するスキルです。ユーザー属性との照合方法や、階層ごとの要件の組み合わせを説明します。
主な機能
- 01ユーザー属性による権限の定義
- 02Explore、Join、View、フィールドへの適用
- 03allowed_valuesの完全一致
- 04オブジェクト階層をまたぐ権限の組み合わせ
活用シーン
- 01特定部門にビューの閲覧を許可
- 02給与などの機密フィールドへのアクセス制限
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ looker-open-source/ looker-skills --skill lookml-access-grantsインストール後、Claude Code で/lookml-access-grantsを入力して読み込まれたか確認します。
詳細
手順
- アクセスグラントを定義する:
- モデルレベルで定義します。
user_attributeをallowed_valuesのセットに関連付けます。
- アクセスグラントを適用する:
- Explore、Join、View、または Field レベルで
required_access_grants: [grant_name]を使用します。 - オブジェクトを表示するには、ユーザーは一覧にあるすべてのグラントの条件を満たす必要があります。
- Explore、Join、View、または Field レベルで
- ベストプラクティス:
- 完全一致:
allowed_valuesは、ユーザー属性の値と明確に一致する必要があります(ワイルドカードや部分一致は使用できません)。 - 加算方式:グラントは加算されます。View に Grant A が必要で、Field に Grant B が必要な場合、そのフィールドを表示するには両方が必要です。
- 完全一致:
例
基本的なアクセスグラント
# In model file
access_grant: can_view_finance {
user_attribute: department
allowed_values: ["finance", "executive"]
}
# In view file
view: finance_data {
required_access_grants: [can_view_finance]
# ...
}
フィールドレベルのセキュリティ
dimension: salary {
type: number
sql: ${TABLE}.salary ;;
required_access_grants: [can_view_finance]
}
コメント
Markdown 対応