GRANT

Jogosultságot biztosít egy objektumra egy felhasználónak vagy rendszerbiztonsági tagnak. Jogosultság megadása egy adatbázishoz (például egy jogosultság) implicit módon megadja ezt a SELECT jogosultságot minden objektumokat az adatbázisban. Ha egy adott jogosultságot ad meg a katalógushoz, az implicit módon befolyásolja a jogosultság megadása a katalógusban található összes adatbázisra.

Syntax

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 | READ_METADATA | CREATE_NAMED_FUNCTION | ALL PRIVILEGES
GRANT
  USAGE
  ON (CATALOG | DATABASE <database-name>)
  TO principal
principal
  : `<user>@<domain-name>` | <group-name>

Ha jogosultságot ad minden felhasználónak, adja meg a kulcsszót users a TO után.

Példák

GRANT USAGE, 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>`

Nézetalapú hozzáférés-vezérlés

Részletes hozzáférés-vezérlést konfigurálhat (például adott feltételeknek megfelelő sorokra és oszlopokra), ha hozzáférést biztosít a tetszőleges lekérdezéseket tartalmazó származtatott nézetekhez.

Példák

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>`;

A tábla kötelező tulajdonjogáról további információt a Gyakori kérdések (GYIK) című témakörben talál.