SNOWFLAKE 데이터베이스 역할¶
계정이 프로비저닝되면 SNOWFLAKE 데이터베이스를 자동으로 가져옵니다. 데이터베이스는 Secure Data Sharing 을 사용하여 조직 및 계정에 대한 오브젝트 메타데이터 및 기타 사용 메트릭을 제공하는 Snowflake의 예입니다.
SNOWFLAKE 데이터베이스의 스키마 오브젝트에 대한 액세스는 다양한 데이터베이스 역할 에 의해 제어됩니다. 다음 섹션에서는 각 SNOWFLAKE 데이터베이스 역할, 그와 관련된 권한, 역할이 액세스 권한을 부여하는 관련 스키마 오브젝트에 대해 설명합니다.
이 항목의 내용:
ACCOUNT_USAGE 스키마¶
ACCOUNT_USAGE 스키마에는 네 가지 정의된 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 스키마¶
공유 SNOWFLAKE 데이터베이스를 포함하는 모든 Snowflake 계정의 PUBLIC 역할에 CORE_VIEWER SNOWFLAKE 데이터베이스 역할이 부여됩니다. CORE 스키마의 모든 Snowflake 정의 함수와 번들에 USAGE 권한이 부여됩니다.
Budget 클래스¶
BUDGET_CREATOR Snowflake 데이터베이스 역할에는 SNOWFLAKE.CORE 스키마와 스키마의 BUDGET 클래스에 대한 USAGE 권한이 부여됩니다. 이 권한 부여를 통해 BUDGET_CREATOR 역할을 가진 사용자는 BUDGET 클래스의 인스턴스를 생성할 수 있습니다.
자세한 내용은 예산 생성에 필요한 역할 및 권한 섹션을 참조하십시오.
오브젝트에 태그 지정하기¶
CORE_VIEWER 데이터베이스 역할에는 각 Data Classification 시스템 태그 에 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 Functions에 액세스할 수 있습니다. 처음에 이 데이터베이스 역할은 ACCOUNTADMIN 역할에만 부여됩니다. 사용자가 Cortex LLM Functions 를 사용할 수 있도록 하기 위해 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;