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 역할

COLUMNS 뷰

COMPLETE_TASK_GRAPHS 뷰

DATABASES 뷰

ELEMENT_TYPES 뷰

FIELDS 뷰

FILE_FORMATS 뷰

FUNCTIONS 뷰

HYBRID_TABLES 뷰

INDEXES 뷰

INDEX_COLUMNS 뷰

OBJECT_DEPENDENCIES 뷰

PIPES 뷰

REFERENTIAL_CONSTRAINTS 뷰

SCHEMATA 뷰

SEQUENCES 뷰

STAGES 뷰

TABLE_CONSTRAINTS 뷰

TABLES 뷰

TAGS 뷰

VIEWS 뷰

AUTOMATIC_CLUSTERING_HISTORY 뷰

CLASS_INSTANCES 뷰

CLASSES 뷰

COPY_HISTORY 뷰

DATA_TRANSFER_HISTORY 뷰

DATABASE_STORAGE_USAGE_HISTORY 뷰

EVENT_USAGE_HISTORY 뷰

EXTERNAL_ACCESS_HISTORY 뷰

HYBRID_TABLE_USAGE_HISTORY 뷰

LOAD_HISTORY 뷰

MATERIALIZED_VIEW_REFRESH_HISTORY 뷰

METERING_DAILY_HISTORY 뷰

METERING_HISTORY 뷰

PIPE_USAGE_HISTORY 뷰

REPLICATION_USAGE_HISTORY 뷰

REPLICATION_GROUP_REFRESH_HISTORY 뷰

REPLICATION_GROUP_USAGE_HISTORY 뷰

SERVICES 뷰

SNOWPARK_CONTAINER_SERVICES_HISTORY 뷰

SEARCH_OPTIMIZATION_HISTORY 뷰

SERVERLESS_TASK_HISTORY 뷰

STAGE_STORAGE_USAGE_HISTORY 뷰

STORAGE_USAGE 뷰

TABLE_STORAGE_METRICS 뷰

TASK_HISTORY 뷰

WAREHOUSE_EVENTS_HISTORY 뷰

WAREHOUSE_LOAD_HISTORY 뷰

WAREHOUSE_METERING_HISTORY 뷰

ACCESS_HISTORY 뷰

AGGREGATE_ACCESS_HISTORY 뷰

AGGREGATE_QUERY_HISTORY 뷰

AGGREGATION_POLICIES 뷰

DATA_CLASSIFICATION_LATEST 뷰

MASKING_POLICIES 뷰

QUERY_ACCELERATION_ELIGIBLE 뷰

QUERY_HISTORY 뷰

POLICY_REFERENCES 뷰

PROJECTION_POLICIES 뷰

ROW_ACCESS_POLICIES 뷰

TAG_REFERENCES 뷰

GRANTS_TO_ROLES 뷰

GRANTS_TO_USERS 뷰

LOGIN_HISTORY 뷰

NETWORK_POLICIES 뷰

NETWORK_RULES 뷰

NETWORK_RULE_REFERENCES 뷰

PASSWORD_POLICIES 뷰

ROLES 뷰

SESSION_POLICIES 뷰

SESSIONS 뷰

USERS 뷰

READER_ACCOUNT_USAGE 스키마

READER_USAGE_VIEWER SNOWFLAKE 데이터베이스 역할에는 모든 READER_ACCOUNT_USAGE 뷰에 대한 SELECT 권한이 부여됩니다. 클라이언트가 독자 계정을 생성하므로 독자 계정 사용 모니터링에 사용되는 역할에 READER_USAGE_VIEWER 역할이 부여될 것으로 예상됩니다.

LOGIN_HISTORY 뷰

QUERY_HISTORY 뷰

RESOURCE_MONITORS 뷰

STORAGE_USAGE 뷰

WAREHOUSE_METERING_HISTORY 뷰

ORGANIZATION_USAGE 스키마

ORGANIZATION_USAGE_VIEWER, ORGANIZATION_BILLING_VIEWER 및 ORGANIZATION_ACCOUNTS_VIEWER SNOWFLAKE 데이터베이스 역할에는 공유 SNOWFLAKE 데이터베이스에서 조직 사용량 뷰에 대한 SELECT 권한이 부여됩니다.

ORGANIZATION_BILLING_VIEWER 역할

ORGANIZATION_USAGE_VIEWER 역할

ORGANIZATION_ACCOUNTS_VIEWER 역할

ACCOUNTS 뷰

CONTRACT_ITEMS 뷰

LISTING_AUTO_FULFILLMENT_USAGE_HISTORY 뷰

RATE_SHEET_DAILY 뷰

REMAINING_BALANCE_DAILY 뷰

USAGE_IN_CURRENCY_DAILY 뷰

MARKETPLACE_DISBURSEMENT_REPORT 뷰

DATA_TRANSFER_DAILY_HISTORY 뷰

DATA_TRANSFER_HISTORY 뷰

DATABASE_STORAGE_USAGE_HISTORY 뷰

AUTOMATIC_CLUSTERING_HISTORY 뷰

MARKETPLACE_PAID_USAGE_DAILY 뷰

MATERIALIZED_VIEW_REFRESH_HISTORY 뷰

METERING_DAILY_HISTORY 뷰

MONETIZED_USAGE_DAILY 뷰

PIPE_USAGE_HISTORY 뷰

QUERY_ACCELERATION_HISTORY 뷰

REPLICATION_GROUP_USAGE_HISTORY 뷰

REPLICATION_USAGE_HISTORY 뷰

SEARCH_OPTIMIZATION_HISTORY 뷰

STAGE_STORAGE_USAGE_HISTORY 뷰

STORAGE_DAILY_HISTORY 뷰

WAREHOUSE_METERING_HISTORY 뷰

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 데이터베이스 오브젝트 메타데이터를 보는 데 사용할 수 있는 역할이 생성되는데, 이 역할은 다음을 수행합니다.

  1. 사용자 지정 역할을 만듭니다.

  2. 사용자 지정 역할에 OBJECT_VIEWER 역할을 부여합니다.

  3. 사용자에게 사용자 지정 역할을 부여합니다.

사용자 지정 역할을 생성하고 부여하려면 다음을 수행하십시오.

  1. 오브젝트 메타데이터에 대한 액세스 권한을 부여하는 데 사용할 CREATE ROLE 을 사용하여 CAN_VIEWMD 역할을 만듭니다.

    USERADMIN 이상의 시스템 역할을 가진 사용자 또는 계정에 대해 CREATE ROLE 권한이 있는 또 다른 역할을 가진 사용자만 역할을 만들 수 있습니다.

    CREATE ROLE CAN_VIEWMD COMMENT = 'This role can view metadata per SNOWFLAKE database role definitions';
    
    Copy
  2. CAN_VIEWMD 역할에 OBJECT_VIEWER 역할을 부여합니다.

    OWNERSHIP 역할이 있는 사용자만 SNOWFLAKE 데이터베이스 역할을 부여할 수 있습니다. 자세한 내용은 GRANT DATABASE ROLE 섹션을 참조하십시오.

    GRANT DATABASE ROLE OBJECT_VIEWER TO ROLE CAN_VIEWMD;
    
    Copy
  3. smith 사용자에게 CAN_VIEWMD 역할을 할당합니다.

    SECURITYADMIN 역할을 가진 사용자만 사용자에게 역할을 부여할 수 있습니다. 추가 옵션은 GRANT ROLE 섹션을 참조하십시오.

    GRANT ROLE CAN_VIEWMD TO USER smith;
    
    Copy