Privilegier och skyddsbara objekt i Hive-metaarkivet
Gäller för: Databricks SQL Databricks Runtime
En behörighet är en rättighet som beviljas ett huvudnamn att arbeta med ett skyddsbart objekt i metaarkivet.
Behörighetsmodellen och skyddsbara objekt skiljer sig åt beroende på om du använder ett Unity Catalog-metaarkiv eller det äldre Hive-metaarkivet. Den här artikeln beskriver privilegiemodellen för det äldre Hive-metaarkivet. Om du använder Unity Catalog kan du läsa Behörigheter och skyddsbara objekt i Unity Catalog.
Skyddsbara objekt i Hive-metaarkivet
Ett skyddsbart objekt är ett objekt som definierats i metaarkivet där behörigheter kan beviljas till ett huvudnamn.
Om du vill hantera behörigheter för alla objekt måste du vara dess ägare eller administratör.
Syntax
securable_object
{ ANY FILE |
CATALOG [ catalog_name ] |
{ SCHEMA | DATABASE } schema_name |
FUNCTION function_name |
[ TABLE ] table_name |
VIEW view_name
}
Parametrar
ANY FILE
Styr åtkomsten till det underliggande filsystemet.
CATALOG
catalog_nameStyr åtkomsten till hela datakatalogen.
{ SCHEMA | DATABASE }
schema_nameStyr åtkomsten till ett schema.
FUNCTION
function_nameStyr åtkomsten till en namngiven funktion.
[ TABLE ]
table_nameStyr åtkomsten till en hanterad eller extern tabell.
VIEW
view_nameStyr åtkomsten till SQL-vyer.
Arvsmodell
Skyddsbara objekt i Hive-metaarkivet är hierarkiska och privilegier ärvs nedåt. Det innebär att bevilja eller neka en behörighet CATALOG
för automatiskt beviljar eller nekar behörigheten till alla scheman i katalogen. På samma sätt ärvs behörigheter som beviljas för ett schemaobjekt av alla objekt i schemat. Det här mönstret gäller för alla skyddsbara objekt.
Om du nekar en användarbehörighet i en tabell kan användaren inte se tabellen genom att försöka lista alla tabeller i schemat. Om du nekar en användare behörighet i ett schema kan användaren inte se att schemat finns genom att försöka lista alla scheman i katalogen.
Behörighetstyper
I följande tabell visas vilka behörigheter som är associerade med vilka skyddsbara objekt.
Privilegietyp | ANONYM FUNKTION | VALFRI FIL | KATALOG | SCHEMA | FUNKTION | TABELL | VISA |
---|---|---|---|---|---|---|---|
CREATE | Ja | Ja | |||||
MODIFIERA | Ja | Ja | Ja | Ja | |||
READ_METADATA | Ja | Ja | Ja | Ja | |||
SELECT | Ja | Ja | Ja | Ja | Ja | Ja | Ja |
ANVÄNDNING | Ja | Ja |
ALL PRIVILEGES
Används för att bevilja eller återkalla alla behörigheter som gäller för skyddsbara objekt och dess underordnade objekt utan att uttryckligen ange dem. Detta utökas till alla tillgängliga privilegier när behörighetskontroller görs.
CREATE
Skapa objekt i katalogen eller schemat.
MODIFY
KOPIERA TILL, UPPDATERA TA BORT, INFOGA ELLER SAMMANFOGA TILL tabellen.
Om securable_object är
hive_metastore
eller ett schema inom det, beviljarMODIFY
beviljandetMODIFY
för alla aktuella och framtida tabeller och vyer i det skyddsbara objektet.READ_METADATA
Identifiera det skyddsbara objektet i SHOW och fråga objektet i DESCRIBE
Om det skyddsbara objektet är
hive_metastore
katalogen eller ett schema inom den beviljarREAD_METADATA
beviljandetREAD_METADATA
för alla aktuella och framtida tabeller och vyer i det skyddsbara objektet.READ FILES
Fråga filer direkt med hjälp av lagringsautentiseringsuppgifterna eller den externa platsen.
SELECT
Fråga en tabell eller vy, anropa en användardefinierad eller anonym funktion eller välj
ANY FILE
. Användaren behöverSELECT
i tabellen, vyn eller funktionen samtUSAGE
i objektets schema och katalog.Om det skyddsbara objektet är
hive_metastore
eller ett schema inom det, beviljarSELECT
beviljandetSELECT
för alla aktuella och framtida tabeller och vyer i det skyddsbara objektet.USAGE
Krävs, men inte tillräckligt för att referera till några objekt i en katalog eller ett schema. Huvudkontot måste också ha behörighet för de enskilda skyddsbara objekten.
WRITE FILES
Kopiera direkt till filer som styrs av lagringsautentiseringsuppgifterna eller den externa platsen.
Exempel
-- Grant a privilege to the user alf@melmak.et
> GRANT SELECT ON TABLE t TO `alf@melmak.et`;
-- Revoke a privilege from the general public group.
> REVOKE USAGE ON SCHEMA some_schema FROM `alf@melmak.et`;