Attribution de privilèges à d’autres rôles

Snowflake fournit un ensemble de privilèges pour Data Exchange/Data Marketplace qui sont accordés au rôle ACCOUNTADMIN par défaut.

Ces privilèges peuvent être accordés à d’autres rôles (définis par le système ou personnalisés). Ensuite, les utilisateurs avec le rôle peuvent effectuer certaines tâches dans Data Exchange/Data Marketplace.

Dans ce chapitre :

Accorder des privilèges d’administrateur Data Exchange

Par défaut, seul un administrateur de compte (c’est-à-dire l’utilisateur ayant le rôle ACCOUNTADMIN) dans le compte d’administrateur Data Exchange peut gérer un Data Exchange/marché de données qui comprend les tâches suivantes :

  • Ajouter/supprimer des membres

  • Approuver/refuser les demandes d’approbation des listes

  • Approuver/refuser les demandes d’approbation de profil de fournisseur

  • Afficher les catégories

Pour prendre en charge la délégation de ces tâches à d’autres utilisateurs, le privilège IMPORTED PRIVILEGES peut être accordé sur un Data Exchange à d’autres rôles (définis par le système ou personnalisés).

Attribution du privilège IMPORTED PRIVILEGES sur un Data Exchange à un autre rôle

Pour accorder le privilège IMPORTED PRIVILEGES sur un Data Exchange à un rôle, utilisez le rôle ACCOUNTADMIN et la commande GRANT GRANT <privileges> … TO ROLE .

Syntaxe :

grant imported privileges on data exchange <exchange_name> to <role_name>;

Où :

  • <nom_échange> est le nom du Data Exchange.

  • <nom_rôle> est le rôle auquel le privilège est accordé.

Par exemple, accorder des privilèges d’importation sur le Data Exchange mydataexchange au rôle SYSADMIN :

use role accountadmin;

grant imported privileges on data exchange mydataexchange to sysadmin;

Notes sur l’utilisation

  • Ce privilège est accordé au niveau du Data Exchange ; par conséquent, il permet d’effectuer les tâches administratives uniquement pour le Data Exchange sur lequel il a été accordé.

  • Seul un administrateur de compte dans le compte de l’administrateur Data Exchange peut accorder le privilège à un autre rôle.

  • Lorsqu’un rôle a reçu IMPORTED PRIVILEGES sur une base de données créée à partir d’un partage, les appels ultérieurs à la commande SHOW GRANTS listent le privilège comme USAGE et non IMPORTED PRIVILEGES.

  • Seul Snowflake peut effectuer des tâches administratives sur Snowflake Data Marketplace.

Accorder des privilèges de fournisseur à d’autres rôles

Snowflake fournit un ensemble de privilèges au niveau du compte ou de la liste pour effectuer des tâches liées aux listes.

Par défaut, ces privilèges ne sont accordés qu’au rôle ACCOUNTADMIN dans le compte fournisseur de Data Exchange/Data Marketplace, garantissant ainsi que seuls les administrateurs de compte puissent effectuer ces tâches. Cependant, les privilèges peuvent être accordés à d’autres rôles, ce qui permet de déléguer les tâches à d’autres utilisateurs du Data Exchange/Data Marketplace.

Privilège

Type d’objet

Description

Privilège CREATE DATA EXCHANGE LISTING global (dans cette rubrique)

ACCOUNT

Permet de créer une liste ou un profil de fournisseur.

Privilège MODIFY sur une liste Data Exchange (dans cette rubrique)

LISTING

Permet de modifier les propriétés de la liste.

Privilège USAGE sur une liste Data Exchange (dans cette rubrique)

LISTING

Permet d’afficher (c’est-à-dire de voir) une liste.

Privilège OWNERSHIP sur une liste Data Exchange (dans cette rubrique)

LISTING

Permet de transférer la propriété OWNERSHIP d’une liste.

Privilège CREATE SHARE

ACCOUNT

Permet de créer un partage.

Privilège CREATE DATA EXCHANGE LISTING global

Si le privilège CREATE DATA EXCHANGE LISTING est accordé à un rôle, n’importe quel utilisateur ayant le rôle peut créer une liste ou un profil de fournisseur. En tant que créateur et, par conséquent, propriétaire de la liste, le rôle peut également être utilisé pour exécuter toutes les tâches sur la liste, y compris :

  • Créer des listes

  • Modifier les propriétés des listes

  • Afficher les listes

  • Afficher les demandes d’accès à la liste entrantes

  • Rejeter les demandes de listes

  • Soumettre des listes pour approbation/publication des listes

  • Créer et afficher des profils de fournisseur

Le privilège CREATE DATA EXCHANGE LISTING global s’étend à tous les Data Exchanges dont ce compte fait partie. Un rôle avec ce privilège peut créer des listes dans n’importe quel Data Exchange/Data Marketplace dans lequel le compte est un fournisseur.

Le privilège OWNERSHIP peut être transféré à l’aide de Privilège OWNERSHIP sur une liste Data Exchange vers un autre rôle par le rôle propriétaire.

Note

  • Un rôle possède (c’est-à-dire a le privilège OWNERSHIP sur) les listes Data Exchange qu’il crée.

  • Seuls les administrateurs de compte (utilisateurs dotés du rôle ACCOUNTADMIN) peuvent accorder le privilège global CREATE DATA EXCHANGE LISTING à un rôle.

Pour accorder le privilège global CREATE DATA EXCHANGE LISTING à un rôle dans un Data Exchange, utilisez la commande GRANT <privileges> … TO ROLE [WITH GRANT OPTION].

Par exemple :

use role accountadmin;

-- grant the privilege to the SYSADMIN role
grant create data exchange listing on account to role sysadmin;

-- grant the privilege to the SYSADMIN role with grant option
grant create data exchange listing on account to sysadmin with grant option;

Privilège MODIFY sur une liste Data Exchange

Si le privilège MODIFY est accordé à un rôle dans une liste Data Exchange, n’importe quel utilisateur ayant le rôle peut effectuer les tâches suivantes :

  • Modifier les propriétés des listes

  • Afficher une liste

  • Afficher les demandes d’accès à la liste entrantes

  • Soumettre les listes pour approbation/publication de listes

  • Rejeter les demandes de listes

Seul le rôle OWNER de la liste peut accorder ce privilège.

Pour accorder le privilège MODIFY sur une liste Data Exchange à un rôle :

Note

Actuellement, le privilège MODIFY ne peut être accordé que sur une liste Data Exchange dans la nouvelle interface Web Snowflake.

  1. Connectez-vous à l’interface Web de Snowflake en tant que ACCOUNTADMIN.

  2. Accédez à Data » Manage » Listings » Privileges.

  3. Dans la section Modify Listing, cliquez sur Edit.

  4. Ajoutez les rôles requis.

Privilège USAGE sur une liste Data Exchange

Si le privilège USAGE est accordé à un rôle dans une liste Data Exchange, tout utilisateur avec le rôle peut afficher (c’est-à-dire voir) les listes et les demandes de listes entrantes dans Data Exchange/Data Marketplace. Seul le rôle OWNER de la liste peut accorder ce privilège.

Pour accorder le privilège USAGE sur une liste Data Exchange à un rôle :

Note

Actuellement, le privilège USAGE ne peut être accordé que sur une liste Data Exchange dans la nouvelle interface Web Snowflake.

  1. Connectez-vous à la nouvelle interface Web de Snowflake en tant que ACCOUNTADMIN.

  2. Accédez à Data » Manage » Listings » Privileges.

  3. Dans la section View Listing, cliquez sur Edit.

  4. Ajoutez les rôles requis.

Privilège OWNERSHIP sur une liste Data Exchange

Si le privilège OWNERSHIP d’une liste Data Exchange est accordé à un rôle, ce rôle devient le nouveau OWNER de la liste. OWNERSHIP est un type de privilège spécial qui ne peut être accordé que d’un rôle à un autre ; il ne peut être révoqué. Pour plus de détails, voir Contrôle d’accès dans Snowflake.

Important

Lorsque la propriété de la liste est transférée, toutes les autorisations existantes sont révoquées. Tous les rôles auxquels des privilèges ont été accordés perdent immédiatement l’accès à cette liste et leurs privilèges sont révoqués. Le nouveau propriétaire de la liste doit ré-accorder ces privilèges.

Pour accorder le privilège OWNERSHIP sur une liste Data Exchange à un rôle :

Note

Actuellement, le privilège OWNERSHIP ne peut être accordé que sur une liste Data Exchange dans la nouvelle interface Web Snowflake.

  1. Connectez-vous à la nouvelle interface Web de Snowflake en tant que ACCOUNTADMIN.

  2. Accédez à Data » Manage » Listings » Privileges.

  3. Dans la section Ownership, cliquez sur Edit.

  4. Ajoutez les rôles requis.