Pemberian SELECT atau EXECUTE hak istimewa untuk objek SYS - Layanan Basis Data Relasional Amazon

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

Pemberian SELECT atau EXECUTE hak istimewa untuk objek SYS

Biasanya Anda mentransfer hak istimewa dengan menggunakan peran, yang dapat berisi banyak objek. Untuk memberikan hak istimewa ke satu objek, gunakan RDS prosedur rdsadmin.rdsadmin_util.grant_sys_object Amazon. Prosedur ini memberikan hanya hak istimewa yang telah diberikan kepada pengguna master melalui peran atau pemberian langsung.

Prosedur grant_sys_object memiliki parameter berikut.

penting

Untuk semua nilai parameter, gunakan huruf besar kecuali jika Anda membuat pengguna dengan pengidentifikasi yang peka huruf besar. Misalnya, jika Anda menjalankan CREATE USER myuser atau CREATE USER MYUSER, kamus data menyimpan MYUSER. Namun, jika Anda menggunakan tanda kutip ganda di CREATE USER "MyUser", kamus data menyimpan MyUser.

Nama parameter Jenis data Default Wajib Deskripsi

p_obj_name

varchar2

Ya

Nama objek untuk menerima pemberian hak istimewa. Objek dapat berupa direktori, fungsi, paket, prosedur, urutan, tabel, atau tampilan. Nama objek harus dieja persis seperti yang muncul di DBA_OBJECTS. Sebagian besar objek sistem didefinisikan dalam huruf besar, jadi kami menyarankan Anda untuk mencobanya terlebih dahulu.

p_grantee

varchar2

Ya

Nama objek untuk menerima pemberian hak istimewa. Objek dapat berupa skema atau peran.

p_privilege

varchar2

null

Ya

p_grant_option

boolean

false

Tidak

Tetapkan ke true untuk menggunakan opsi pemberian.

Contoh berikut memberikan hak istimewa tertentu pada objek yang diberi nama V_$SESSION ke pengguna bernama USER1.

begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'V_$SESSION', p_grantee => 'USER1', p_privilege => 'SELECT'); end; /

Contoh berikut memberikan hak istimewa tertentu pada objek yang diberi nama V_$SESSION ke pengguna bernama USER1 dengan opsi pemberian.

begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'V_$SESSION', p_grantee => 'USER1', p_privilege => 'SELECT', p_grant_option => true); end; /

Agar dapat memberikan hak istimewa kepada suatu objek, akun Anda harus memiliki hak istimewa yang diberikan kepadanya secara langsung dengan opsi pemberian, atau melalui peran yang diberikan menggunakan with admin option. Dalam kasus yang paling umum, Anda mungkin ingin memberikan SELECT DBA pandangan yang telah diberikan untuk SELECT_CATALOG_ROLE peran tersebut. Jika peran tersebut belum diberikan secara langsung kepada pengguna Anda menggunakan with admin option, Anda tidak dapat mentransfer hak istimewa tersebut. Jika Anda memiliki hak DBA istimewa, maka Anda dapat memberikan peran langsung ke pengguna lain.

Contoh berikut memberikan SELECT_CATALOG_ROLE dan EXECUTE_CATALOG_ROLE kepada USER1. Sejak with admin option digunakan, sekarang USER1 dapat memberikan akses ke SYS objek yang telah diberikan kepadaSELECT_CATALOG_ROLE.

GRANT SELECT_CATALOG_ROLE TO USER1 WITH ADMIN OPTION; GRANT EXECUTE_CATALOG_ROLE to USER1 WITH ADMIN OPTION;

Objek yang telah diberikan kepada PUBLIC tidak perlu diberikan ulang. Jika Anda menggunakan prosedur grant_sys_object untuk memberikan ulang akses, pemanggilan prosedur berhasil.