REVOKE

Trekt een expliciet verleende of geweigerde bevoegdheid voor een object van een gebruiker of principal in. A is strikt beperkt tot het object dat is opgegeven in de opdracht en trapsgevat REVOKE naar opgenomen objecten.

Syntax

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 | USAGE | READ_METADATA | CREATE_NAMED_FUNCTION | ALL PRIVILEGES

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

Als u een bevoegdheid van alle gebruikers wilt intrekken, geeft u het trefwoord users op na FROM .

Stel bijvoorbeeld dat er een database is db met tabellen t1 en t2 . Een gebruiker krijgt in eerste instantie SELECT bevoegdheden voor dbSELECT op t1 . De gebruiker heeft toegang t2 tot vanwege de op de database GRANTdb .

Als de beheerder de bevoegdheid voor ingetrokken, heeft de gebruiker geen toegang meer tot , maar nog steeds toegang omdat er een expliciete is voor SELECTdb tabel t2t1GRANTt1 .

Als de beheerder in plaats daarvan de op tabel ingetrokken, maar nog steeds de SELECTt1SELECT op-database db behoudt, t1SELECTdb heeft t1 de gebruiker nog steeds toegang omdat de op de database impliciet bevoegdheden verleent voor de tabel .

Voorbeelden

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