🎃

Snowflakeにおける高度なガバナンス管理

に公開

はじめに

Snowflakeではロールによるオブジェクトに対する権限管理が可能ですが、より細かく権限管理することができるので、個人用のメモとしてまとめます。

対象読者

  • Snowflakeについてこれから勉強する方々

データに対する高度なアクセス制御

Snowflakeではテーブルやビューに対して、単純な参照権限よりも細かくアクセス制御を行うことができる。マスキングポリシー行アクセスポリシーの2つがある。

マスキングポリシー

抽出クエリを実行するロールによって、列の値をマスキングする機能。
この機能はメールアドレスや電話番号のような個人情報が入っている特定の列へのアクセスだけ制限したい場合に役立つ。

行アクセスポリシー

ロールによって表示する行を制限することができる。
例えば、すべての部署のデータが入っているテーブルから自分に関連する部署のデータだけを取得する、という場合に有用。
これらの列単位と行単位でのアクセス制限により、関係者の権限に合わせてセキュアビューを作成するような煩雑な作業が不要になる。

ただ、上記の機能はエンタープライズ以上のエディションでないと使えない。

Discussion