SNOWFLAKE データベースロール¶
アカウントがプロビジョニングされると、 SNOWFLAKE データベースが自動的にインポートされます。データベースは、 Secure Data Sharing を使用して、組織およびアカウントのオブジェクトメタデータおよびその他の使用メトリックを提供するSnowflakeの例です。
SNOWFLAKE データベース内のスキーマオブジェクトへのアクセスは、さまざまな データベースロール によって制御されます。次のセクションでは、ロールに付与された、各 SNOWFLAKE データベースロール、関連する権限、および関連スキーマオブジェクトへのアクセス権について説明します。
このトピックの内容:
ACCOUNT_USAGE スキーマ¶
ACCOUNT_USAGE スキーマには4つの SNOWFLAKE データベースロールが定義されており、それぞれに特定のビューに対する SELECT 権限が付与されています。
ロール |
目的および説明 |
---|---|
OBJECT_VIEWER |
OBJECT_VIEWER ロールは、オブジェクトメタデータを可視化します。 |
USAGE_VIEWER |
USAGE_VIEWER ロールは、使用履歴の情報を可視化します。 |
GOVERNANCE_VIEWER |
GOVERNANCE_VIEWER ロールは、ポリシー関連の情報を可視化します。 |
SECURITY_VIEWER |
SECURITY_VIEWER ロールは、セキュリティベースの情報を可視化します。 |
データベースロール別の ACCOUNT_USAGE ビュー¶
OBJECT_VIEWER、 USAGE_VIEWER、 GOVERNANCE_VIEWER、および SECURITY_VIEWER のロールには、共有 SNOWFLAKE データベースでAccount Usageビューをクエリする SELECT 権限があります。
チェックマーク(つまり ✔)は、ビューに対する SELECT 権限がロールに付与されていることを示します。
ビュー |
OBJECT_VIEWERロール |
USAGE_VIEWERロール |
GOVERNANCE_VIEWERロール |
SECURITY_VIEWERロール |
---|---|---|---|---|
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
✔ |
|||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
✔ |
|||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
||||
✔ |
READER_ACCOUNT_USAGE スキーマ¶
READER_USAGE_VIEWER SNOWFLAKE データベースロールには、すべての READER_ACCOUNT_USAGE ビューに対する SELECT 権限が付与されています。リーダーアカウントはクライアントによって作成されるため、 READER_USAGE_VIEWER ロールは、リーダーアカウントの使用をモニターするために使用するロールに付与されることが期待されます。
ビュー |
---|
ORGANIZATION_USAGE スキーマ¶
ORGANIZATION_USAGE_VIEWER、 ORGANIZATION_BILLING_VIEWER、 および ORGANIZATION_ACCOUNTS_VIEWER SNOWFLAKE データベースロールには、共有 SNOWFLAKE データベースで組織の使用法ビューに対する SELECT 権限が付与されます。
ビュー |
ORGANIZATION_BILLING_VIEWERロール |
ORGANIZATION_USAGE_VIEWERロール |
ORGANIZATION_ACCOUNTS_VIEWERロール |
---|---|---|---|
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
|||
✔ |
CORE スキーマ¶
CORE_VIEWER SNOWFLAKE データベースロールは、共有 SNOWFLAKE データベースを含むすべてのSnowflakeアカウントの PUBLIC ロールに付与されます。USAGE 権限は、 CORE スキーマ内にあるすべてのSnowflake定義の関数とバンドルに付与されます。
予算クラス¶
BUDGET_CREATOR Snowflakeデータベースロールには、 SNOWFLAKE.CORE スキーマおよびスキーマ内の BUDGET クラスに対して USAGE 権限が付与されます。この付与により、 BUDGET_CREATOR ロールを持つユーザーは BUDGET クラスのインスタンスを作成できるようになります。
詳細については、 Budgets作成に必要なロールと権限 をご参照ください。
タグオブジェクト¶
CORE_VIEWER データベースロールには、各データ分類 システムタグ に SNOWFLAKE.CORE.PRIVACY_CATEGORY と SNOWFLAKE.CORE.SEMANTIC_CATEGORY の APPLY 権限が付与されます。これらの付与により、 CORE_VIEWER データベースロールが付与されたロールを持つユーザーは、これらのシステムタグを列に割り当てることができるようになります。
詳細については、以下をご参照ください。
ALERT スキーマ¶
ALERT_VIEWER SNOWFLAKE データベースロールには、このスキーマで定義された関数に対する USAGE 権限が付与されます。
ML スキーマ¶
ML_USER SNOWFLAKE データベースロールは、共有 SNOWFLAKE データベースを含むすべてのSnowflakeアカウントで PUBLIC ロールに付与され、顧客が ML 駆動型関数 にアクセスして使用できるようにします。
CORTEX スキーマ¶
CORTEX_USER SNOWFLAKE データベースロールは、顧客がCortex LLM 関数にアクセスできるようにします。初期状態では、このデータベースロールは ACCOUNTADMIN ロールにのみ付与されます。ユーザーが Cortex LLM を使用できるようにするために、ACCOUNTADMIN は、このロールをアカウントロールに伝搬させる必要があります。
SNOWFLAKE データベースの使用¶
管理者は GRANT DATABASE ROLE を使用して SNOWFLAKE データベースロールを別のロールに割り当て、それをユーザーに付与できます。これにより、ユーザーは SNOWFLAKE データベース内にあるビューの特定のサブセットにアクセスできるようになります。
次の例では、 SNOWFLAKE データベースオブジェクトのメタデータを表示するために使用できるロールが作成され、次を実行します。
カスタムロールを作成します。
カスタムロールに OBJECT_VIEWER ロールを付与します。
ユーザーにカスタムロールを付与します。
カスタムロールを作成して付与するには、次を実行します。
オブジェクトメタデータへのアクセス権を付与するために使用される CREATE ROLE を使用して、
CAN_VIEWMD
ロールを作成します。ロールを作成できるのは、USERADMIN システムロール以上のユーザーか、アカウントの CREATE ROLE 権限を持つ別のロールのみです。
CREATE ROLE CAN_VIEWMD COMMENT = 'This role can view metadata per SNOWFLAKE database role definitions';
CAN_VIEWMD ロールに OBJECT_VIEWER ロールを付与します。
OWNERSHIP ロールを持つユーザーのみが SNOWFLAKE データベースロールを付与できます。詳細については、 GRANT DATABASE ROLE をご参照ください。
GRANT DATABASE ROLE OBJECT_VIEWER TO ROLE CAN_VIEWMD;
ユーザー
smith
にロールCAN_VIEWMD
ロールを割り当てます。SECURITYADMIN ロールを持つユーザーのみがユーザーにロールを付与できます。その他のオプションについては、 GRANT ROLE をご参照ください。
GRANT ROLE CAN_VIEWMD TO USER smith;