Dasar Teori
Pada dasarnya data-data yang tersimpan dalam database merupakan sumber dari informasi
berharga maka, hanya orang-orang tertentu yang diizinkan membuat,melihat, merubah, maupun
menghapus data dalam sebuah database. Izin hak akses database biasa dilakukan seorang Database
Administrator (DBA) sebagai hal preventif menjaga keamanan data pada database. Selain sebagai
security database hak akses user digunakan untuk memberikan batasan fasilitas kepada setiap user
yang berhubungan langsung dengan database. Ada 5 hal yang paling dasar pekerjaan DBA
memberikan wewenang kepada User account terhadap database:
Membatasi User akses data table baik untuk melihat struktur table melihat data maupun
melakukan operasi manipulasi data seperti Insert, Update, Delete data
Membatasi user akses view database baik melihat, maupun merubauh struktur view
Membatasi user akses strored procedure baik execute dan merubah struktur SQL didalam
stored procedure tersebut.
Membatasi Host akses yang digunakan user baik local host (127.0.0.1), user akses dalam
jaringan LAN dan Remot IP Public.
Memberikan timer user akses database pada saat jam kerja saja misalnya diluar jam kerja
user tidak dapat melakukan akses database.
Memberikan otoritas user untuk create tabel, view function, stored procedure , trigger
Pemberian otoritas pada sejumlah pemakai (user) dalam pengakses basis data maupun objek-
objek pertama kali dilakukan oleh DBA (Database Administrator). Selanjutnya para pemakai yang
telah mendapatkan otoritas akses dari DBA ini dapat memberikan otoritas yang sama atau lebih
rendah pada pemakai lainnya, tetapi tidak mungkin memberi otoritas yang lebih tinggi atau lebih
banyak otoritas yang diberikan untuk mengakses basis data dan dapat juga dibatalkan / ditarik
kembali. Pembatalan otoritas pada seseorang pemakai akan juga secara otomatis membatalkan
pemberian otoritas yang sama yang diberikan pemakai tersebut pada pemakai lainnya.
1. Keamanan yang bersifat fisik (physical security), yaitu yang berdasar pada aspek fisik
perangkat. Misalkan ruang server, kunci komputer, kartu elektronis.
2. Keamanan yang berhubungan dengan orang (personel), yaitu user yang
diberi labelling untuk privillege akses pengguna.
3. Keamanan dari data dan media serta teknik komunikasi, yaitu bagaimana agar prosedur
penyimpanan lebih aman, begitu juga pada media yang digunakan dan teknik untuk
mengamankan data tersebut.
4. Keamanan dalam operasi, yaitu menyusun mekanisme pengoperasian user agar terkontrol
sehingga dapat diantisipasi kesalahan yang terjadi saat penyimpanan dan pengambilan data.
Aspek untuk mendukung Keamanan Basis Data :
1. Network security, memfokuskan kepada saluran pembawa informasi serta sistem yang
terintegrasi kepadanya (host dan kanal).
2. Application security, memfokuskan kepada aplikasi itu sendiri (yang digunakan untuk basis
data atau yang menjadi antar-muka kepada basis data), beserta aplikasi dukungan lainnya
kepada basis data itu sendiri.
3. Computer security, memfokuskan kepada keamanan dari komputer (end system) yang
digunakan, khususnya hardware pada komputer tersebut.
Privacy / confidentiality
Seperti bagaimana memproteksi data bersifat pribadi yang sensitif seperti:nama, tempat
tanggal lahir, agama, hobby, penyakit yang pernah diderita, status perkawinan; data pelanggan; dan
transaksi pada e-commerce. Juga khususnya melakukan proteksi terhadap serangan sniffer.
Integrity
Authentication (otentikasi)
Tindakan otentifikasi dilakukan untuk meyakinkan keaslian data, sumber data yang
diakses, user yang mengakses data, serta server yang digunakan, dengan melakukan cara seperti:
penggunaan digital signature, dan biometrics.
Availability
Non-repudiation
Dengan adanya access control, maka ada sebuah mekanisme yang digunakan untuk
mengatur user dan akses yang dilakukan oleh user (siapa boleh melakukan apa).
Dengan menggunakan password.
Membuat kelas / klasifikasi privillege- user.
4. Keselamatan Kerja
1. Sebelum melakukan langkah percobaan, pastikan kabel power terhubung ke Power Supply.
2. Matikan komputer setelah praktikum selesai.
5. Langkah Kerja
1. Apabila saat proses instalasi Sql Server, anda menggunakan Windows Authentication, maka
anda dapat menambahkan Authentifikasi SQl, dengan cara memilih Properties, seperti
gambar dibawah ini.
2. Pada bagian Security, pilih SQL Server and Windows Authentication mode lalu klik Ok.
MENAMBAH USER
1. Jika Administrator database anda adalah Windows Autentication, maka untuk membuat
User, anda harus login sebagai Administrator.
2. Untuk menambah User baru, pada bagian Object Explorer, pilih Security kemudian pada
menu Logins, klik kanan lalu pilih New Login.
3. Akan muncul tampilan berikut, pada bagian SQL Server authentication, masukkan password
login untuk user yang anda buat, kemudian pilih Ok.
4. Pada bagian Server Roles, pilihlah role untuk user seperti public, dbcreator, sesuai dengan
otoritas yang anda inginkan, lalu pilih Ok.
5. Pada bagian User Mapping, Pilihlah default database yang anda izinkan penggunaannya,
kemudian klik Ok.
6. Pada bagian Status, pilih dan klik Grant dan Enabled untuk memberikan hak akses yang
diizinkan pada user, kemudian klik Ok.
7. Apabila anda ingin menggunakan Query, maka anda dapat menggunakan sintaks dibawah
ini, dengan terlebih dahulu memilih tools New Query pada bagian kiri atas.
8. Lakukan perintah restart, untuk menyimpan perubahan yang telah anda lakukan.
9. Apabila anda ingin menjadikan user yang anda telah buat menjadi Disable, maka jalankan
query dibawah ini.
10. Maka secara otomatis, bagian Login Properties untuk user tersebut menjadi Disable.
11. Untuk menghapus User, gunakan perintah Drop User <nama_user>, dengan terlebih dahulu
memasukkan nama Default Database pada User tersebut.
12. Untuk mengecek bahwa apakah pembuatan user kita berhasil, maka masuklah kembali pada
SQL Server Management Studio, seperti gambar dibawah ini, kemudian klik Connect.
MEMBUAT ROLE
1. Gunakan query dibawah ini untuk membuat Role bernama Audit dengan authorisasi sebagai
Security Admin, klik perintah Execute untuk menjalankannya.
3. Gunakan pula perintah berikut untuk membuat Role database. Dengan cara memilih nama
database anda lalu pilih Security > Roles, pada Database Roles, klik kanan lalu pilih New
Database Role.
4. Pada Role Name, isikan nama Role yang anda ingin buat, lalu klik Ok.
5. Maka Role yang anda buat, akan muncul seperti pada gambar berikut.
3. Perintah Grant yang diikuti oleh With Grant Option, berarti kita mengizinkan Teller agar
dapat menjalankan perintah Select, serta mengizinkannya agar dapat memberi has akses
berupa Select ke User lain.
4. Perintah Revoke merupakan kebalikan dari perintah Grant, yaitu untuk membuang hak akses
tertentu yang telah administrator berikan.
5. Untuk menghapus Role, anda dapat menggunakan perintah berikut.
1. Perintah dibawah ini dapat digunakan untuk membuat tabel bernama Pegawai, dengan
kolom berupa no_induk dan nama_karyawan.
2. Untuk menampilkan tabel yang telah dibuat, maka anda harus keluar dari SQL Management
studio, lalu login kembali, karena biasanya tabel yang telah dibuat, tidak langsung muncul.
3. Berikut adalah contoh penggunaan perintah Delete, untuk tabel bernama Acara, perintah
tersebut untuk menghapus isi pada tabel Acara.
4. Perintah berikut adalah perintah Select, untuk menampilkan kolom ataupun baris yang kita
ingin lihat.
Kode_Acara merupakan nama kolom, sedangkan Jenis_Acara merupakan nama tabel.
Perintah Select * berarti kita ingin memilih semua isi yang ada pada tabel peserta.
Analisa : Apabila pada saat proses instalasi, anda memilih Windows Authentication Mode, maka
anda juga dapat menjadikannya SQL Server Authentication Mode tanpa harus meng-install kembali
aplikasi tersebut, dengan cara memilih menu Properties. Lakukan seperti gambar diatas, kemudian
pilih Ok.
Analisa : Untuk membuat User, maka anda harus login sebagai Administrator database, seperti
gambar diatas, karena Administrator dari database tersebut menggunakan Windows Authentication
Mode, maka pada saat login, digunakan authentication tersebut.
Analisa : Pada saat membuat User, maka kita harus memasukkan nama Default_Database untuk
User tersebut, seperti pada gambar diatas.
Analisa : Perintah Grant digunakan untuk memberi Otorisasi tertentu pada User seperti dapat
melakukan Select, Update, dan Delete. Sebelum perintah Grant, maka harus diikuti oleh nama dari
databasenya.
Analisa : Perintah Grant yang diikuti With Grant Option, berarti kita mengizinkan Teller agar dapat
menjalankan perintah Select, serta mengizinkannya agar dapat memberi has akses berupa Select ke
User lain
Analisa : Perintah Revoke merupakan kebalikan dari perintah Grant, yaitu digunakan untuk
membuang atau mencabut hak akses tertentu yang telah administrator berikan.
7. Kesimpulan
Pemberian otoritas pada sejumlah pemakai (user) dalam pengakses basis data maupun objek-
objek pertama kali dilakukan oleh DBA (Database Administrator). Selanjutnya para pemakai yang
telah mendapatkan otoritas akses dari DBA ini dapat memberikan otoritas yang sama atau lebih
rendah pada pemakai lainnya, tetapi tidak mungkin memberi otoritas yang lebih tinggi atau lebih
banyak otoritas yang diberikan untuk mengakses basis data dan dapat juga dibatalkan / ditarik
kembali. Pembatalan otoritas pada seseorang pemakai akan juga secara otomatis membatalkan
pemberian otoritas yang sama yang diberikan pemakai tersebut pada pemakai lainnya.
Grant digunakan untuk memberikan otoritas tertentu pada User seperti dapat menjalankan
perintah Select, Update, Delete maupun Create table.
Revoke merupakan kebalikan dari perintah Grant, yaitu digunakan untuk membuang atau
mencabut hak akses tertentu yang telah administrator berikan.
Deny digunakan untuk melarang hak akses tertentu pada User.
Role adalah nama dari sekumpulan privilege yang saling berelasi dan diberikan pada user.
Role dibuat untuk mempermudah proses pemberian dan pelepasan privilege.
Daftar Pustaka :
https://sekolahtechno.blogspot.com/2016/05/sql-server-otoritas-dan-hak-akses.html