GRANTGRANT

GRANT
  privilege_type [, privilege_type ] ...
  ON (CATALOG | DATABASE <database-name> | TABLE <table-name> | VIEW <view-name> | FUNCTION <function-name> | ANONYMOUS FUNCTION | ANY FILE)
  TO principal

privilege_type
  : SELECT | CREATE | MODIFY | USAGE | READ_METADATA | CREATE_NAMED_FUNCTION | ALL PRIVILEGES

principal
  : `<user>@<domain-name>` | <group-name>

Accordez un privilège sur un objet à un utilisateur ou à un principal.Grant a privilege on an object to a user or principal. L’octroi d’un privilège sur une base de données (par exemple un SELECT privilège) a pour effet d’accorder implicitement ce privilège sur tous les objets de cette base de données.Granting a privilege on a database (for example a SELECT privilege) has the effect of implicitly granting that privilege on all objects in that database. L’octroi d’un privilège spécifique sur le catalogue a pour effet d’accorder implicitement ce privilège sur toutes les bases de données du catalogue.Granting a specific privilege on the catalog has the effect of implicitly granting that privilege on all databases in the catalog.

Pour accorder un privilège à tous les utilisateurs, spécifiez le mot clé users après TO .To grant a privilege to all users, specify the keyword users after TO.

ExemplesExamples

GRANT SELECT ON DATABASE <database-name> TO `<user>@<domain-name>`
GRANT SELECT ON ANONYMOUS FUNCTION TO `<user>@<domain-name>`
GRANT SELECT ON ANY FILE TO `<user>@<domain-name>`

Contrôle d’accès en fonction de l’affichageView-based access control

Vous pouvez configurer un contrôle d’accès affiné (pour les lignes et les colonnes qui correspondent à des conditions spécifiques, par exemple) en accordant l’accès à des vues dérivées qui contiennent des requêtes arbitraires.You can configure fine-grained access control (to rows and columns matching specific conditions, for example) by granting access to derived views that contain arbitrary queries.

ExemplesExamples

CREATE OR REPLACE VIEW <view-name> AS SELECT columnA, columnB FROM <table-name> WHERE columnC > 1000;
GRANT SELECT ON VIEW <view-name> TO `<user>@<domain-name>`;

Pour plus d’informations sur la propriété de la table requise, consultez Forum aux questions (FAQ).For details on required table ownership, see Frequently asked questions (FAQ).