Upphäv

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

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

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

Återkalla en explicit beviljad eller nekad behörighet för ett objekt från en användare eller ett huvud konto. En REVOKE är strikt begränsad till det objekt som anges i kommandot och överlappar inte de objekt som finns.

Om du vill återkalla en behörighet från alla användare anger du nyckelordet users efter FROM .

Anta till exempel att det finns en databas db med tabeller t1 och t2 . En användare har inlednings vis beviljat SELECT behörigheter på db ocht1 . Användaren kan komma åt på t2 grund av GRANT på-databasen db .

Om administratören återkallar SELECT behörigheten för db , kommer användaren inte längre att kunna komma åt den t2 , men kan fortfarande komma åt t1 eftersom det finns en uttrycklig GRANT tabell t1 .

Om administratören i stället återkallar den SELECT på-tabellen t1 men fortfarande behålls SELECT i databasen db , kan användaren fortfarande komma åt t1 eftersom SELECT på databasen db uttryckligen tilldelar behörighet för tabellen t1 .

Exempel

REVOKE ALL PRIVILEGES ON DATABASE default FROM `<user>@<domain-name>`
REVOKE SELECT ON <table-name> FROM `<user>@<domain-name>`