1. データシェアリングとは?
- **データシェアリング(Secure Data Sharing)**は、他のSnowflakeアカウントとデータを共有するためのSnowflake独自の機能。
- 外部アカウントとの共有に必要なのが「シェアオブジェクト(Share)」。
2. CREATE SHAREとは?
CREATE SHAREは 新しいShareオブジェクトの作成権限。- 他のアカウントとテーブルなどを共有するためにこの権限が必要。
3. CREATE SHARE を持つシステム定義ロール
| ロール名 | CREATE SHARE 権限 | 備考 |
|---|---|---|
ACCOUNTADMIN | ✅ 持っている | デフォルトのシステム定義ロールでは唯一 |
SYSADMIN | ❌ 持っていない | シェアの作成はできない |
SECURITYADMIN | ❌ 持っていない | ユーザー・ロール管理に特化 |
PUBLIC | ❌ 持っていない | 全ユーザーがデフォルトで持つ最低限のロール |
📌 補足:
ACCOUNTADMINロールは、Snowflakeアカウント全体に対するフルコントロール権限を持つため、CREATE SHARE権限も含まれている。
4. 他ロールへの権限移譲(GRANT)
ACCOUNTADMINから 他のカスタムロールにCREATE SHAREをGRANT することは可能。GRANT CREATE SHARE ON ACCOUNT TO ROLE my_custom_role;- ただし、この操作は慎重に行う必要あり(シェアの作成は外部との連携を伴うため、セキュリティリスクあり)。
🧠 まとめポイント
- CREATE SHARE権限はデフォルトでは
ACCOUNTADMINのみが所持。 - 他のロールに手動でGRANTは可能だが、デフォルトでは不可。
- Snowflakeにおける外部共有のセキュリティ管理に直結する重要な権限。


