GRANT - Amazon Redshift

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

GRANT

Mendefinisikan izin akses untuk pengguna atau peran.

Izin mencakup opsi akses seperti dapat membaca data dalam tabel dan tampilan, menulis data, membuat tabel, dan menjatuhkan tabel. Gunakan perintah ini untuk memberikan izin khusus untuk tabel, database, skema, fungsi, prosedur, bahasa, atau kolom. Untuk mencabut izin dari objek database, gunakan perintah. REVOKE

Izin juga mencakup opsi akses produsen datashare berikut:

  • Memberikan akses datashare ke ruang nama dan akun konsumen.

  • Memberikan izin untuk mengubah datashare dengan menambahkan atau menghapus objek dari datashare.

  • Memberikan izin untuk berbagi datashare dengan menambahkan atau menghapus namespace konsumen dari datashare.

Opsi akses konsumen Datashare adalah sebagai berikut:

  • Memberikan pengguna akses penuh ke database yang dibuat dari datashare atau skema eksternal yang mengarah ke database tersebut.

  • Memberikan pengguna izin tingkat objek pada database yang dibuat dari datashare seperti yang Anda bisa untuk objek database lokal. Untuk memberikan tingkat izin ini, Anda harus menggunakan WITH PERMISSIONS klausa saat membuat database dari datashare. Untuk informasi selengkapnya, lihat CREATE DATABASE.

Untuk informasi selengkapnya tentang izin datashare, lihat. Berbagi data di dalam dan di antara cluster

Anda juga dapat memberikan peran untuk mengelola izin database dan mengontrol apa yang dapat dilakukan pengguna relatif terhadap data Anda. Dengan mendefinisikan peran dan menetapkan peran kepada pengguna, Anda dapat membatasi tindakan yang dapat dilakukan pengguna tersebut, seperti membatasi pengguna hanya pada perintah CREATE TABLE dan INSERT perintah. Untuk informasi selengkapnya tentang CREATE ROLE perintah, lihatCREATE ROLE. Amazon Redshift memiliki beberapa peran yang ditentukan sistem yang juga dapat Anda gunakan untuk memberikan izin khusus kepada pengguna Anda. Untuk informasi selengkapnya, lihat Peran yang ditentukan sistem Amazon Redshift.

Anda hanya dapat GRANT atau REVOKE USAGE izin pada skema eksternal untuk pengguna database dan grup pengguna yang menggunakan sintaks ONSCHEMA. Saat menggunakan ON EXTERNAL SCHEMA with AWS Lake Formation, Anda hanya dapat GRANT dan REVOKE izin untuk peran AWS Identity and Access Management (IAM). Untuk daftar izin, lihat sintaksnya.

Untuk prosedur tersimpan, satu-satunya izin yang dapat Anda berikan adalahEXECUTE.

Anda tidak dapat menjalankan GRANT (pada sumber daya eksternal) dalam blok transaksi (BEGIN... END). Untuk informasi lebih lanjut tentang transaksi, lihatIsolasi yang dapat diserialisasi.

Untuk melihat izin mana yang telah diberikan pengguna untuk database, gunakanHAS_DATABASE_PRIVILEGE. Untuk melihat izin mana yang telah diberikan pengguna untuk skema, gunakan. HAS_SCHEMA_PRIVILEGE Untuk melihat izin mana yang diberikan pengguna untuk tabel, gunakanHAS_TABLE_PRIVILEGE.

Sintaks

GRANT { { SELECT | INSERT | UPDATE | DELETE | DROP | REFERENCES | ALTER | TRUNCATE } [,...] | ALL [ PRIVILEGES ] } ON { [ TABLE ] table_name [, ...] | ALL TABLES IN SCHEMA schema_name [, ...] } TO { username [ WITH GRANT OPTION ] | ROLE role_name | GROUP group_name | PUBLIC } [, ...] GRANT { { CREATE | TEMPORARY | TEMP | ALTER } [,...] | ALL [ PRIVILEGES ] } ON DATABASE db_name [, ...] TO { username [ WITH GRANT OPTION ] | ROLE role_name | GROUP group_name | PUBLIC } [, ...] GRANT { { CREATE | USAGE | ALTER } [,...] | ALL [ PRIVILEGES ] } ON SCHEMA schema_name [, ...] TO { username [ WITH GRANT OPTION ] | ROLE role_name | GROUP group_name | PUBLIC } [, ...] GRANT { EXECUTE | ALL [ PRIVILEGES ] } ON { FUNCTION function_name ( [ [ argname ] argtype [, ...] ] ) [, ...] | ALL FUNCTIONS IN SCHEMA schema_name [, ...] } TO { username [ WITH GRANT OPTION ] | ROLE role_name | GROUP group_name | PUBLIC } [, ...] GRANT { EXECUTE | ALL [ PRIVILEGES ] } ON { PROCEDURE procedure_name ( [ [ argname ] argtype [, ...] ] ) [, ...] | ALL PROCEDURES IN SCHEMA schema_name [, ...] } TO { username [ WITH GRANT OPTION ] | ROLE role_name | GROUP group_name | PUBLIC } [, ...] GRANT USAGE ON LANGUAGE language_name [, ...] TO { username [ WITH GRANT OPTION ] | ROLE role_name | GROUP group_name | PUBLIC } [, ...]

Berikut ini adalah sintaks untuk izin tingkat kolom pada tabel dan tampilan Amazon Redshift.

GRANT { { SELECT | UPDATE } ( column_name [, ...] ) [, ...] | ALL [ PRIVILEGES ] ( column_name [,...] ) } ON { [ TABLE ] table_name [, ...] } TO { username | ROLE role_name | GROUP group_name | PUBLIC } [, ...]

Berikut ini adalah sintaks untuk ASSUMEROLE izin yang diberikan kepada pengguna dan grup dengan peran tertentu. Untuk mulai menggunakan hak ASSUMEROLE istimewa, lihatCatatan penggunaan untuk memberikan izin ASSUMEROLE.

GRANT ASSUMEROLE ON { 'iam_role' [, ...] | default | ALL } TO { username | ROLE role_name | GROUP group_name | PUBLIC } [, ...] FOR { ALL | COPY | UNLOAD | EXTERNAL FUNCTION | CREATE MODEL } [, ...]

Berikut ini adalah sintaks untuk integrasi Redshift Spectrum dengan Lake Formation.

GRANT { SELECT | ALL [ PRIVILEGES ] } ( column_list ) ON EXTERNAL TABLE schema_name.table_name TO { IAM_ROLE iam_role } [, ...] [ WITH GRANT OPTION ] GRANT { { SELECT | ALTER | DROP | DELETE | INSERT } [, ...] | ALL [ PRIVILEGES ] } ON EXTERNAL TABLE schema_name.table_name [, ...] TO { { IAM_ROLE iam_role } [, ...] | PUBLIC } [ WITH GRANT OPTION ] GRANT { { CREATE | ALTER | DROP } [, ...] | ALL [ PRIVILEGES ] } ON EXTERNAL SCHEMA schema_name [, ...] TO { IAM_ROLE iam_role } [, ...] [ WITH GRANT OPTION ]
Izin penyimpanan data sisi produsen

Berikut ini adalah sintaks untuk menggunakan GRANT untuk memberikan ALTER atau SHARE izin kepada pengguna atau peran. Pengguna dapat mengubah datashare dengan ALTER izin, atau memberikan penggunaan kepada konsumen dengan izin. SHARE ALTERdan SHARE merupakan satu-satunya izin yang dapat Anda berikan pada datashare kepada pengguna dan peran.

GRANT { ALTER | SHARE } ON DATASHARE datashare_name TO { username [ WITH GRANT OPTION ] | ROLE role_name | GROUP group_name | PUBLIC } [, ...]

Berikut ini adalah sintaks untuk menggunakan izin penggunaan GRANT untuk datashare di Amazon Redshift. Anda memberikan akses ke datashare ke konsumen menggunakan izin. USAGE Anda tidak dapat memberikan izin ini kepada pengguna atau grup pengguna. Izin ini juga tidak mendukung GRANT pernyataan tersebut. WITH GRANT OPTION Hanya pengguna atau grup pengguna dengan SHARE izin yang sebelumnya diberikan kepada merekaFOR, datashare dapat menjalankan jenis GRANT pernyataan ini.

GRANT USAGE ON DATASHARE datashare_name TO NAMESPACE 'namespaceGUID' | ACCOUNT 'accountnumber' [ VIA DATA CATALOG ]

Berikut ini adalah contoh bagaimana memberikan penggunaan datashare ke akun Lake Formation.

GRANT USAGE ON DATASHARE salesshare TO ACCOUNT '123456789012' VIA DATA CATALOG;
Izin penyimpanan data sisi konsumen

Berikut ini adalah sintaks untuk izin penggunaan GRANT berbagi data pada database atau skema tertentu yang dibuat dari datashare.

Izin lebih lanjut yang diperlukan bagi konsumen untuk mengakses database yang dibuat dari datashare bervariasi tergantung pada apakah CREATE DATABASE perintah yang digunakan untuk membuat database dari datashare menggunakan klausa. WITH PERMISSIONS Untuk informasi selengkapnya tentang CREATE DATABASE perintah dan WITH PERMISSIONS klausa, lihatCREATE DATABASE.

Database dibuat tanpa menggunakan klausa WITH PERMISSIONS

Bila Anda memberikan USAGE pada database yang dibuat dari datashare tanpa WITH PERMISSIONS klausa, Anda tidak perlu memberikan izin secara terpisah pada objek dalam database bersama. Entitas yang diberikan penggunaan pada database yang dibuat dari datashares tanpa WITH PERMISSIONS klausa secara otomatis memiliki akses ke semua objek dalam database.

Database dibuat menggunakan klausa WITH PERMISSIONS

Ketika Anda memberikan USAGE pada database di mana database bersama dibuat dari datashare dengan WITH PERMISSIONS klausa, identitas sisi konsumen masih harus diberikan izin yang relevan untuk objek database dalam database bersama untuk mengaksesnya, sama seperti Anda akan memberikan izin untuk objek database lokal. Untuk memberikan izin ke objek dalam database yang dibuat dari datashare, gunakan sintaks tiga bagian. database_name.schema_name.object_name Untuk memberikan izin ke objek dalam skema eksternal yang menunjuk ke skema bersama dalam database bersama, gunakan sintaks dua bagian. schema_name.object_name

GRANT USAGE ON { DATABASE shared_database_name [, ...] | SCHEMA shared_schema} TO { username | ROLE role_name | GROUP group_name | PUBLIC } [, ...]

Izin tercakup memungkinkan Anda memberikan izin kepada pengguna atau peran pada semua objek dari tipe dalam database atau skema. Pengguna dan peran dengan izin cakupan memiliki izin yang ditentukan pada semua objek saat ini dan masa depan dalam database atau skema.

Anda dapat melihat cakupan izin cakupan tingkat database di. SVV_DATABASE_PRIVILEGES Anda dapat melihat cakupan izin cakupan tingkat skema di. SVV_SCHEMA_PRIVILEGES

Berikut ini adalah sintaks untuk memberikan izin cakupan kepada pengguna dan peran. Untuk informasi selengkapnya tentang izin tercakup, lihat. Izin tercakup

GRANT { CREATE | USAGE | ALTER } [,...] | ALL [ PRIVILEGES ] } FOR SCHEMAS IN DATABASE db_name TO { username [ WITH GRANT OPTION ] | ROLE role_name } [, ...] GRANT { { SELECT | INSERT | UPDATE | DELETE | DROP | ALTER | TRUNCATE | REFERENCES } [, ...] } | ALL [PRIVILEGES] } } FOR TABLES IN {SCHEMA schema_name [DATABASE db_name ] | DATABASE db_name } TO { username [ WITH GRANT OPTION ] | ROLE role_name} [, ...] GRANT { EXECUTE | ALL [ PRIVILEGES ] } FOR FUNCTIONS IN {SCHEMA schema_name [DATABASE db_name ] | DATABASE db_name } TO { username [ WITH GRANT OPTION ] | ROLE role_name | } [, ...] GRANT { EXECUTE | ALL [ PRIVILEGES ] } FOR PROCEDURES IN {SCHEMA schema_name [DATABASE db_name ] | DATABASE db_name } TO { username [ WITH GRANT OPTION ] | ROLE role_name | } [, ...] GRANT USAGE FOR LANGUAGES IN {DATABASE db_name} TO { username [ WITH GRANT OPTION ] | ROLE role_name } [, ...]

Perhatikan bahwa izin cakupan tidak membedakan antara izin untuk fungsi dan prosedur. Misalnya, pernyataan berikut memberikan bob EXECUTE izin untuk fungsi dan prosedur dalam skemaSales_schema.

GRANT EXECUTE FOR FUNCTIONS IN SCHEMA Sales_schema TO bob;

Berikut ini adalah sintaks untuk izin model pembelajaran mesin di Amazon Redshift.

GRANT CREATE MODEL TO { username [ WITH GRANT OPTION ] | ROLE role_name | GROUP group_name | PUBLIC } [, ...] GRANT { EXECUTE | ALL [ PRIVILEGES ] } ON MODEL model_name [, ...] TO { username [ WITH GRANT OPTION ] | ROLE role_name | GROUP group_name | PUBLIC } [, ...]

Berikut ini adalah sintaks untuk memberikan izin peran di Amazon Redshift.

GRANT { ROLE role_name } [, ...] TO { { user_name [ WITH ADMIN OPTION ] } | ROLE role_name }[, ...]

Berikut ini adalah sintaks untuk memberikan izin sistem untuk peran di Amazon Redshift.

GRANT { { CREATE USER | DROP USER | ALTER USER | CREATE SCHEMA | DROP SCHEMA | ALTER DEFAULT PRIVILEGES | ACCESS CATALOG | CREATE TABLE | DROP TABLE | ALTER TABLE | CREATE OR REPLACE FUNCTION | CREATE OR REPLACE EXTERNAL FUNCTION | DROP FUNCTION | CREATE OR REPLACE PROCEDURE | DROP PROCEDURE | CREATE OR REPLACE VIEW | DROP VIEW | CREATE MODEL | DROP MODEL | CREATE DATASHARE | ALTER DATASHARE | DROP DATASHARE | CREATE LIBRARY | DROP LIBRARY | CREATE ROLE | DROP ROLE | TRUNCATE TABLE VACUUM | ANALYZE | CANCEL }[, ...] } | { ALL [ PRIVILEGES ] } TO { ROLE role_name } [, ...]

Berikut ini adalah sintaks untuk memberikan izin untuk menjelaskan filter kebijakan keamanan tingkat baris dari kueri dalam paket. EXPLAIN Anda dapat mencabut hak istimewa menggunakan pernyataan. REVOKE

GRANT EXPLAIN RLS TO ROLE rolename

Berikut ini adalah sintaks untuk memberikan izin untuk melewati kebijakan keamanan tingkat baris untuk kueri.

GRANT IGNORE RLS TO ROLE rolename

Berikut ini adalah sintaks untuk memberikan izin ke kebijakan keamanan tingkat baris yang ditentukan.

GRANT SELECT ON [ TABLE ] table_name [, ...] TO RLS POLICY policy_name [, ...]

Parameter

SELECT

Memberikan izin untuk memilih data dari tabel atau tampilan menggunakan SELECT pernyataan. SELECTIzin juga diperlukan untuk referensi nilai kolom yang ada untuk UPDATE atau DELETE operasi.

INSERT

Memberikan izin untuk memuat data ke dalam tabel menggunakan INSERT pernyataan atau COPY pernyataan.

UPDATE

Memberikan izin untuk memperbarui kolom tabel menggunakan UPDATE pernyataan. UPDATEoperasi juga memerlukan SELECT izin, karena mereka harus referensi kolom tabel untuk menentukan baris mana yang akan diperbarui, atau untuk menghitung nilai baru untuk kolom.

DELETE

Memberikan izin untuk menghapus baris data dari tabel. DELETEoperasi juga memerlukan SELECT izin, karena mereka harus referensi kolom tabel untuk menentukan baris mana yang akan dihapus.

DROP

Memberikan izin untuk menjatuhkan meja. Izin ini berlaku di Amazon Redshift dan AWS Glue Data Catalog yang diaktifkan untuk Lake Formation.

REFERENCES

Memberikan izin untuk membuat kendala kunci asing. Anda harus memberikan izin ini pada tabel referensi dan tabel referensi; jika tidak, pengguna tidak dapat membuat kendala.

ALTER

Bergantung pada objek database, memberikan izin berikut kepada pengguna atau grup pengguna:

  • Untuk tabel, ALTER memberikan izin untuk mengubah tabel atau tampilan. Untuk informasi selengkapnya, lihat ALTER TABLE.

  • Untuk database, ALTER memberikan izin untuk mengubah database. Untuk informasi selengkapnya, lihat ALTER DATABASE.

  • Untuk skema, ALTER memberikan izin untuk mengubah skema. Untuk informasi selengkapnya, lihat ALTER SCHEMA.

  • Untuk tabel eksternal, ALTER memberikan izin untuk mengubah tabel AWS Glue Data Catalog yang diaktifkan untuk Lake Formation. Izin ini hanya berlaku saat menggunakan Lake Formation.

TRUNCATE

Memberikan izin untuk memotong tabel. Tanpa izin ini, hanya pemilik meja atau superuser yang dapat memotong tabel. Untuk informasi selengkapnya tentang TRUNCATE perintah, lihatTRUNCATE.

ALL [ PRIVILEGES ]

Memberikan semua izin yang tersedia sekaligus kepada pengguna atau peran yang ditentukan. PRIVILEGESKata kunci adalah opsional.

GRANTALLON SCHEMA tidak memberikan CREATE izin untuk skema eksternal.

Anda dapat memberikan ALL izin ke tabel di AWS Glue Data Catalog yang diaktifkan untuk Lake Formation. Dalam hal ini, izin individu (sepertiSELECT,ALTER, dan sebagainya) dicatat dalam Katalog Data.

catatan

Amazon Redshift tidak mendukung izin RULE danTRIGGER. Untuk informasi selengkapnya, kunjungi Fitur SQL Postgre yang tidak didukung.

ASSUMEROLE

Memberikan izin untuk menjalankanCOPY,UNLOAD, EXTERNALFUNCTION, dan CREATE MODEL perintah kepada pengguna, peran, atau grup dengan peran tertentu. Pengguna, peran, atau grup mengasumsikan peran tersebut saat menjalankan perintah yang ditentukan. Untuk mulai menggunakan ASSUMEROLE izin, lihatCatatan penggunaan untuk memberikan izin ASSUMEROLE.

ON [TABLE] table_name

Memberikan izin yang ditentukan pada tabel atau tampilan. TABLEKata kunci adalah opsional. Anda dapat membuat daftar beberapa tabel dan tampilan dalam satu pernyataan.

AKTIF ALL TABLES DI SCHEMA schema_name

Memberikan izin yang ditentukan pada semua tabel dan tampilan dalam skema yang direferensikan.

(column_name [,...]) DI table_name TABLE

Memberikan izin yang ditentukan kepada pengguna, grup, atau PUBLIC pada kolom yang ditentukan dari tabel atau tampilan Amazon Redshift.

(column_list) DI schema_name.table_name EXTERNAL TABLE

Memberikan izin yang ditentukan untuk IAM peran pada kolom yang ditentukan dari tabel Lake Formation dalam skema yang direferensikan.

PADA EXTERNAL TABLE schema_name.table_name

Memberikan izin yang ditentukan untuk IAM peran pada tabel Lake Formation yang ditentukan dalam skema yang direferensikan.

PADA EXTERNAL SCHEMA schema_name

Memberikan izin yang ditentukan untuk IAM peran pada skema yang direferensikan.

DI iam_role

Memberikan izin yang ditentukan untuk peranIAM.

Untuk nama pengguna

Menunjukkan pengguna yang menerima izin.

KE IAM _ ROLE iam_role

Menunjukkan IAM peran yang menerima izin.

WITH GRANT OPTION

Menunjukkan bahwa pengguna yang menerima izin pada gilirannya dapat memberikan izin yang sama kepada orang lain. WITHGRANTOPTIONtidak dapat diberikan kepada kelompok atau untukPUBLIC.

ROLErole_name

Memberikan izin untuk peran.

GROUPgroup_name

Memberikan izin ke grup pengguna. Dapat berupa daftar yang dipisahkan koma untuk menentukan beberapa grup pengguna.

PUBLIC

Memberikan izin yang ditentukan untuk semua pengguna, termasuk pengguna yang dibuat nanti. PUBLICmewakili grup yang selalu mencakup semua pengguna. Izin pengguna individu terdiri dari jumlah izin yang diberikan kepadaPUBLIC, izin yang diberikan kepada grup mana pun yang dimiliki pengguna, dan izin apa pun yang diberikan kepada pengguna secara individual.

Pemberian PUBLIC ke Lake Formation EXTERNAL TABLE menghasilkan pemberian izin kepada kelompok Lake Formation semua orang.

CREATE

Bergantung pada objek database, memberikan izin berikut kepada pengguna atau grup pengguna:

  • Untuk database, CREATE memungkinkan pengguna untuk membuat skema dalam database.

  • Untuk skema, CREATE memungkinkan pengguna untuk membuat objek dalam skema. Untuk mengganti nama objek, pengguna harus memiliki CREATE izin dan memiliki objek yang akan diganti namanya.

  • CREATEON SCHEMA tidak didukung untuk skema eksternal Amazon Redshift Spectrum. Untuk memberikan penggunaan tabel eksternal dalam skema eksternal, berikan USAGE ON SCHEMA kepada pengguna yang membutuhkan akses. Hanya pemilik skema eksternal atau superuser yang diizinkan untuk membuat tabel eksternal dalam skema eksternal. Untuk mentransfer kepemilikan skema eksternal, gunakan ALTER SCHEMA untuk mengubah pemilik.

TEMPORARY | TEMP

Memberikan izin untuk membuat tabel sementara dalam database yang ditentukan. Untuk menjalankan kueri Amazon Redshift Spectrum, pengguna database harus memiliki izin untuk membuat tabel sementara dalam database.

catatan

Secara default, pengguna diberikan izin untuk membuat tabel sementara dengan keanggotaan otomatis mereka dalam PUBLIC grup. Untuk menghapus izin bagi setiap pengguna untuk membuat tabel sementara, cabut TEMP izin dari grup. PUBLIC Kemudian secara eksplisit memberikan izin untuk membuat tabel sementara untuk pengguna atau grup pengguna tertentu.

PADA DATABASE db_name

Memberikan izin yang ditentukan pada database.

USAGE

Memberikan USAGE izin pada skema tertentu, yang membuat objek dalam skema itu dapat diakses oleh pengguna. Tindakan spesifik pada objek ini harus diberikan secara terpisah (misalnya, SELECT atau UPDATE izin pada tabel) untuk skema Amazon Redshift lokal. Secara default, semua pengguna memiliki CREATE dan USAGE izin pada PUBLIC skema.

Saat Anda USAGE memberikan skema eksternal menggunakan SCHEMA sintaks ON, Anda tidak perlu memberikan tindakan secara terpisah pada objek dalam skema eksternal. Izin katalog yang sesuai mengontrol izin granular pada objek skema eksternal.

PADA SCHEMA schema_name

Memberikan izin yang ditentukan pada skema.

GRANTCREATEON SCHEMA dan CREATE izin di GRANT ALL ON SCHEMA tidak didukung untuk skema eksternal Amazon Redshift Spectrum. Untuk memberikan penggunaan tabel eksternal dalam skema eksternal, berikan USAGE ON SCHEMA kepada pengguna yang membutuhkan akses. Hanya pemilik skema eksternal atau superuser yang diizinkan untuk membuat tabel eksternal dalam skema eksternal. Untuk mentransfer kepemilikan skema eksternal, gunakan ALTER SCHEMA untuk mengubah pemilik.

EXECUTEAKTIF ALL FUNCTIONS DI SCHEMA schema_name

Memberikan izin yang ditentukan pada semua fungsi dalam skema yang direferensikan.

Amazon Redshift tidak mendukung GRANT atau REVOKE pernyataan untuk entri bawaan pg_proc yang ditentukan dalam namespace pg_catalog.

EXECUTEON PROCEDURE prosedur_name

Memberikan EXECUTE izin pada prosedur tersimpan tertentu. Karena nama prosedur yang disimpan dapat kelebihan beban, Anda harus menyertakan daftar argumen untuk prosedur tersebut. Untuk informasi selengkapnya, lihat Penamaan prosedur tersimpan.

EXECUTEAKTIF ALL PROCEDURES DI SCHEMA schema_name

Memberikan izin yang ditentukan pada semua prosedur yang disimpan dalam skema yang direferensikan.

USAGEDI LANGUAGE language_name

Memberikan USAGE izin pada suatu bahasa.

LANGUAGEIzin USAGE ON diperlukan untuk membuat fungsi yang ditentukan pengguna (UDFs) dengan menjalankan perintah. CREATE FUNCTION Untuk informasi selengkapnya, lihat UDFkeamanan dan izin.

LANGUAGEIzin USAGE ON diperlukan untuk membuat prosedur tersimpan dengan menjalankan CREATE PROCEDURE perintah. Untuk informasi selengkapnya, lihat Keamanan dan hak istimewa untuk prosedur tersimpan .

Untuk PythonUDFs, gunakan. plpythonu Untuk SQLUDFs, gunakansql. Untuk prosedur yang disimpan, gunakanplpgsql.

FOR { ALL | COPY | UNLOAD | EXTERNAL FUNCTION | CREATE MODEL } [, ...]

Menentukan SQL perintah yang izin diberikan. Anda dapat menentukan ALL untuk memberikan izin padaCOPY,, UNLOAD EXTERNALFUNCTION, dan CREATE MODEL pernyataan. Klausul ini hanya berlaku untuk pemberian izin. ASSUMEROLE

ALTER

Memberikan ALTER izin kepada pengguna untuk menambah atau menghapus objek dari datashare, atau untuk mengatur properti. PUBLICACCESSIBLE Untuk informasi selengkapnya, lihat ALTER DATASHARE.

SHARE

Memberikan pemrissions kepada pengguna dan grup pengguna untuk menambahkan konsumen data ke datashare. Izin ini diperlukan untuk mengaktifkan konsumen tertentu (akun atau namespace) untuk mengakses datashare dari cluster mereka. Konsumen dapat berupa AWS akun yang sama atau berbeda, dengan namespace cluster yang sama atau berbeda seperti yang ditentukan oleh pengidentifikasi unik global (). GUID

ON DATASHARE datashare_name

Memberikan izin yang ditentukan pada datashare yang direferensikan. Untuk informasi tentang perincian kontrol akses konsumen, lihat. Berbagi data di berbagai tingkatan di Amazon Redshift

USAGE

Ketika USAGE diberikan ke akun konsumen atau namespace dalam akun yang sama, akun konsumen tertentu atau namespace dalam akun dapat mengakses datashare dan objek datashare dengan cara hanya-baca.

KE NAMESPACE 'clusternamespace 'GUID

Menunjukkan namespace di akun yang sama di mana konsumen dapat menerima izin yang ditentukan untuk datashare. Ruang nama menggunakan alfanumerik 128-bit. GUID

Untuk ACCOUNT 'accountnumber' [] VIA DATA CATALOG

Menunjukkan jumlah akun lain yang konsumennya dapat menerima izin yang ditentukan untuk datashare. Menentukan 'VIADATACATALOG' menunjukkan bahwa Anda memberikan penggunaan datashare ke akun Lake Formation. Menghilangkan parameter ini berarti Anda memberikan penggunaan ke akun yang memiliki cluster.

DI DATABASE shared_database_name> [,...]

Memberikan izin penggunaan yang ditentukan pada database tertentu yang dibuat dalam datashare yang ditentukan.

DI SCHEMA shared_schema

Memberikan izin yang ditentukan pada skema tertentu yang dibuat dalam datashare yang ditentukan.

FOR{SCHEMAS| TABLES | FUNCTIONS | PROCEDURES |LANGUAGES} DI

Menentukan objek database untuk memberikan izin untuk. Parameter berikut IN menentukan ruang lingkup izin yang diberikan.

CREATE MODEL

Memberikan CREATE MODEL izin kepada pengguna atau grup pengguna tertentu.

PADA MODEL model_name

Memberikan EXECUTE izin pada model tertentu.

ACCESS CATALOG

Memberikan izin untuk melihat metadata objek yang relevan yang dapat diakses oleh peran tersebut.

{peran} [,...]

Peran yang akan diberikan kepada peran lain, pengguna, atauPUBLIC.

PUBLICmewakili grup yang selalu mencakup semua pengguna. Izin pengguna individu terdiri dari jumlah izin yang diberikan kepadaPUBLIC, izin yang diberikan kepada grup mana pun yang dimiliki pengguna, dan izin apa pun yang diberikan kepada pengguna secara individual.

KE {{user_name [WITHADMINOPTION]} | peran} [,...]

Memberikan peran yang ditentukan kepada pengguna tertentu dengan WITH ADMINOPTION, peran lain, atauPUBLIC.

WITHADMINOPTIONKlausul tersebut memberikan opsi administrasi untuk semua peran yang diberikan kepada semua penerima hibah.

EXPLAINRLSUntuk ROLE rolename

Memberikan izin untuk menjelaskan filter kebijakan keamanan tingkat baris dari kueri dalam EXPLAIN rencana ke peran.

IGNORERLSUntuk ROLE rolename

Memberikan izin untuk melewati kebijakan keamanan tingkat baris untuk kueri ke peran.

Untuk mempelajari lebih lanjut tentang catatan penggunaanGRANT, lihatCatatan penggunaan.

Untuk contoh cara menggunakanGRANT, lihatContoh.