Jumat, 22 Juli 2011

Pembatasan Hak Akses User Pada Microsoft SQL Server 2008

Secara keseluruhan database yang dibuat pada Microsoft SQL Server 2008 dapat diakses secara penuh. Dalam dunia perkantoran, database pasti digunakan secara bersama – sama. Hal ini beresiko karena database penting dapat digunakan oleh setiap orang. Untuk itu, admin database harus membatasi hak akses user ke database, seperti sintaks INSERT, UPDATE, DELETE. Jadi user hanya bisa melihat data saja dengan menggunakan sintaks SELECT. Lalu bagaimana jika kita ingin agar sebuah user memiliki keterbatasan terhadap akses database sehingga data yang ada dapat terjaga.

Berikut langkah-langkah untuk membuat pembatasan hak akses atau yang lebih dikenal dengan istilah Grant User.

1. Langkah pertama login terlebih dahulu dengan menggunakan user default.


2. Kemudian buat user baru. Klik menu Security –> klik kanan pada menu Logins –> klik New Login.


3. Kemudian ketik nama user yang baru.
4. Hilangkan centang pada kotak Enforce password policy –>masukan password dan confirm password –> pada Default database pilih nama database yang ingin diberikan akses.


5. Kemudian pilih tab User Mapping


6. Maka akan muncul tampilan seperti di bawah ini. Kemudian beri tanda checkilst pada kotak nama database yang telah di pilih sebelumnya.

7. Pada database role membership, beri tanda checklist pada db_owner dan db_denydatawriter agar user hanya mempunyai hak untuk melihat isi tabel.

8.Kemudian klik Ok


9. Setelah itu refresh dan kemudian lihat pada menu Logins , maka akan muncul nama user yang baru saja dibuat.


10. Logout dari user default, dengan cara mengklik Disconnect.


11. Kemudian login kembali dengan mengklik Connect untuk melakukan pengujian dengan menggunakan user yang baru dibuat.


12. Masukkan username dan password dari user yang baru saja dibuat –> klik Connect.


13. Setelah login, coba klik database lain selain database yang telah disetting sebelumnya. Maka akan muncul prompt error, karena user tidak memiliki hak akses terhadap database lain.


14. Kemudian coba hak akses tadi dengan cara membuat query sintaks, yaitu dengan menggunakan perintah SELECT, INSERT, UPDATE, dan DELETE. Apabila dengan menggunakan sintaks SELECT berhasil, kemudian bila menggunakan sintaks INSERT, UPDATE, dan DELETE maka akan muncul tulisan error. Itu artinya akses berhasil dilakukan (terblokir), jadi sembarang user tidak dapat mengaksesnya.