Bahasa Kawalan Data (DCL)

GANTI, REVOKE dan DENY Kebenaran Pangkalan Data

Bahasa Kawalan Data (DCL) adalah subset dari Bahasa Kuiz Terstruktur (SQL) dan membolehkan pentadbir pangkalan data untuk mengkonfigurasi akses keselamatan kepada pangkalan data hubungan. Ia melengkapi Bahasa Definisi Data (DDL), yang digunakan untuk menambah dan memadam objek pangkalan data, dan Data Manipulation Language (DML) digunakan untuk mengambil, memasukkan, dan memodifikasi kandungan pangkalan data.

DCL adalah yang paling mudah dari subset SQL , kerana ia terdiri daripada hanya tiga perintah: GERAN, REVOKE, dan DENY. Dikombinasikan, tiga arahan ini memberikan pentadbir dengan fleksibiliti untuk menetapkan dan mengalih keluar kebenaran pangkalan data dalam fesyen yang sangat berbutir.

Menambah Kebenaran Dengan Perintah GRANT

Perintah GRANT digunakan oleh pentadbir untuk menambah kebenaran baru kepada pengguna pangkalan data . Ia mempunyai sintaks yang sangat mudah, seperti berikut:

GRANT [keistimewaan] ON [object] TO [user] [WITH OPTION GRANT]

Inilah rundown pada setiap parameter yang anda dapat membekalkan dengan perintah ini:

Contohnya, anggap anda ingin memberikan pengguna keupayaan Joe untuk mendapatkan maklumat dari jadual pekerja dalam pangkalan data yang disebut HR. Anda mungkin menggunakan arahan SQL berikut:

PILIHAN PELANGGAN KEPADA HR.employees TO Joe

Joe kini akan mempunyai keupayaan untuk mendapatkan maklumat daripada jadual pekerja. Dia tidak akan dapat memberi kebenaran kepada pengguna lain untuk mengambil maklumat dari jadual itu kerana anda tidak memasukkan klausa OPTION DENGAN DENGAN pernyataan GERAN.

Membatalkan Akses Pangkalan Data

Perintah REVOKE digunakan untuk mengalih keluar akses pangkalan data dari pengguna yang sebelum ini diberikan akses tersebut. Sintaks untuk arahan ini ditakrifkan seperti berikut:

REVOKE [PILIHAN GAN UNTUK] [kebenaran] PADA [objek] DARI [pengguna] [CASCADE]

Inilah ringkasan pada parameter untuk arahan REVOKE:

Sebagai contoh, arahan berikut membatalkan kebenaran yang diberikan kepada Joe dalam contoh terdahulu:

PEMULIHAN PEMULIHAN DENGAN HR.employees FROM Joe

Cukup Menolak Akses Pangkalan Data

Perintah DENY digunakan untuk secara jelas menghalang pengguna daripada menerima kebenaran tertentu. Ini berguna apabila pengguna adalah ahli peranan atau kumpulan yang diberi kebenaran, dan anda mahu menghalang pengguna itu daripada mewarisi kebenaran dengan membuat pengecualian. Sintaks untuk arahan ini adalah seperti berikut:

DENY [kebenaran] ON [object] TO [user]

Parameter untuk arahan DENY adalah sama dengan yang digunakan untuk perintah GRANT.

Contohnya, jika anda ingin memastikan bahawa Matthew tidak akan menerima keupayaan untuk memadam maklumat dari jadual pekerja, mengeluarkan arahan berikut:

DENY DELETE ON HR.employees TO Matthew