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

Snowflake fournit un ensemble de privilèges pour Snowflake Marketplace ou un Data Exchange.

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 Snowflake Marketplace ou un Data Exchange.

Dans ce chapitre :

Accord de privilèges d’administrateur dans un 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 qui comprend les tâches suivantes :

  • Ajouter/supprimer des membres

  • Approuver/refuser les demandes d’approbation des annonces

  • 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 à d’autres rôles

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

Note

Le paramètre WITH GRANT OPTION ne prend pas en charge le privilège IMPORTED PRIVILEGES.

Syntaxe :

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

Où :

  • <nom_échange> est le nom d’un 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;
Copy

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.

  • Ce privilège est destiné à un Data Exchange. Dans Snowflake Marketplace, seuls des administrateurs Snowflake peuvent effectuer des tâches administratives.

Accord de privilèges de fournisseur pour d’autres rôles sur Snowflake Marketplace ou un Data Exchange

Snowflake fournit un ensemble de privilèges de compte, de profil de fournisseur et au niveau de l’annonce pour l’exécution de tâches disponibles aux fournisseurs de données sur Snowflake Marketplace ou un Data Exchange.

Ces privilèges peuvent être accordés à d’autres rôles, ce qui permet de déléguer les tâches à d’autres utilisateurs.

Privilège

Type d’objet

Peut être accordé par

Description

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

ACCOUNT

ACCOUNTADMIN

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

Privilège CREATE SHARE (dans cette rubrique)

ACCOUNT

ACCOUNTADMIN

Permet de créer un partage.

Privilège IMPORT SHARE (dans cette rubrique)

ACCOUNT

ACCOUNTADMIN

Permet de visualiser un partage entrant partagé avec le compte et de créer une base de données à partir de ce partage.

Privilège MODIFY sur une annonce (dans cette rubrique)

LISTING

Propriétaire de l’annonce

Permet de modifier les propriétés de l’annonce.

Privilège USAGE sur une annonce (dans cette rubrique)

LISTING

Propriétaire de l’annonce

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

Privilège OWNERSHIP sur une annonce (dans cette rubrique)

LISTING

Propriétaire de l’annonce

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

Privilège MODIFY sur un profil de fournisseur (dans cette rubrique)

PROVIDER PROFILE

Propriétaire du profil

Permet de modifier les propriétés pour un profil de fournisseur.

Privilège OWNERSHIP sur un profil de fournisseur (dans cette rubrique)

PROVIDER PROFILE

Propriétaire du profil

Transfert la propriété OWNERSHIP d’un profil de fournisseur.

Privilèges au niveau du compte

Snowflake fournit les privilèges suivants pour travailler avec des partages, des annonces de données et des profils de fournisseurs au niveau du compte dans Snowflake Marketplace ou un Data Exchange :

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 annonce ou un profil de fournisseur. En tant que créateur et, par conséquent, propriétaire de l’annonce, le rôle peut être utilisé pour exécuter toutes les tâches sur l’annonce, y compris :

  • Créer des annonces

  • Modifier les propriétés des annonces

  • Afficher les annonces

  • Afficher les demandes d’accès à l’annonce entrantes

  • Rejeter les demandes d’annonces

  • Soumettre des annonces pour approbation/publication des annonces

  • Créer et afficher des profils de fournisseur

Si un compte est un fournisseur dans plusieurs Data Exchange, un rôle avec le privilège global CREATE DATA EXCHANGE LISTING peut créer des annonces dans chacun de ces Data Exchange.

Note

  • Un rôle qui crée une annonce devient le propriétaire de l’annonce. Le privilège OWNERSHIP peut être transféré à l’aide de Privilège OWNERSHIP sur une annonce vers un autre rôle par le rôle propriétaire.

  • 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 <privilèges> [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;
Copy

Privilège CREATE SHARE

Si le privilège CREATE SHARE est accordé à un rôle, n’importe quel utilisateur ayant le rôle peut créer un partage. En tant que créateur et, par conséquent, propriétaire du partage, le rôle peut également être utilisé pour exécuter toutes les tâches sur le partage, y compris :

  • Octroyer ou révoquer des privilèges sur les objets de/vers le partage.

  • Ajouter ou supprimer des comptes de consommateur de/vers le partage.

Pour plus d’informations, voir Capacité des rôles non ACCOUNTADMIN à effectuer des tâches de partage de données.

Privilège IMPORT SHARE

Si le privilège IMPORT SHARE est accordé à un rôle, n’importe quel utilisateur ayant le rôle peut effectuer les tâches suivantes :

  • Voir tous les partages INBOUND (partagés par des comptes de fournisseur) et créer des bases de données pour les partages.

  • Voir tous les partages OUTBOUND possédés par le rôle.

Pour plus d’informations, voir Capacité des rôles non ACCOUNTADMIN à effectuer des tâches de partage de données.

Privilèges au niveau de l’annonce

Snowflake fournit les privilèges suivants pour les annonces de données. Ces privilèges peuvent être accordés par un propriétaire d’annonce (un utilisateur ayant le privilège OWNERSHIP) dans Snowflake Marketplace ou un Data Exchange.

Privilège MODIFY sur une annonce

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

  • Modifier les propriétés des annonces

  • Afficher une annonce

  • Afficher les demandes d’accès à l’annonce entrantes

  • Soumettre les annonces pour approbation/publication d’annonces

  • Rejeter les demandes d’annonces

Seul le rôle OWNER de l’annonce peut accorder ce privilège. Le privilège MODIFY ne peut être accordé que sur une annonce dans Snowsight, l’interface Web Snowflake.

Pour accorder le privilège MODIFY sur une annonce dans Snowflake Marketplace :

  1. Connectez-vous à Snowsight.

  2. Accédez à Data » Provider Studio.

  3. Sélectionnez l’onglet Listings.

  4. Cliquez n’importe où dans la ligne contenant l’annonce à modifier.

  5. Dans la page des détails de l’annonce, sélectionnez l’onglet Settings.

  6. Dans la section Privileges cliquez sur l’icône en forme de crayon en regard du privilège Modify Listing.

  7. Cliquez sur le bouton Add Role et ajoutez les rôles requis.

  8. Cliquez sur Save.

Pour accorder le privilège MODIFY sur une annonce dans un échange de données :

  1. Connectez-vous à Snowsight.

  2. Accédez à Data » Private Sharing.

  3. Sélectionnez l’onglet Shared By My Account.

  4. Cliquez n’importe où dans la ligne contenant l’annonce à modifier.

  5. Dans la page des détails de l’annonce, sélectionnez l’onglet Settings.

  6. Dans la section Privileges cliquez sur l’icône en forme de crayon en regard du privilège Modify Listing.

  7. Cliquez sur le bouton Add Role et ajoutez les rôles requis.

  8. Cliquez sur Save.

Privilège USAGE sur une annonce

Si le privilège USAGE sur une annonce est accordé à un rôle, tout utilisateur avec le rôle peut afficher (c’est-à-dire voir) les annonces et les demandes d’annonces entrantes. Seul le rôle OWNER de l’annonce peut accorder ce privilège.

Pour accorder le privilège USAGE sur une annonce dans Snowflake Marketplace :

  1. Connectez-vous à Snowsight.

  2. Accédez à Data » Provider Studio.

  3. Sélectionnez l’onglet Listings.

  4. Cliquez n’importe où dans la ligne contenant l’annonce à modifier.

  5. Dans la page des détails de l’annonce, sélectionnez l’onglet Settings.

  6. Dans la section Privileges cliquez sur l’icône en forme de crayon en regard du privilège View Listing.

  7. Cliquez sur le bouton Add Role et ajoutez les rôles requis.

  8. Cliquez sur Save.

Pour accorder le privilège USAGE sur une annonce dans un échange de données :

  1. Connectez-vous à Snowsight.

  2. Accédez à Data » Private Sharing.

  3. Sélectionnez l’onglet Shared By My Account.

  4. Cliquez n’importe où dans la ligne contenant l’annonce à modifier.

  5. Dans la page des détails de l’annonce, sélectionnez l’onglet Settings.

  6. Dans la section Privileges cliquez sur l’icône en forme de crayon en regard du privilège View Listing.

  7. Cliquez sur le bouton Add Role et ajoutez les rôles requis.

  8. Cliquez sur Save.

Privilège OWNERSHIP sur une annonce

Si le privilège OWNERSHIP sur une annonce est accordé à un rôle, ce rôle devient le nouveau OWNER (propriétaire) de l’annonce. Seul le rôle OWNER de l’annonce peut accorder ce privilège. 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 Aperçu du contrôle d’accès.

Important

Lorsque la propriété de l’annonce 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 annonce et leurs privilèges sont révoqués. Le nouveau propriétaire de l’annonce doit ré-accorder ces privilèges.

Pour accorder le privilège OWNERSHIP sur une annonce dans Snowflake Marketplace :

  1. Connectez-vous à Snowsight.

  2. Accédez à Data » Provider Studio.

  3. Sélectionnez l’onglet Listings.

  4. Cliquez n’importe où dans la ligne contenant l’annonce à modifier.

  5. Dans la page des détails de l’annonce, sélectionnez l’onglet Settings.

  6. Dans la section Privileges cliquez sur l’icône en forme de crayon en regard du privilège OWNERSHIP.

  7. Cliquez sur le bouton Add Role et ajoutez les rôles requis.

  8. Cliquez sur Save.

Pour accorder le privilège OWNERSHIP sur une annonce dans un échange de données :

  1. Connectez-vous à Snowsight.

  2. Accédez à Data » Private Sharing.

  3. Sélectionnez l’onglet Shared By My Account.

  4. Cliquez n’importe où dans la ligne contenant l’annonce à modifier.

  5. Dans la page des détails de l’annonce, cliquez sur l’onglet Settings.

  6. Dans la section Privileges cliquez sur l’icône en forme de crayon en regard du privilège OWNERSHIP.

  7. Cliquez sur le bouton Add Role et ajoutez les rôles requis.

  8. Cliquez sur Save.

Privilèges au niveau du profil de fournisseur

Snowflake fournit les privilèges suivants pour les profils de fournisseurs. Ces privilèges peuvent être accordés par le propriétaire du profil de fournisseur (un utilisateur ayant le privilège OWNERSHIP) dans Snowflake Marketplace ou un Data Exchange :

Note

  • Pour créer un profil, utilisez le privilège global Privilège CREATE DATA EXCHANGE LISTING global (dans ce document).

  • Tout rôle dans le compte de fournisseur peut voir tous les profils. Ce privilège n’a pas besoin d’être explicitement accordé.

Privilège MODIFY sur un profil de fournisseur

Si le privilège MODIFY est accordé à un rôle sur un profil de fournisseur, tout utilisateur possédant ce rôle peut consulter et modifier les propriétés du profil de fournisseur. Seul le rôle OWNER du profil de fournisseur peut accorder ce privilège.

Le privilège MODIFY peut être accordé via l’interface Web ou en utilisant SQL :

Snowsight

Cliquez sur Data » Private Sharing » Manage Exchanges » Sélectionnez un échange » Sélectionnez un profil de fournisseur » Manage » Manage Profile Editors.

SQL

Exécutez la commande GRANT <privilèges> [WITH GRANT OPTION].

Par exemple :

-- grant the privilege to the SYSADMIN role
grant modify on data exchange profile "<provider_profile_name>" to role sysadmin;
Copy

Privilège OWNERSHIP sur un profil de fournisseur

Si le privilège OWNERSHIP sur un profil de fournisseur est accordé à un rôle, ce rôle devient le nouveau OWNER (propriétaire) du profil. Seul le rôle OWNER du profil de fournisseur peut accorder ce privilège. 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 Aperçu du contrôle d’accès.

Pour accorder le privilège OWNERSHIP sur un profil de fournisseur à un rôle, utilisez la commande GRANT <privilèges> [WITH GRANT OPTION]. Pour l’instant, ce privilège ne peut pas être accordé par le biais de la nouvelle interface Snowflake.

Par exemple :

-- grant the privilege to the SYSADMIN role
grant ownership on data exchange profile "<provider_profile_name>" to role sysadmin;
Copy