PRAKTIKUM DCL
Bismillah, hai teman-teman!
Kali ini saya akan menampilkan praktikum DCL.
Data Control Language (DCL) adalah salah satu dari
kelompok perintah SQL yang digunakan untuk melakukan
kontrol terhadap privilege atau hak akses khusus untuk
berinteraksi dengan database. Hak akses khusus ini
diperlukan sebagai prasyarat bagi setiap user database
untuk melakukan berbagai aksi di database, seperti:
membuat object, menghapus object, mengubah object,
menampilkan hasil query, dan seterusnya.
Sebagai seorang administrator databse, user ROOT mempunyai hak dalam membuat user dan memberikan hak-hal akses terhadap user baru tersebut.
Menambahkan user:
Insert into user (host, user, password)
Values ('Localhost','langit',password('malam'));
Flush Privileges;
Keterangan:
- Host : Localhost --> user hanya dapat mengakses MySQL hanya di komputer local/server saja.
- IP Address --> user hanya dapat mengakses MySQL di komputer dengan alamat IP yang telah didefinisikan.
- % --> user dapat mengakses MySQL dari komputer manapun.
- user --> nama atau id yang digunakan untuk login.
- Password --> digunakan untuk keamanan server database dan password di enkripsi untuk keamananan user.
- Flush Privileges --> wajib diberikan untuk menetapkan user dalam server dan digunakan selain pembuatan user baru juga dalam mengedit user manapun menghapus user dari server.
Hak Akses User
DCL merupakan kontrol keamanan terhadap database dan tabelnya, yaitu mengatur hak akses, agar tabel-tabel tertentu hanya bisa diakses oleh orang-orang yang dikehendaki.
Grant
Grant digunakan untuk mengizinkan seorang user mengakses tabel dalam databse tertentu. pemberian hak akses ini dengan clausa GRANT.
Perintah: Grant hak_akses On nama_tabel To nama_user
Keterangan:
Hak akses adalah hak-hak yang diberikan server administrator kepada user, antara lain: ALTER, CREATE, DELETE, DROP, UPDATE, INSERT, FILE, PROCESS, RELOAD, REFERENCES, LOAD, SHUTDOWN DAN USAGE.
Nama tabel adalah nama-nama tabel yang akan diakses atau pemberian hak kepada user.
Pemakai adalah nama user yang akan diberi hak, dengan ketentuan nama pemakai diikuti nama dari host diawali tanda @.
Contoh:
Diberikan hak akses semua tabel dalam database praktikum terhadap user langit di localhost:
- grant all privileges on praktikum. * to langit@localhost:
- flush privileges;
Diberikan hak akses insert dan select dalam databse orderentry dengan tabel customers terhadap user langit di localhost:
grant select , insert on orderentry.customers to langit@localhost;
flush privileges;
Revoke
Revoke digunakan untuk mencabut hak akases seorang user untuk mengakses table dalam database tertentu. Pencabutan hak akses ini dengam clausa REVOKE.
Perintah: Revoke hak_akses On nama_tabel from nama_user
Keterangan:
Hak akses adalah hak-hak yang diberikan server administrator kepada user, antara lain: ALTER, CREATE, DELETE, DROP, UPDATE, INSERT, FILE, PROCESS, RELOAD, REFERENCES, LOAD, SHUTDOWN DAN USAGE.
Nama tabel adalah nama-nama tabel yang akan diakses atau pemberian hak kepada user.
Pemakai adalah nama user yang akan diberi hak, dengan ketentuan nama pemakai diikuti nama dari host diawali tanda @.
Contoh:
Dicabut semua hak akses semua tabel dalam database praktikum terhadap user dnd di localhost.
- revoke all privileges on praktikum.* from langit@localhost;
- flush privileges;
Dicabut hak akses insert dan select dalam database orderentry dengan tabel customers terhadap user langit di localhost.
- revoke select, insert on orderentry. customers from langit@localhost;
- flush privileges.
Tugas Praktikum
1. Membuat sebuah user baru dengan nama diri
2. Memberikan/mencabut hak akses terhadap user baru dengan grant insert pada table vendors
3. Mengecek hasil pemberian hak akses dengan melakukan login dan insert/update/delete data table vedors menggunakan user tersebut
4. Mencabut hak akses tersebut dengan revoke
5. Setelah hak askses dicabut.
Terima kasih! ^^


.png)
.png)
.png)
.png)
.png)
Komentar
Posting Komentar