Rôles des bases de données SNOWFLAKE

Lorsqu’un compte est provisionné, la base de données SNOWFLAKE est automatiquement importée. La base de données est un exemple d’utilisation par Snowflake de Secure Data Sharing pour fournir des métadonnées d’objet et d’autres mesures d’utilisation pour votre organisation et vos comptes.

L’accès aux objets du schéma de la base de données SNOWFLAKE est contrôlé par différents rôles de base de données. Les sections suivantes décrivent chaque rôle de base de données SNOWFLAKE, les privilèges qui lui sont associés et les objets de schéma associés auxquels le rôle donne accès.

Schéma ACCOUNT_USAGE

Les schémas ACCOUNT_USAGE ont quatre rôles de base de données SNOWFLAKE définis, chacun bénéficiant du privilège SELECT sur des vues spécifiques.

Rôle

Objectif et description

OBJECT_VIEWER

Le rôle OBJECT_VIEWER permet de visualiser les métadonnées des objets.

USAGE_VIEWER

Le rôle USAGE_VIEWER offre une visibilité sur les informations historiques d’utilisation.

GOVERNANCE_VIEWER

Le rôle deGOVERNANCE_VIEWER permet de visualiser les informations relatives à la gouvernance des données.

SECURITY_VIEWER

Le rôle SECURITY_VIEWER permet de visualiser les informations relatives à la sécurité.

Rôle de la base de données requis pour accéder aux vues ACCOUNT_USAGE

Les rôles OBJECT_VIEWER, USAGE_VIEWER, GOVERNANCE_VIEWER, et SECURITY_VIEWERont le privilège SELECT pour interroger les vues Account Usage dans la base de données partagée SNOWFLAKE. Utilisez le tableau suivant pour déterminer quel rôle de base de données a accès à une vue.

Vue

Rôle de la base de données

Vue ACCESS_HISTORY

GOVERNANCE_VIEWER

Vue AGGREGATE_ACCESS_HISTORY

GOVERNANCE_VIEWER

Vue AGGREGATE_QUERY_HISTORY

GOVERNANCE_VIEWER

Vue AGGREGATION_POLICIES

GOVERNANCE_VIEWER

Vue ANOMALIES_DAILY

USAGE_VIEWER

Vue APPLICATION_DAILY_USAGE_HISTORY

USAGE_VIEWER

Vue AUTOMATIC_CLUSTERING_HISTORY

USAGE_VIEWER

Vue BLOCK_STORAGE_HISTORY

USAGE_VIEWER

Vue BLOCK_STORAGE_SNAPSHOTS

OBJECT_VIEWER

Vue CLASS_INSTANCES

USAGE_VIEWER

Vue CLASSES

USAGE_VIEWER

Vue COLUMN_QUERY_PRUNING_HISTORY

USAGE_VIEWER

Vue COLUMNS

OBJECT_VIEWER

Vue COMPLETE_TASK_GRAPHS

OBJECT_VIEWER

Vue CONTACT_REFERENCES

GOVERNANCE_VIEWER

Vue CONTACTS

GOVERNANCE_VIEWER

Vue COPY_FILES_HISTORY

USAGE_VIEWER

Vue COPY_HISTORY

USAGE_VIEWER

Vue CORTEX_ANALYST_USAGE_HISTORY

USAGE_VIEWER

Vue CORTEX_DOCUMENT_PROCESSING_USAGE_HISTORY

USAGE_VIEWER

Vue CORTEX_FINE_TUNING_USAGE_HISTORY

USAGE_VIEWER

Vue CORTEX_FUNCTIONS_QUERY_USAGE_HISTORY

USAGE_VIEWER

Vue CORTEX_FUNCTIONS_USAGE_HISTORY

USAGE_VIEWER

Vue CORTEX_SEARCH_DAILY_USAGE_HISTORY

USAGE_VIEWER

Vue CORTEX_SEARCH_SERVING_USAGE_HISTORY

USAGE_VIEWER

Vue CREDENTIALS

SECURITY_VIEWER

Vue DATA_CLASSIFICATION_LATEST

GOVERNANCE_VIEWER

Vue DATA_METRIC_FUNCTION_EXPECTATIONS

USAGE_VIEWER ou GOVERNANCE_VIEWER

Vue DATA_METRIC_FUNCTION_REFERENCES

USAGE_VIEWER ou GOVERNANCE_VIEWER

Vue DATA_QUALITY_MONITORING_USAGE_HISTORY

USAGE_VIEWER

Vue DATA_TRANSFER_HISTORY

USAGE_VIEWER

Vue DATABASE_STORAGE_USAGE_HISTORY

USAGE_VIEWER

Vue DATABASES

OBJECT_VIEWER

Vue DOCUMENT_AI_USAGE_HISTORY

USAGE_VIEWER

Vue DYNAMIC_TABLE_REFRESH_HISTORY

USAGE_VIEWER

Vue ELEMENT_TYPES

OBJECT_VIEWER

Vue EVENT_USAGE_HISTORY

USAGE_VIEWER

Vue EXTERNAL_ACCESS_HISTORY

USAGE_VIEWER

Vue FIELDS

OBJECT_VIEWER

Vue FILE_FORMATS

OBJECT_VIEWER

Vue FUNCTIONS

OBJECT_VIEWER

Vue GRANTS_TO_ROLES

SECURITY_VIEWER

Vue GRANTS_TO_USERS

SECURITY_VIEWER

Vue HYBRID_TABLE_USAGE_HISTORY

USAGE_VIEWER

Vue HYBRID_TABLES

OBJECT_VIEWER

Vue INDEX_COLUMNS

OBJECT_VIEWER

Vue INDEXES

OBJECT_VIEWER

Vue INTERNAL_DATA_TRANSFER_HISTORY

USAGE_VIEWER

Vue JOIN_POLICIES

GOVERNANCE_VIEWER

Vue LOAD_HISTORY

USAGE_VIEWER

Vue LOGIN_HISTORY

SECURITY_VIEWER

Vue MASKING_POLICIES

GOVERNANCE_VIEWER

Vue MATERIALIZED_VIEW_REFRESH_HISTORY

USAGE_VIEWER

Vue METERING_DAILY_HISTORY

USAGE_VIEWER

Vue METERING_HISTORY

USAGE_VIEWER

Vue NETWORK_POLICIES

SECURITY_VIEWER

Vue NETWORK_RULE_REFERENCES

SECURITY_VIEWER

Vue NETWORK_RULES

SECURITY_VIEWER

Vue NOTEBOOKS_CONTAINER_RUNTIME_HISTORY

USAGE_VIEWER

Vue OBJECT_ACCESS_REQUEST_HISTORY

OBJECT_VIEWER

Vue OBJECT_DEPENDENCIES

OBJECT_VIEWER

Vue OPENFLOW_USAGE_HISTORY

USAGE_VIEWER

Vue OUTBOUND_PRIVATELINK_ENDPOINTS

SECURITY_VIEWER

Vue PASSWORD_POLICIES

SECURITY_VIEWER

Vue PIPE_USAGE_HISTORY

USAGE_VIEWER

Vue PIPES

OBJECT_VIEWER

Vue POLICY_REFERENCES

GOVERNANCE_VIEWER, SECURITY_VIEWER

Vue PRIVACY_BUDGETS

GOVERNANCE_VIEWER

Vue PRIVACY_POLICIES

GOVERNANCE_VIEWER

Vue PROCEDURES

OBJECT_VIEWER

Vue PROJECTION_POLICIES

GOVERNANCE_VIEWER

Vue QUERY_ACCELERATION_ELIGIBLE

GOVERNANCE_VIEWER

Vue QUERY_ATTRIBUTION_HISTORY

USAGE_VIEWER, GOVERNANCE_VIEWER

Vue QUERY_HISTORY

GOVERNANCE_VIEWER

Vue QUERY_INSIGHTS

GOVERNANCE_VIEWER

Vue REFERENTIAL_CONSTRAINTS

OBJECT_VIEWER

Vue REPLICATION_GROUP_REFRESH_HISTORY

USAGE_VIEWER

Vue REPLICATION_GROUP_USAGE_HISTORY

USAGE_VIEWER

Vue REPLICATION_GROUPS

OBJECT_VIEWER

Vue REPLICATION_USAGE_HISTORY

USAGE_VIEWER

Vue ROLES

SECURITY_VIEWER

Vue ROW_ACCESS_POLICIES

GOVERNANCE_VIEWER

Vue SCHEMATA

OBJECT_VIEWER

Vue SEARCH_OPTIMIZATION_BENEFITS

USAGE_VIEWER

Vue SEARCH_OPTIMIZATION_HISTORY

USAGE_VIEWER

Vue SECRETS

SECURITY_VIEWER

Vue SEMANTIC_DIMENSIONS

OBJECT_VIEWER

Vue SEMANTIC_FACTS

OBJECT_VIEWER

Vue SEMANTIC_METRICS

OBJECT_VIEWER

Vue SEMANTIC_RELATIONSHIPS

OBJECT_VIEWER

Vue SEMANTIC_TABLES

OBJECT_VIEWER

Vue SEMANTIC_VIEWS

OBJECT_VIEWER

Vue SEQUENCES

OBJECT_VIEWER

Vue SERVERLESS_ALERT_HISTORY

USAGE_VIEWER

Vue SERVERLESS_TASK_HISTORY

USAGE_VIEWER

Vue SERVICES

OBJECT_VIEWER

Vue SESSION_POLICIES

SECURITY_VIEWER

Vue SESSIONS

SECURITY_VIEWER

Vue SNAPSHOT_OPERATION_HISTORY

OBJECT_VIEWER

Vue SNAPSHOT_POLICIES

OBJECT_VIEWER

Vue SNAPSHOT_SETS

OBJECT_VIEWER

Vue SNAPSHOT_STORAGE_USAGE

OBJECT_VIEWER

Vue SNAPSHOTS

OBJECT_VIEWER

Vue SNOWPARK_CONTAINER_SERVICES_HISTORY

USAGE_VIEWER

Vue SNOWPIPE_STREAMING_CHANNEL_HISTORY

USAGE_VIEWER

Vue STAGE_STORAGE_USAGE_HISTORY

USAGE_VIEWER

Vue STAGES

OBJECT_VIEWER

Vue STORAGE_USAGE

USAGE_VIEWER

Vue TABLE_CONSTRAINTS

OBJECT_VIEWER

Vue TABLE_DML_HISTORY

USAGE_VIEWER

Vue TABLE_PRUNING_HISTORY

USAGE_VIEWER

Vue TABLE_QUERY_PRUNING_HISTORY

USAGE_VIEWER

Vue TABLE_STORAGE_METRICS

USAGE_VIEWER

Vue TABLES

OBJECT_VIEWER

Vue TAG_REFERENCES

GOVERNANCE_VIEWER

Vue TAGS

OBJECT_VIEWER ou GOVERNANCE_VIEWER

Vue TASK_HISTORY

USAGE_VIEWER

Vue USERS

SECURITY_VIEWER

Vue VIEWS

OBJECT_VIEWER

Vue WAREHOUSE_EVENTS_HISTORY

USAGE_VIEWER

Vue WAREHOUSE_LOAD_HISTORY

USAGE_VIEWER

Vue WAREHOUSE_METERING_HISTORY

USAGE_VIEWER

Schéma READER_ACCOUNT_USAGE

Le rôle de base de données READER_USAGE_VIEWER SNOWFLAKE bénéficie du privilège SELECT sur toutes les vues READER_ACCOUNT_USAGE. Les comptes de lecteur étant créés par les clients, le rôle READER_USAGE_VIEWER est censé être accordé aux rôles utilisés pour contrôler l’utilisation des comptes de lecteur.

Vue

Vue LOGIN_HISTORY

Vue QUERY_HISTORY

Vue RESOURCE_MONITORS

Vue STORAGE_USAGE

Vue WAREHOUSE_METERING_HISTORY

Schéma ORGANIZATION_USAGE

Les rôles de base de données ORGANIZATION_USAGE_VIEWER, ORGANIZATION_BILLING_VIEWER et ORGANIZATION_ACCOUNTS_VIEWER de SNOWFLAKE se voient accorder le privilège SELECT pour trouver les vues Utilisation de l’organisation dans la base de données partagée de SNOWFLAKE.

Vue

Rôle ORGANIZATION_BILLING_VIEWER

Rôle ORGANIZATION_USAGE_VIEWER

Rôle ORGANIZATION_ACCOUNTS_VIEWER

Vue ACCOUNTS

Vue ANOMALIES_IN_CURRENCY_DAILY

Vue CONTRACT_ITEMS

Vue LISTING_AUTO_FULFILLMENT_USAGE_HISTORY

Vue RATE_SHEET_DAILY

Vue REMAINING_BALANCE_DAILY

Vue USAGE_IN_CURRENCY_DAILY

Vue MARKETPLACE_DISBURSEMENT_REPORT

Vue DATA_TRANSFER_DAILY_HISTORY

Vue DATA_TRANSFER_HISTORY

Vue DATABASE_STORAGE_USAGE_HISTORY

Vue AUTOMATIC_CLUSTERING_HISTORY

Vue MARKETPLACE_PAID_USAGE_DAILY

Vue MATERIALIZED_VIEW_REFRESH_HISTORY

Vue METERING_DAILY_HISTORY

Vue MONETIZED_USAGE_DAILY

Vue PIPE_USAGE_HISTORY

Vue QUERY_ACCELERATION_HISTORY

Vue REPLICATION_GROUP_USAGE_HISTORY

Vue REPLICATION_USAGE_HISTORY

Vue SEARCH_OPTIMIZATION_HISTORY

Vue STAGE_STORAGE_USAGE_HISTORY

Vue STORAGE_DAILY_HISTORY

Vue WAREHOUSE_METERING_HISTORY

Schéma CORE

Le rôle de base de données CORE_VIEWER SNOWFLAKE est accordé au rôle PUBLIC dans tous les comptes Snowflake contenant une base de données SNOWFLAKE partagée. Le privilège USAGE est accordé à toutes les fonctions et toutes les versions définies par Snowflake dans le schéma CORE.

Classe de budgets

Le rôle de base de données Snowflake BUDGET_CREATOR bénéficie du privilège USAGE sur le schéma SNOWFLAKE.CORE et la classe BUDGET du schéma. Cette autorisation permet aux utilisateurs ayant le rôle BUDGET_CREATOR de créer des instances de la classe BUDGET.

Pour plus d’informations, voir Créer un rôle personnalisé pour créer des budgets.

Objets de balises

Le rôle de base de données CORE_VIEWER bénéficie du privilège APPLY pour chaque balise du système de classification des données : SNOWFLAKE.CORE.PRIVACY_CATEGORY et SNOWFLAKE.CORE.SEMANTIC_CATEGORY. Ces attributions permettent aux utilisateurs ayant le rôle de base de données CORE_VIEWER d’attribuer ces balises système à des colonnes.

Pour plus de détails, voir :

Schéma ALERT

Le rôle de base de données ALERT_VIEWER SNOWFLAKE bénéficie du privilège USAGE sur les fonctions définies dans ce schéma.

Schéma ML

Le rôle de base de données ML_USER SNOWFLAKE est accordé au rôle PUBLIC dans tous les comptes Snowflake qui contiennent une base de données SNOWFLAKE partagée. Il permet aux clients d’accéder aux fonctions ML et de les utiliser.

Schéma MONITORING

Le rôle de base de données MONITORING_VIEWER a le privilège SELECT sur toutes les vues dans le schéma MONITORING.

Le rôle de base de données MONITORING_VIEWER est accordé au rôle PUBLIC dans tous les comptes Snowflake contenant une base de données SNOWFLAKE partagée.

Schéma CORTEX

Par défaut, le rôle CORTEX_USER est accordé au rôle PUBLIC. Le rôle PUBLIC est automatiquement accordé à tous les utilisateurs et rôles, de façon à permettre à tous les utilisateurs de votre compte d’utiliser les fonctions de Snowflake Cortex LLM.

Si vous ne souhaitez pas que tous les utilisateurs disposent de ce privilège, vous pouvez révoquer l’accès au rôle PUBLIC et accorder l’accès à des rôles spécifiques. Pour plus de détails, voir Fonctions Cortex LLM nécessitant des privilèges.

Rôle de base de données SNOWFLAKE.CLASSIFICATION_ADMIN

Le rôle de base de données SNOWFLAKE.CLASSIFICATION_ADMIN permet à un ingénieur de données ou à un gestionnaire de créer une instance de la classe CLASSIFICATION_PROFILE. Un profil de classification est utilisé pour mettre en œuvre la classification automatique des données sensibles.

Rôle de base de données SNOWFLAKE.COPILOT_USER

Le rôle de base de données SNOWFLAKECOPILOT_USER permet aux clients d’accéder aux fonctions Snowflake Copilot. Initialement, ce rôle de base de données n’est accordé qu’au rôle PUBLIC. Le rôle PUBLIC est automatiquement accordé à tous les utilisateurs et rôles, de façon à permettre à tous les utilisateurs de votre compte d’utiliser Snowflake Copilot. Si vous souhaitez limiter l’accès aux fonctionnalités Snowflake Copilot, vous pouvez révoquer l’accès du rôle PUBLIC et accorder l’accès à des rôles spécifiques. Pour plus de détails, voir Exigences en matière de contrôle d’accès.

À l’aide des rôles de base de données SNOWFLAKE

Les administrateurs peuvent utiliser le GRANT DATABASE ROLE pour attribuer un rôle de base de données SNOWFLAKE à un autre rôle, qui peut ensuite être accordé à un utilisateur. Cela permettrait à l’utilisateur d’accéder à un sous-ensemble spécifique de vues dans la base de données SNOWFLAKE.

Dans l’exemple suivant, un rôle est créé qui peut être utilisé pour visualiser les métadonnées d’objets de base de données SNOWFLAKE et fait ce qui suit :

  1. Crée un rôle personnalisé.

  2. Attribue le rôle OBJECT_VIEWER au rôle personnalisé.

  3. Attribue le rôle personnalisé à un utilisateur.

Pour créer et accorder le rôle personnalisé, procédez comme suit :

  1. Créez le rôle CAN_VIEWMD en utilisant CREATE ROLE qui sera utilisé pour accorder l’accès aux métadonnées d’objets.

    Seuls les utilisateurs avec le rôle système USERADMIN ou un rôle supérieur, ou un autre rôle ayant le privilège CREATE ROLE sur le compte, peuvent créer des rôles.

    CREATE ROLE CAN_VIEWMD COMMENT = 'This role can view metadata per SNOWFLAKE database role definitions';
    
    Copy
  2. Attribuez le rôle OBJECT_VIEWER au rôle CAN_VIEWMD.

    Seuls les utilisateurs ayant le rôle OWNERSHIP peuvent accorder des rôles de base de données SNOWFLAKE. Pour plus d’informations, reportez-vous à GRANT DATABASE ROLE.

    GRANT DATABASE ROLE OBJECT_VIEWER TO ROLE CAN_VIEWMD;
    
    Copy
  3. Attribuez le rôle CAN_VIEWMD à l’utilisateur smith.

    Seuls les utilisateurs ayant le rôle SECURITYADMIN peuvent accorder des rôles à des utilisateurs. Pour des options supplémentaires, reportez-vous à GRANT ROLE.

    GRANT ROLE CAN_VIEWMD TO USER smith;
    
    Copy