Funções de banco de dados SNOWFLAKE

Quando uma conta é provisionada, o banco de dados SNOWFLAKE é automaticamente importado. O banco de dados é um exemplo do Snowflake usando Secure Data Sharing para fornecer metadados de objetos e outras métricas de uso para sua organização e contas.

O acesso aos objetos de esquema no banco de dados SNOWFLAKE é controlado por diferentes funções do banco de dados. As seções seguintes descrevem cada função do banco de dados SNOWFLAKE, seus privilégios associados e os objetos de esquema associados aos quais a função concede o acesso.

Neste tópico:

Esquema ACCOUNT_USAGE

Os esquemas ACCOUNT_USAGE têm quatro funções de banco de dados SNOWFLAKE definidas, cada uma concedendo o privilégio SELECT em exibições específicas.

Função

Objetivo e descrição

OBJECT_VIEWER

A função OBJECT_VIEWER dá visibilidade aos metadados do objeto.

USAGE_VIEWER

A função USAGE_VIEWER dá visibilidade às informações históricas de uso.

GOVERNANCE_VIEWER

A função GOVERNANCE_VIEWER dá visibilidade às informações relacionadas às políticas.

SECURITY_VIEWER

A função SECURITY_VIEWER dá visibilidade às informações baseadas em segurança.

Exibições do ACCOUNT_USAGE por função do banco de dados

As funções OBJECT_VIEWER, USAGE_VIEWER, GOVERNANCE_VIEWER e SECURITY_VIEWER têm o privilégio SELECT de consultar as exibições de Account Usage no banco de dados compartilhado SNOWFLAKE.

Uma marca de verificação (ou seja, ✔) indica que a função tem o privilégio SELECT na exibição.

Exibição

Função OBJECT_VIEWER

Função USAGE_VIEWER

Função GOVERNANCE_VIEWER

Função SECURITY_VIEWER

Exibição COLUMNS

Exibição COMPLETE_TASK_GRAPHS

Exibição DATABASES

Exibição ELEMENT_TYPES

Exibição FIELDS

Exibição FILE_FORMATS

Exibição FUNCTIONS

Exibição OBJECT_DEPENDENCIES

Exibição PIPES

Exibição REFERENTIAL_CONSTRAINTS

Exibição SCHEMATA

Exibição SEQUENCES

Exibição STAGES

Exibição TABLE_CONSTRAINTS

Exibição TABLES

Exibição TAGS

Exibição VIEWS

Exibição AUTOMATIC_CLUSTERING_HISTORY

Exibição CLASS_INSTANCES

Exibição CLASSES

Exibição COPY_HISTORY

Exibição DATA_TRANSFER_HISTORY

Exibição DATABASE_STORAGE_USAGE_HISTORY

Exibição EVENT_USAGE_HISTORY

Exibição EXTERNAL_ACCESS_HISTORY

Exibição LOAD_HISTORY

Exibição MATERIALIZED_VIEW_REFRESH_HISTORY

Exibição METERING_DAILY_HISTORY

Exibição METERING_HISTORY

Exibição PIPE_USAGE_HISTORY

Exibição REPLICATION_USAGE_HISTORY

Exibição REPLICATION_GROUP_REFRESH_HISTORY

Exibição REPLICATION_GROUP_USAGE_HISTORY

Exibição SERVICES

Exibição SNOWPARK_CONTAINER_SERVICES_HISTORY

Exibição SEARCH_OPTIMIZATION_HISTORY

Exibição SERVERLESS_TASK_HISTORY

Exibição STAGE_STORAGE_USAGE_HISTORY

Exibição STORAGE_USAGE

Exibição TABLE_STORAGE_METRICS

Exibição TASK_HISTORY

Exibição WAREHOUSE_EVENTS_HISTORY

Exibição WAREHOUSE_LOAD_HISTORY

Exibição WAREHOUSE_METERING_HISTORY

Exibição MASKING_POLICIES

Exibição QUERY_ACCELERATION_ELIGIBLE

Exibição QUERY_HISTORY

Exibição AGGREGATE_QUERY_HISTORY

Exibição POLICY_REFERENCES

Exibição ROW_ACCESS_POLICIES

Exibição TAG_REFERENCES

Exibição ACCESS_HISTORY

Exibição GRANTS_TO_ROLES

Exibição GRANTS_TO_USERS

Exibição LOGIN_HISTORY

Exibição PASSWORD_POLICIES

Exibição ROLES

Exibição SESSION_POLICIES

Exibição SESSIONS

Exibição USERS

Esquema READER_ACCOUNT_USAGE

A função READER_USAGE_VIEWER SNOWFLAKE do banco de dados recebe o privilégio SELECT em todas as exibições READER_ACCOUNT_USAGE. Como as contas de leitores são criadas pelos clientes, espera-se que a função READER_USAGE_VIEWER seja concedida às funções usadas para monitorar o uso das contas de leitores.

Exibição

Exibição LOGIN_HISTORY

Exibição QUERY_HISTORY

Exibição RESOURCE_MONITORS

Exibição STORAGE_USAGE

Exibição WAREHOUSE_METERING_HISTORY

Esquema CORE

A função CORE_VIEWER SNOWFLAKE do banco de dados é concedida à função PUBLIC em todas as contas Snowflake contendo um banco de dados SNOWFLAKE compartilhado. O privilégio USAGE é concedido a todas as funções e pacotes definidos pelo Snowflake no esquema CORE.

Classe de orçamento

A função de banco de dados BUDGET_CREATOR Snowflake recebe o privilégio USAGE no esquema SNOWFLAKE.CORE e a classe BUDGET no esquema. Esta concessão permite que usuários com a função BUDGET_CREATOR criem instâncias da classe BUDGET.

Para obter mais informações, consulte Funções e privilégios necessários para criar orçamentos.

Marcação de objetos

A função de banco de dados Snowflake GOVERNANCE_ADMIN é recebe o privilégio APPLY sobre as tags de sistema PRIVACY_CATEGORY e SEMANTIC_CATEGORY (por exemplo, apply on tag privacy_category to role governance_admin). Esta concessão permite aos usuários com a função GOVERNANCE_ADMIN aplicar estas tags nos objetos que o GOVERNANCE_ADMIN possui (ou seja, com o privilégio OWNERSHIP sobre o objeto).

Para obter mais informações, consulte:

Esquema ALERT

A função ALERT_VIEWER SNOWFLAKE do banco de dados recebe o privilégio USAGE nas funções definidas neste esquema.

Esquema ML

A função de banco de dados ML_USER SNOWFLAKE é concedida à função PUBLIC em todas as contas Snowflake que contêm um banco de dados SNOWFLAKE compartilhado e permite que os clientes acessem e usem funções baseadas em ML.

Uso das funções de banco de dados SNOWFLAKE

Os administradores podem usar o GRANT DATABASE ROLE para atribuir uma função de banco de dados SNOWFLAKE a outra função, que pode então ser concedida a um usuário. Isto permitiria ao usuário acessar um subconjunto específico de exibições no banco de dados SNOWFLAKE.

No exemplo a seguir é criada uma função que pode ser usada para visualizar metadados de objetos de banco de dados SNOWFLAKE, e faz o seguinte:

  1. Cria uma função personalizada.

  2. Concede a função OBJECT_VIEWER à função personalizada.

  3. Concede a função personalizada a um usuário.

Para criar e conceder a função personalizada, faça o seguinte:

  1. Crie a função CAN_VIEWMD, usando CREATE ROLE que será usada para conceder acesso aos metadados dos objetos.

    Somente usuários com a função do sistema USERADMIN ou superior, ou outra função com o privilégio CREATE ROLE para a conta podem criar funções.

    CREATE ROLE CAN_VIEWMD COMMENT = 'This role can view metadata per SNOWFLAKE database role definitions';
    
    Copy
  2. Concede a função OBJECT_VIEWER à função CAN_VIEWMD.

    Somente usuários com a função OWNERSHIP podem conceder funções de banco de dados SNOWFLAKE. Para obter informações adicionais, consulte GRANT DATABASE ROLE.

    GRANT DATABASE ROLE OBJECT_VIEWER TO ROLE CAN_VIEWMD;
    
    Copy
  3. Atribua a função CAN_VIEWMD ao usuário smith.

    Somente usuários com a função SECURITYADMIN podem conceder funções aos usuários. Para opções adicionais, consulte GRANT ROLE.

    GRANT ROLE CAN_VIEWMD TO USER smith;
    
    Copy