Hak istimewa dan objek yang dapat diamankan di metastore Apache Hive
Berlaku untuk: Databricks SQL Databricks Runtime
Hak istimewa adalah hak yang diberikan kepada prinsipal untuk beroperasi pada objek yang dapat diamankan di metastore.
Model hak istimewa dan objek yang dapat diamankan berbeda tergantung pada apakah Anda menggunakan metastore Katalog Unity atau metastore Apache Hive warisan. Artikel ini menjelaskan model hak istimewa untuk metastore Apache Hive warisan. Jika Anda menggunakan Katalog Unity, lihat Hak Istimewa dan objek yang dapat diamankan di Katalog Unity.
Objek yang dapat diamankan di metastore Apache Hive
Objek yang dapat diamankan adalah objek yang didefinisikan dalam metastore di mana hak istimewa dapat diberikan kepada prinsipal.
Untuk mengelola hak istimewa pada objek apa pun, Anda harus menjadi pemilik atau administratornya.
Sintaks
securable_object
{ ANY FILE |
CATALOG [ catalog_name ] |
{ SCHEMA | DATABASE } schema_name |
FUNCTION function_name |
[ TABLE ] table_name |
VIEW view_name
}
Parameter
ANY FILE
Mengontrol akses ke sistem file yang mendasar.
CATALOG
catalog_nameMengontrol akses ke seluruh katalog data.
{ SCHEMA | DATABASE }
schema_nameMengontrol akses ke skema.
FUNCTION
function_nameMengontrol akses ke fungsi bernama.
[ TABLE ]
table_nameMengontrol akses ke tabel terkelola atau eksternal.
VIEW
view_nameMengontrol akses ke tampilan SQL.
Model pewarisan
Objek yang dapat diamankan dalam metastore Apache Hive adalah hierarkis dan hak istimewa diwariskan ke bawah. Artinya, pemberian atau penolakan hak istimewa pada CATALOG
akan otomatis memberikan atau menolak hak istimewa untuk semua skema dalam katalog. Demikian pula, hak istimewa yang diberikan pada objek skema akan diwarisi oleh semua objek dalam skema itu. Pola ini berlaku untuk semua objek yang dapat diamankan.
Jika Anda menolak hak istimewa pengguna di tabel, pengguna yang mencoba mencantumkan semua tabel dalam skema tidak dapat melihat tabel. Jika Anda menolak hak istimewa pengguna di skema, pengguna tidak dapat melihat bahwa skema tersebut ada dengan mencoba mencantumkan semua skema dalam katalog.
Jenis hak istimewa
Tabel berikut menunjukkan hak istimewa mana yang terkait dengan objek yang dapat diamankan.
Jenis hak istimewa | FUNGSI ANONIM | BERKAS APAPUN | KATALOG | SKEMA | FUNGSI | TABLE | VIEW |
---|---|---|---|---|---|---|---|
CREATE | Ya | Ya | |||||
MODIFY | Ya | Ya | Ya | Ya | |||
READ_METADATA | Ya | Ya | Ya | Ya | |||
SELECT | Ya | Ya | Ya | Ya | Ya | Ya | Ya |
PENGGUNAAN | Ya | Ya |
ALL PRIVILEGES
Digunakan untuk memberikan atau mencabut semua hak istimewa yang berlaku untuk objek yang dapat diamankan dan anaknya tanpa menentukannya secara eksplisit. Hak ini diperluas ke semua hak istimewa yang tersedia pada saat pemeriksaan izin dilakukan.
CREATE
Buat objek dalam katalog atau skema.
MODIFY
SALIN KE, PERBARUI HAPUS, SISIPKAN, atau GABUNGKAN KE dalam tabel.
Jika securable_object adalah
hive_metastore
atau skema di dalamnya, pemberianMODIFY
akan diberikanMODIFY
pada semua tabel dan tampilan saat ini dan masa depan dalam objek yang dapat diamankan.READ_METADATA
Temukan objek yang dapat diamankan di TAMPILKAN dan interogasi objek di GAMBARKAN
Jika objek yang dapat diamankan adalah
hive_metastore
katalog atau skema di dalamnya, pemberianREAD_METADATA
akan diberikanREAD_METADATA
pada semua tabel dan tampilan saat ini dan masa depan dalam objek yang dapat diamankan.READ FILES
Kueri file secara langsung menggunakan kredensial penyimpanan atau lokasi eksternal.
SELECT
Kueri tabel atau tampilan, aktifkan fungsi yang ditentukan pengguna atau anonim, atau pilih
ANY FILE
. Pengguna membutuhkanSELECT
pada tabel, tampilan, atau fungsi, sertaUSAGE
pada skema dan katalog objek.Jika objek yang dapat diamankan adalah
hive_metastore
atau skema di dalamnya, pemberianSELECT
akan diberikanSELECT
pada semua tabel dan tampilan saat ini dan masa depan dalam objek yang dapat diamankan.USAGE
Diperlukan, tetapi tidak cukup untuk mereferensikan objek apa pun dalam katalog atau skema. Prinsipal juga perlu memiliki hak istimewa pada objek yang diamankan individu.
WRITE FILES
Langsung SALIN KE file yang diatur oleh kredensial penyimpanan atau lokasi eksternal.
Contoh
-- 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`;