CHAPTER 07

Role・権限設計

AI利用でも最小権限とガバナンスを崩さない

7-1. CoWorkでもSnowflake RBACが基本

CoWorkやCortex Agentsを導入しても、データアクセス制御の基本はSnowflakeのRBACです。AIだから特別に全データへアクセスさせるのではなく、必要最小限の権限を与えます。

7-2. 推奨する役割分離

機能ロール例対象主な責務
FR_COWORK_USER一般利用者Agentを利用する
FR_AI_DEVELOPERAI開発者Agent・Semantic View・Searchを構築
FR_DATA_ENGINEERデータ担当RAW/STG/CORE/MARTを整備
FR_SECURITY_ADMINセキュリティ担当ロール・ポリシー・監査

7-3. Agent作成に必要な代表権限

Agent作成には、対象SchemaへのCREATE AGENT、Database/SchemaへのUSAGEが必要です。さらにツールに応じて追加権限が必要です。

対象代表的な権限
AgentCREATE AGENT / USAGE
Semantic ViewUSAGE、および参照元Table/ViewへのSELECT
Cortex Search ServiceUSAGE
Custom ToolProcedure/UDF等へのUSAGE
Database / SchemaUSAGE

7-4. 利用者と開発者を分ける

flowchart TD SYS[SYSADMIN等] DEV[FR_AI_DEVELOPER] USR[FR_COWORK_USER] AR1[AR_AI_BUILD] AR2[AR_COWORK_USE] SYS --> DEV --> AR1 SYS --> USR --> AR2

一般利用者にAgent作成権限まで持たせる必要はありません。「使う権限」と「作る権限」を分離するのが基本です。

7-5. Row Access Policy・Masking Policy

AI利用時も、基礎データ側のRow Access PolicyやMasking Policyなどのガバナンスを考慮します。特に顧客・従業員・個人情報を扱う場合は、誰がどの行・列まで参照可能かを明確にします。

7-6. MCP・Web Searchを利用する場合

MCP ConnectorやWeb SearchはSnowflake外部との通信を伴うため、データが外部サービスへ送られる可能性を前提に設計します。

確認事項:送信データ、認証方式、外部サービスの利用規約、ログ、機密情報の扱い、ネットワーク制御を事前確認します。

7-7. 権限設計チェックリスト

この章で理解したこと

  • CoWorkでもRBACが基本
  • 利用者・AI開発者・データ担当を分離する
  • Agent作成にはCREATE AGENT等が必要
  • Toolごとに追加権限が必要
  • 外部MCP利用時は外部送信リスクも確認する
← 第6章へ 目次へ戻る 第8章へ →