Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Platí pro:
Databricks SQL
Databricks Runtime
Oprávnění je právo udělené objektu zabezpečení pro provoz na zabezpečitelném objektu v metastoru.
Model oprávnění a objekty pro zabezpečení se liší v závislosti na tom, zda používáte úložiště metadat katalogu Unity nebo starší úložiště metadat Hive. Tento článek popisuje model oprávnění pro starší metastore Hive. Pokud používáte katalog Unity, viz Oprávnění a zabezpečené objekty vkatalogu Unity.
Zabezpečitelné objekty v metastoru Hive
Zabezpečitelný objekt je objekt definovaný v metastoru, na kterém lze oprávnění udělit objektu zabezpečení.
Pokud chcete spravovat oprávnění pro libovolný objekt, musíte být jeho vlastníkem nebo správcem.
Syntaxe
securable_object
{ ANY FILE |
CATALOG [ catalog_name ] |
{ SCHEMA | DATABASE } schema_name |
FUNCTION function_name |
[ TABLE ] table_name |
VIEW view_name
}
Parametry
ANY FILEŘídí přístup k základnímu systému souborů.
CATALOGcatalog_nameŘídí přístup k celému katalogu dat.
{ SCHEMA | DATABASE }Schema_nameŘídí přístup ke schématu.
FUNCTIONfunction_nameŘídí přístup k pojmenované funkci.
[ TABLE ]Table_nameŘídí přístup ke spravované nebo externí tabulce.
VIEWnázev_zobrazeníŘídí přístup k zobrazením SQL.
Model dědičnosti
Zabezpečitelné objekty v metastoru Hive jsou hierarchické a oprávnění se dědí směrem dolů. To znamená, že udělení nebo zamítnutí oprávnění pro CATALOG automaticky udělí nebo odepře oprávnění všem schématům v katalogu. Podobně jsou oprávnění udělená objektem schématu zděděna všemi objekty v daném schématu. Tento vzor platí pro všechny zabezpečitelné objekty.
Pokud uživateli odepřete oprávnění k tabulce, uživatel nemůže zobrazit tabulku tím, že se pokusí zobrazit seznam všech tabulek ve schématu. Pokud uživateli odepřete oprávnění ke schématu, uživatel neuvidí, že schéma existuje, když se pokusí vypsat všechna schémata v katalogu.
Typy oprávnění
Následující tabulka uvádí, která oprávnění jsou přidružena k tomu, ke kterým zabezpečitelným objektům.
| Typ oprávnění | ANONYMNÍ FUNKCE | LIBOVOLNÝ SOUBOR | CATALOG | SCHEMA | FUNKCE | TABLE | ZOBRAZIT |
|---|---|---|---|---|---|---|---|
| VYTVOŘTE | Ano | Ano | |||||
| UPRAVIT | Ano | Ano | Ano | Ano | |||
| ČÍST_METADATA | Ano | Ano | Ano | Ano | |||
| SELECT | Ano | Ano | Ano | Ano | Ano | Ano | Ano |
| VYUŽITÍ | Ano | Ano |
ALL PRIVILEGESSlouží k udělení nebo odvolání všech oprávnění platných pro zabezpečitelný objekt a jeho podřízené objekty bez explicitního zadání. Tím se rozšíří na všechna dostupná oprávnění v době kontroly oprávnění.
CREATEVytvořte objekty v katalogu nebo schématu.
MODIFYCOPY INTO, UPDATEDELETE, INSERTnebo MERGE INTO tabulky.
Pokud je "securable_object"
hive_metastorenebo obsahuje schéma, uděleníMODIFYzajistí, žeMODIFYbude uděleno všem současným a budoucím tabulkám a zobrazením v rámci zabezpečitelného objektu.READ_METADATAObjevte zabezpečitelný objekt v show a interrogate objekt v DESCRIBE
Pokud je zabezpečitelným objektem katalog
hive_metastorenebo schéma v něm, uděleníREAD_METADATAudělíREAD_METADATApro všechny aktuální a budoucí tabulky a zobrazení v rámci zabezpečitelného objektu.READ FILESDotazujte se na soubory přímo pomocí přihlašovacích údajů úložiště nebo externího umístění.
SELECTDotazování na tabulku nebo zobrazení, vyvolání uživatelem definované nebo anonymní funkce nebo výběr
ANY FILE. Uživatel potřebuje mítSELECTna tabulce, pohledu nebo funkci a takéUSAGEna schématu a katalogu objektu.Pokud je zabezpečitelným objektem
hive_metastorenebo schéma v něm, uděleníSELECTudělíSELECTvšem aktuálním a budoucím tabulkám a zobrazením v rámci zabezpečitelného objektu.USAGEPovinné, ale nestačí odkazovat na žádné objekty v katalogu nebo schématu. Objekt zabezpečení musí mít také oprávnění k jednotlivým zabezpečitelným objektům.
WRITE FILESSoubory COPY INTO, které se přímo řídí přihlašovacími údaji úložiště nebo externím umístěním .
Příklady
-- 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`;