SlideShare a Scribd company logo
1 of 9
Download to read offline
Kuliah Umum IlmuKomputer.Com
Copyright © 2004 IlmuKomputer.Com
1
SSeeccuurriittyy PPaaddaa SSQQLL SSeerrvveerr
Agus Pamujiono
ag_kanedrew@yahoo.com
Pada pembuatan database client-server tidak boleh diabaikan masalah security. Security
database di SQL Server cukup handal untuk databese menengah ke atas. Security system ini
berhubungan erat dengan autoritas sebuah client dalam berkomunikasi dengan database.
Sebuah user di SQL server dapat kita buat langsung dari SQL Server Enterprise Manager atau
mapping dari user di Windows NT/2000. User default Administrator di SQL Server adalah “sa”
dengan password <blank>. User ID tidak bisa kita ganti, akan tetapi kita bisa membuat User ID
yang mempunyai Autoritas yang sama dengan “sa” sebagai Administrator.
Password untuk user “sa” dapat kita ganti sesuka kita meskipun database sudah terbantuk. Hal
ini tidak akan memberi efek apa-apa pada database. Akan tetapi bisa menyebabkan error
koneksi pada aplikasi yang sudah kita bangun sebelumnya. Error koneksi pada aplikasi dapat
kita atasi dengan cara membuka source programnya dan mengganti password. Error koneksi
tidak akan terjadi di aplikasi jika aplikasi kita bangun dengan koneksi langsung ke database
SQL Servernya.
TEKNIK SECURITY
Ada banyak teknik security pada aplikasi. Security pada aplikasi dapat kita ciptakan sendiri
dengan cara membuat sebuah tabel user beserta otoritasnya untuk sebuah aplikasi tertentu. Akan
tetapi hal ini kurang aman bilamana tabel yang kita buat sampai diketahui oleh orang yang tidak
berkepentingan.
Teknik kedua adalah membuat mapping untuk user sebuah Windows Server untuk akses
database. Meskipun hal ini mudah untuk dilakukan akan tetapi kita akan mengalami kendala
yang sama pada teknik kedua. Lebih dari itu, akan sangat rawan apabila user kita ceroboh saat
meninggalkan komputernya dalam keadaan On dan tanpa Re-Login.
Teknik lain adalah dengan cara mengintegrasikan User di database dengan apikasi. Hal ini
sangat terjamin keamanannya, karena encrypt password dan Autoritanya sudah di tangani oleh
SQL Server itu sendiri. Kerahasiaan passsword murni ada di tangan user dan administrator
database. Tinggal pandai-pandainya kita dalam membangun aplikasi untuk menangani error
yang di timbulkan oleh SQL Server. Error hande yang perlu kita tangani diantaranya adalah :
Lisensi Dokumen:
Copyright © 2004 IlmuKomputer.Com
Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan
disebarkan secara bebas untuk tujuan bukan komersial (nonprofit), dengan syarat
tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang
disertakan dalam setiap dokumen. Tidak diperbolehkan melakukan penulisan ulang,
kecuali mendapatkan ijin terlebih dahulu dari IlmuKomputer.Com.
Kuliah Umum IlmuKomputer.Com
Copyright © 2004 IlmuKomputer.Com
2
1. Login Error.
2. Autoritas atas permission komponen database (table, view, stored procedure, triger
dan function (Untuk SQL Server 2000))
Untuk lebih mengintegritaskan interface user permission dengan aplikasi kita, sebenarnya dapat
kita tangani dengani memanfaatkan teknik DMO atau NameSpace pada SQL Server (tidak
dibahas pada tulisan ini).
Selain teknik pembuatan user, yang perlu kita perhatikan dalam hal security adalah teknik
koneksi. Teknik koneksi juga banyak macamnya.
Teknik koneksi pertama adalah dengan membuat koneksi untuk sebuah user yang login sampai
dia log off, dan membiarkan user login dengan user id dan password yang sama di komputer
lain. Teknik ini sangat rawan sekali.
Teknik kedua adalah dengan membuat koneksi untuk sebuah user yang login sampai dia log off
dan tidak mengijikan user login di komputer lain dengan user id dan password yang sama.
Teknik ini lebih bagus dari teknik pertama.
Teknik ketiga adalah dengan membuat koneksi untuk sebuah user yang login sampai batas
waktu tertentu jika ia tidak beraktifitas di aplikasi tersebut dan atau sampai ia log off, juga tidak
mengijikan login di komputer lain dengan user id dan password yang sama dengan cara
memutus salah satu koneksinya. Untuk menentukan koneksi mana yang diputus, user ditawari
pilihan, ia akan memakai koneksi yang baru dengan memutus yang lama atau dia membatalkan
koneksi yang baru dengan membiarkan aktif oneksi yang lamanya. Teknik ini sangat aman,
meski agak sulit untuk diterapkan.
CARA MEMBUAT USER DI SQL SERVER
Kita dapat mendefinisikan user-user lain yang akan mengakses database tersebut di SQL Server
Enterprise Manager beserta otoritasnya, seperti Select, Insert, Update, Delete dan Execute. Cara
membuat user baru :
1. Buka SQL Server Enterprise Manager
2. Masuk server yang terkonek.
3. Pilih Security – Logins.
Kuliah Umum IlmuKomputer.Com
Copyright © 2004 IlmuKomputer.Com
3
4. Jika memilih Windows NT Authentication, Isikan Domain tempat user login dan pilih type
Access (Grant atau Deny). Jika memilih SQL Server Authentication Isikan User ID pada Name,
dan password.
Pilih database, dan pilih bahasa yang digunakan atau pilih <Default>.
5. Kemudian klik tab Server Roles untuk memilih group user dengan segala permissionnya.
Kuliah Umum IlmuKomputer.Com
Copyright © 2004 IlmuKomputer.Com
4
Roles dapat anda buat untuk kelompok user, supervisor dll, selain yang ada di default dari
SQL Server tersebut. Untuk membuat Roles baru, lihat pada bagian Roles.
6. Lalu klik tab Database Access untuk memilih database yang bisa diakses oleh user tersebut.
Setelah user baru terbentuk, anda bisa mengeditnya dengan cara klik kanan user tersebut, lalu pilih
Properties. Anda bisa mencoba login dengan user tersebut pada Query Analyzer.
Kuliah Umum IlmuKomputer.Com
Copyright © 2004 IlmuKomputer.Com
5
CARA MEMBUAT ROLES DI SQL SERVER
Roles adalah sebuah group user, yang artinya mengelompokkan beberapa user SQL Server yang
mempunyai hak akses sama. Hal ini memberi kemudahan saat beberapa user dalam kelompok
tersebut mengalami perubahan hak akses, sehingga kita tinggal merubah hak akses roles-nya maka
user-user yang ada dalam roles tersebut akan ikut berubah.
STANDARD ROLES
Untuk membuat sebuah roles (user group), masuk ke database tertentu lalu pilih roles. Kemudian
klik kanan pada window sebelah kanan, pilih New Database Role…
Isikan nama Role yang akan anda buat, lalu pilih anggotanya dengan menekan tombol Add…
dan pilih usernya.
Kuliah Umum IlmuKomputer.Com
Copyright © 2004 IlmuKomputer.Com
6
Setelah sebuah Role terbentuk barulah anda bisa menentukan akses permission pada role
tersebut dengan meng-klok kanan role yang anda buat, lalu klik tambol Permissions.
Dari sini anda dapat memilih tabel, view atau stored procedure yang dapat diakses oleh kelompok
user tersebut dengan Select, Insert, Update, Delete, Execute atau DRI (declarative referential
integrity).
CARA MEMBUAT PERMISSIONS
Untuk membuat permission pada sebuah user atau Roles tertentu anda bisa melakukannya dengan
cara masuk ke database dimana user tersebut memiliki hak akses, lalu pilih users, lalu properties.
Atau pilih Roles lalu klik properties. Kemudian klik tombol permissions.
Kuliah Umum IlmuKomputer.Com
Copyright © 2004 IlmuKomputer.Com
7
Dari sini anda dapat menentukan tabel, view atau stored procedure yang dapat diakses oleh user
tersebut dengan Select, Insert, Update, Delete, Execute atau DRI (declarative referential integrity).
Anda dapat mengkombinasikan permission pada User maupun pada Role. Kedudukan kedua
komponen database tersebut saling melengkapi. Akan tetapi apabila permission pada user dan role
bertentangan, maka permission yang tidak mengijinkan akan lebih dominan. Misalnya seorang user
U menjadi anggota role R dengan akses tabel X. Padahal permission pada user U tersebut tidak
mengijinkan untuk mengakses tabel A. Maka pada implementasinya, user U tersebut tidak akan
dapat mengakses tabel A.
Akan tetapi jika ada membuat permission pada user U dapat mengakses tabel A,B,C dan membuat
permission pada role R dapat mengakses tabel X,Y,X, dan user U tersebut menjadi anggota dari role
R, maka pada implementasinya user tersebut dapat mengakses tabel A,B,C,X,Y,Z.
CARA MENON-ACTIVE-KAN USER
Cara menon-aktive-kan user ada 2 cara, tergantung type dari user tersebut, apakah user tersebut
dibuat dari user Windows NT atau dari SQL Server.
Apabila user tersebut dibuat dari user Windows NT, anda dapat melakukannya dengan cara berikut :
Masuklah ke sebuah server dari Enterprise Manager, lalu pilih Security, kemudian klik login. Pada
window sebelah kanan pilih user yang akan di non-aktive-kan dengan cara klik kanan, properties.
Kemudian pilih option Deny access.
Kuliah Umum IlmuKomputer.Com
Copyright © 2004 IlmuKomputer.Com
8
Dengan demikian user tersebut sudah tidak bisa lagi mengakses database yang semula anda
definisikan untuknya. Akan tetapi jika setting tersebut anda kembalikan ke Grant access, maka
segala setting, baik untuk database, role dan setting akses pada user tersebut akan kembali
seperti semula.
Sedangkan untuk user yang dibuat dari SQL Server, anda tidak bisa membuat Deny access.
Yang bisa anda lakukan bagi user yang dibuat di SQL Server untuk menon-aktive-kan adalah
dengan menghilangkan permission aksesnya untuk semua database. Dengan demikian, user
tersebut masih ada akan tetapi tidak mempunyai akses ke database manapun. Saat itu anda
lakukan untuk sebuah user, maka semua permission yang telah anda set untuk user tersebut akan
hilang. Jika anda ingin mengaktifkan lagi, maka anda harus mengeset user tersebut pada
database yang anda inginkan, termasuk juga keanggotaanya pada sebuah role dan permission
akses yang ada pada user tersebut.
Kuliah Umum IlmuKomputer.Com
Copyright © 2004 IlmuKomputer.Com
9
CARA MENGHAPUS USER
Untuk menghapus user account, anda dapat melakukannya dengan cara masuklah ke sebuah
server dari Enterprise Manager, lalu pilih Security, kemudian klik login. Pada window sebelah
kanan pilih user yang akan di hapus dengan cara klik kanan, lalu pilih Delete.
WINDOWS NT AUTHENTICATION Vs SQL SERVER AUTHENTICATION
Windows NT Authentication mempunyai manfaat lebih dibandingkan dengan menggunakan
SQL Server Authentication.
Pertama, anda tidak perlu membuat user dan permission terpisah di SQL Server untuk
mengakses database.
Kedua, keamanan Windows NT menyediakan fitur lebih dibanding SQL Server Authentication.
Fitur ini meliputi password expired, panjang minimum password, dan maksimum login saat
terjadi kesalahan password.
Ketiga, SQL Server membaca informasi tentang para pemakai dan kelompok manakala pemakai
menghubungkan. Perubahan apapun yang dibuat untuk seorang user di account Windows NT
akan direlasikan ke user SQL Server.
Akan tetapi penggabungan dua metode di atas akan lebih mudah untuk pengaturannya jika
dibanding dengan hanya menggunakan Windows NT Authentication. Metode campuran ini
cocok untuk database yang tidak "mission-critical" atau tidak berisi data rahasia. Anda juga bisa
menggunakan hanya SQL Server Authentication untuk sebuah database dengan menyerahkan
segala fasilitas dan keamanannya pada SQL Server.

More Related Content

What's hot

17. aplikasi crud java sederhana menggunakan database my sql
17. aplikasi crud java sederhana menggunakan database my sql17. aplikasi crud java sederhana menggunakan database my sql
17. aplikasi crud java sederhana menggunakan database my sqlSaprudin Eskom
 
17. aplikasi crud java sederhana menggunakan database my sql
17. aplikasi crud java sederhana menggunakan database my sql17. aplikasi crud java sederhana menggunakan database my sql
17. aplikasi crud java sederhana menggunakan database my sqlSaprudin Eskom
 
Database Mirroring Microsoft Sql Server
Database Mirroring Microsoft Sql ServerDatabase Mirroring Microsoft Sql Server
Database Mirroring Microsoft Sql Serveramalifariid
 
Database Mirroring Microsoft SQL Server
Database Mirroring Microsoft SQL ServerDatabase Mirroring Microsoft SQL Server
Database Mirroring Microsoft SQL ServerTungky Pradana
 
Tutorial Instalisasi Oracle 10g dan Setting User
Tutorial Instalisasi Oracle 10g dan Setting UserTutorial Instalisasi Oracle 10g dan Setting User
Tutorial Instalisasi Oracle 10g dan Setting UserImam Halim Mursyidin
 
Sql server integration services
Sql server integration servicesSql server integration services
Sql server integration servicesSubandi Wahyudi
 
Tugas individu 2 dbms
Tugas individu 2 dbmsTugas individu 2 dbms
Tugas individu 2 dbmsaminah05
 

What's hot (7)

17. aplikasi crud java sederhana menggunakan database my sql
17. aplikasi crud java sederhana menggunakan database my sql17. aplikasi crud java sederhana menggunakan database my sql
17. aplikasi crud java sederhana menggunakan database my sql
 
17. aplikasi crud java sederhana menggunakan database my sql
17. aplikasi crud java sederhana menggunakan database my sql17. aplikasi crud java sederhana menggunakan database my sql
17. aplikasi crud java sederhana menggunakan database my sql
 
Database Mirroring Microsoft Sql Server
Database Mirroring Microsoft Sql ServerDatabase Mirroring Microsoft Sql Server
Database Mirroring Microsoft Sql Server
 
Database Mirroring Microsoft SQL Server
Database Mirroring Microsoft SQL ServerDatabase Mirroring Microsoft SQL Server
Database Mirroring Microsoft SQL Server
 
Tutorial Instalisasi Oracle 10g dan Setting User
Tutorial Instalisasi Oracle 10g dan Setting UserTutorial Instalisasi Oracle 10g dan Setting User
Tutorial Instalisasi Oracle 10g dan Setting User
 
Sql server integration services
Sql server integration servicesSql server integration services
Sql server integration services
 
Tugas individu 2 dbms
Tugas individu 2 dbmsTugas individu 2 dbms
Tugas individu 2 dbms
 

Similar to Sql server-security

DBA BAB 5 - Keamanan Database
DBA BAB 5 - Keamanan DatabaseDBA BAB 5 - Keamanan Database
DBA BAB 5 - Keamanan DatabaseRiza Nurman
 
Sistem Informasi Perbankan
Sistem Informasi PerbankanSistem Informasi Perbankan
Sistem Informasi PerbankanAzizul Hanif
 
Tugas 2 individu tentang dbms
Tugas 2 individu tentang dbmsTugas 2 individu tentang dbms
Tugas 2 individu tentang dbmsElma Fiana
 
Active Directory Win Server
Active Directory Win ServerActive Directory Win Server
Active Directory Win ServerHajra Rasmita
 
Basis data 5
Basis data 5Basis data 5
Basis data 5Febrienda
 
Distributed Database Using Oracle
Distributed Database Using OracleDistributed Database Using Oracle
Distributed Database Using OracleLaboratorium Sirkel
 
System proteksi pada windows 7
System proteksi pada windows 7System proteksi pada windows 7
System proteksi pada windows 7moha_kikuk
 
Oracle-Mengendalikan User
Oracle-Mengendalikan UserOracle-Mengendalikan User
Oracle-Mengendalikan Useridnats
 
Client server sql 001
Client server sql 001Client server sql 001
Client server sql 001LamataSingi
 
Article Pengenalan Konsep Xml Web Services
Article Pengenalan Konsep Xml Web ServicesArticle Pengenalan Konsep Xml Web Services
Article Pengenalan Konsep Xml Web ServicesFredy Budimansyah
 
SIM 10 : Nahdiyah Puji Lestari. Prof.Dr. Hapzi Ali, MM,CMA.Informasi Keamanan
SIM 10 : Nahdiyah Puji Lestari. Prof.Dr. Hapzi Ali, MM,CMA.Informasi KeamananSIM 10 : Nahdiyah Puji Lestari. Prof.Dr. Hapzi Ali, MM,CMA.Informasi Keamanan
SIM 10 : Nahdiyah Puji Lestari. Prof.Dr. Hapzi Ali, MM,CMA.Informasi Keamanannadiapuji98
 
Latihan administrasi basis data
Latihan administrasi basis dataLatihan administrasi basis data
Latihan administrasi basis dataDevandy Enda
 
Hak-Akses-User.pdf
Hak-Akses-User.pdfHak-Akses-User.pdf
Hak-Akses-User.pdfmedymanzoom
 
Client server database - Angga Joe
Client server   database - Angga JoeClient server   database - Angga Joe
Client server database - Angga JoeAngga Joe Amstrong
 
Kemanan Basis Data Aplikasi.pptx
Kemanan Basis Data Aplikasi.pptxKemanan Basis Data Aplikasi.pptx
Kemanan Basis Data Aplikasi.pptxRaukenVega
 

Similar to Sql server-security (20)

DBA BAB 5 - Keamanan Database
DBA BAB 5 - Keamanan DatabaseDBA BAB 5 - Keamanan Database
DBA BAB 5 - Keamanan Database
 
Keamanan sistem database
Keamanan sistem databaseKeamanan sistem database
Keamanan sistem database
 
Choirul (client-01)
Choirul (client-01)Choirul (client-01)
Choirul (client-01)
 
Sony (misconfig)
Sony (misconfig)Sony (misconfig)
Sony (misconfig)
 
Sistem Informasi Perbankan
Sistem Informasi PerbankanSistem Informasi Perbankan
Sistem Informasi Perbankan
 
Tugas 2 individu tentang dbms
Tugas 2 individu tentang dbmsTugas 2 individu tentang dbms
Tugas 2 individu tentang dbms
 
Active Directory Win Server
Active Directory Win ServerActive Directory Win Server
Active Directory Win Server
 
Basis data 5
Basis data 5Basis data 5
Basis data 5
 
Distributed Database Using Oracle
Distributed Database Using OracleDistributed Database Using Oracle
Distributed Database Using Oracle
 
System proteksi pada windows 7
System proteksi pada windows 7System proteksi pada windows 7
System proteksi pada windows 7
 
Oracle-Mengendalikan User
Oracle-Mengendalikan UserOracle-Mengendalikan User
Oracle-Mengendalikan User
 
02. membuat database
02. membuat database02. membuat database
02. membuat database
 
Client server sql 001
Client server sql 001Client server sql 001
Client server sql 001
 
Article Pengenalan Konsep Xml Web Services
Article Pengenalan Konsep Xml Web ServicesArticle Pengenalan Konsep Xml Web Services
Article Pengenalan Konsep Xml Web Services
 
Pertemuan 14
Pertemuan 14Pertemuan 14
Pertemuan 14
 
SIM 10 : Nahdiyah Puji Lestari. Prof.Dr. Hapzi Ali, MM,CMA.Informasi Keamanan
SIM 10 : Nahdiyah Puji Lestari. Prof.Dr. Hapzi Ali, MM,CMA.Informasi KeamananSIM 10 : Nahdiyah Puji Lestari. Prof.Dr. Hapzi Ali, MM,CMA.Informasi Keamanan
SIM 10 : Nahdiyah Puji Lestari. Prof.Dr. Hapzi Ali, MM,CMA.Informasi Keamanan
 
Latihan administrasi basis data
Latihan administrasi basis dataLatihan administrasi basis data
Latihan administrasi basis data
 
Hak-Akses-User.pdf
Hak-Akses-User.pdfHak-Akses-User.pdf
Hak-Akses-User.pdf
 
Client server database - Angga Joe
Client server   database - Angga JoeClient server   database - Angga Joe
Client server database - Angga Joe
 
Kemanan Basis Data Aplikasi.pptx
Kemanan Basis Data Aplikasi.pptxKemanan Basis Data Aplikasi.pptx
Kemanan Basis Data Aplikasi.pptx
 

Sql server-security

  • 1. Kuliah Umum IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com 1 SSeeccuurriittyy PPaaddaa SSQQLL SSeerrvveerr Agus Pamujiono ag_kanedrew@yahoo.com Pada pembuatan database client-server tidak boleh diabaikan masalah security. Security database di SQL Server cukup handal untuk databese menengah ke atas. Security system ini berhubungan erat dengan autoritas sebuah client dalam berkomunikasi dengan database. Sebuah user di SQL server dapat kita buat langsung dari SQL Server Enterprise Manager atau mapping dari user di Windows NT/2000. User default Administrator di SQL Server adalah “sa” dengan password <blank>. User ID tidak bisa kita ganti, akan tetapi kita bisa membuat User ID yang mempunyai Autoritas yang sama dengan “sa” sebagai Administrator. Password untuk user “sa” dapat kita ganti sesuka kita meskipun database sudah terbantuk. Hal ini tidak akan memberi efek apa-apa pada database. Akan tetapi bisa menyebabkan error koneksi pada aplikasi yang sudah kita bangun sebelumnya. Error koneksi pada aplikasi dapat kita atasi dengan cara membuka source programnya dan mengganti password. Error koneksi tidak akan terjadi di aplikasi jika aplikasi kita bangun dengan koneksi langsung ke database SQL Servernya. TEKNIK SECURITY Ada banyak teknik security pada aplikasi. Security pada aplikasi dapat kita ciptakan sendiri dengan cara membuat sebuah tabel user beserta otoritasnya untuk sebuah aplikasi tertentu. Akan tetapi hal ini kurang aman bilamana tabel yang kita buat sampai diketahui oleh orang yang tidak berkepentingan. Teknik kedua adalah membuat mapping untuk user sebuah Windows Server untuk akses database. Meskipun hal ini mudah untuk dilakukan akan tetapi kita akan mengalami kendala yang sama pada teknik kedua. Lebih dari itu, akan sangat rawan apabila user kita ceroboh saat meninggalkan komputernya dalam keadaan On dan tanpa Re-Login. Teknik lain adalah dengan cara mengintegrasikan User di database dengan apikasi. Hal ini sangat terjamin keamanannya, karena encrypt password dan Autoritanya sudah di tangani oleh SQL Server itu sendiri. Kerahasiaan passsword murni ada di tangan user dan administrator database. Tinggal pandai-pandainya kita dalam membangun aplikasi untuk menangani error yang di timbulkan oleh SQL Server. Error hande yang perlu kita tangani diantaranya adalah : Lisensi Dokumen: Copyright © 2004 IlmuKomputer.Com Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial (nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari IlmuKomputer.Com.
  • 2. Kuliah Umum IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com 2 1. Login Error. 2. Autoritas atas permission komponen database (table, view, stored procedure, triger dan function (Untuk SQL Server 2000)) Untuk lebih mengintegritaskan interface user permission dengan aplikasi kita, sebenarnya dapat kita tangani dengani memanfaatkan teknik DMO atau NameSpace pada SQL Server (tidak dibahas pada tulisan ini). Selain teknik pembuatan user, yang perlu kita perhatikan dalam hal security adalah teknik koneksi. Teknik koneksi juga banyak macamnya. Teknik koneksi pertama adalah dengan membuat koneksi untuk sebuah user yang login sampai dia log off, dan membiarkan user login dengan user id dan password yang sama di komputer lain. Teknik ini sangat rawan sekali. Teknik kedua adalah dengan membuat koneksi untuk sebuah user yang login sampai dia log off dan tidak mengijikan user login di komputer lain dengan user id dan password yang sama. Teknik ini lebih bagus dari teknik pertama. Teknik ketiga adalah dengan membuat koneksi untuk sebuah user yang login sampai batas waktu tertentu jika ia tidak beraktifitas di aplikasi tersebut dan atau sampai ia log off, juga tidak mengijikan login di komputer lain dengan user id dan password yang sama dengan cara memutus salah satu koneksinya. Untuk menentukan koneksi mana yang diputus, user ditawari pilihan, ia akan memakai koneksi yang baru dengan memutus yang lama atau dia membatalkan koneksi yang baru dengan membiarkan aktif oneksi yang lamanya. Teknik ini sangat aman, meski agak sulit untuk diterapkan. CARA MEMBUAT USER DI SQL SERVER Kita dapat mendefinisikan user-user lain yang akan mengakses database tersebut di SQL Server Enterprise Manager beserta otoritasnya, seperti Select, Insert, Update, Delete dan Execute. Cara membuat user baru : 1. Buka SQL Server Enterprise Manager 2. Masuk server yang terkonek. 3. Pilih Security – Logins.
  • 3. Kuliah Umum IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com 3 4. Jika memilih Windows NT Authentication, Isikan Domain tempat user login dan pilih type Access (Grant atau Deny). Jika memilih SQL Server Authentication Isikan User ID pada Name, dan password. Pilih database, dan pilih bahasa yang digunakan atau pilih <Default>. 5. Kemudian klik tab Server Roles untuk memilih group user dengan segala permissionnya.
  • 4. Kuliah Umum IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com 4 Roles dapat anda buat untuk kelompok user, supervisor dll, selain yang ada di default dari SQL Server tersebut. Untuk membuat Roles baru, lihat pada bagian Roles. 6. Lalu klik tab Database Access untuk memilih database yang bisa diakses oleh user tersebut. Setelah user baru terbentuk, anda bisa mengeditnya dengan cara klik kanan user tersebut, lalu pilih Properties. Anda bisa mencoba login dengan user tersebut pada Query Analyzer.
  • 5. Kuliah Umum IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com 5 CARA MEMBUAT ROLES DI SQL SERVER Roles adalah sebuah group user, yang artinya mengelompokkan beberapa user SQL Server yang mempunyai hak akses sama. Hal ini memberi kemudahan saat beberapa user dalam kelompok tersebut mengalami perubahan hak akses, sehingga kita tinggal merubah hak akses roles-nya maka user-user yang ada dalam roles tersebut akan ikut berubah. STANDARD ROLES Untuk membuat sebuah roles (user group), masuk ke database tertentu lalu pilih roles. Kemudian klik kanan pada window sebelah kanan, pilih New Database Role… Isikan nama Role yang akan anda buat, lalu pilih anggotanya dengan menekan tombol Add… dan pilih usernya.
  • 6. Kuliah Umum IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com 6 Setelah sebuah Role terbentuk barulah anda bisa menentukan akses permission pada role tersebut dengan meng-klok kanan role yang anda buat, lalu klik tambol Permissions. Dari sini anda dapat memilih tabel, view atau stored procedure yang dapat diakses oleh kelompok user tersebut dengan Select, Insert, Update, Delete, Execute atau DRI (declarative referential integrity). CARA MEMBUAT PERMISSIONS Untuk membuat permission pada sebuah user atau Roles tertentu anda bisa melakukannya dengan cara masuk ke database dimana user tersebut memiliki hak akses, lalu pilih users, lalu properties. Atau pilih Roles lalu klik properties. Kemudian klik tombol permissions.
  • 7. Kuliah Umum IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com 7 Dari sini anda dapat menentukan tabel, view atau stored procedure yang dapat diakses oleh user tersebut dengan Select, Insert, Update, Delete, Execute atau DRI (declarative referential integrity). Anda dapat mengkombinasikan permission pada User maupun pada Role. Kedudukan kedua komponen database tersebut saling melengkapi. Akan tetapi apabila permission pada user dan role bertentangan, maka permission yang tidak mengijinkan akan lebih dominan. Misalnya seorang user U menjadi anggota role R dengan akses tabel X. Padahal permission pada user U tersebut tidak mengijinkan untuk mengakses tabel A. Maka pada implementasinya, user U tersebut tidak akan dapat mengakses tabel A. Akan tetapi jika ada membuat permission pada user U dapat mengakses tabel A,B,C dan membuat permission pada role R dapat mengakses tabel X,Y,X, dan user U tersebut menjadi anggota dari role R, maka pada implementasinya user tersebut dapat mengakses tabel A,B,C,X,Y,Z. CARA MENON-ACTIVE-KAN USER Cara menon-aktive-kan user ada 2 cara, tergantung type dari user tersebut, apakah user tersebut dibuat dari user Windows NT atau dari SQL Server. Apabila user tersebut dibuat dari user Windows NT, anda dapat melakukannya dengan cara berikut : Masuklah ke sebuah server dari Enterprise Manager, lalu pilih Security, kemudian klik login. Pada window sebelah kanan pilih user yang akan di non-aktive-kan dengan cara klik kanan, properties. Kemudian pilih option Deny access.
  • 8. Kuliah Umum IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com 8 Dengan demikian user tersebut sudah tidak bisa lagi mengakses database yang semula anda definisikan untuknya. Akan tetapi jika setting tersebut anda kembalikan ke Grant access, maka segala setting, baik untuk database, role dan setting akses pada user tersebut akan kembali seperti semula. Sedangkan untuk user yang dibuat dari SQL Server, anda tidak bisa membuat Deny access. Yang bisa anda lakukan bagi user yang dibuat di SQL Server untuk menon-aktive-kan adalah dengan menghilangkan permission aksesnya untuk semua database. Dengan demikian, user tersebut masih ada akan tetapi tidak mempunyai akses ke database manapun. Saat itu anda lakukan untuk sebuah user, maka semua permission yang telah anda set untuk user tersebut akan hilang. Jika anda ingin mengaktifkan lagi, maka anda harus mengeset user tersebut pada database yang anda inginkan, termasuk juga keanggotaanya pada sebuah role dan permission akses yang ada pada user tersebut.
  • 9. Kuliah Umum IlmuKomputer.Com Copyright © 2004 IlmuKomputer.Com 9 CARA MENGHAPUS USER Untuk menghapus user account, anda dapat melakukannya dengan cara masuklah ke sebuah server dari Enterprise Manager, lalu pilih Security, kemudian klik login. Pada window sebelah kanan pilih user yang akan di hapus dengan cara klik kanan, lalu pilih Delete. WINDOWS NT AUTHENTICATION Vs SQL SERVER AUTHENTICATION Windows NT Authentication mempunyai manfaat lebih dibandingkan dengan menggunakan SQL Server Authentication. Pertama, anda tidak perlu membuat user dan permission terpisah di SQL Server untuk mengakses database. Kedua, keamanan Windows NT menyediakan fitur lebih dibanding SQL Server Authentication. Fitur ini meliputi password expired, panjang minimum password, dan maksimum login saat terjadi kesalahan password. Ketiga, SQL Server membaca informasi tentang para pemakai dan kelompok manakala pemakai menghubungkan. Perubahan apapun yang dibuat untuk seorang user di account Windows NT akan direlasikan ke user SQL Server. Akan tetapi penggabungan dua metode di atas akan lebih mudah untuk pengaturannya jika dibanding dengan hanya menggunakan Windows NT Authentication. Metode campuran ini cocok untuk database yang tidak "mission-critical" atau tidak berisi data rahasia. Anda juga bisa menggunakan hanya SQL Server Authentication untuk sebuah database dengan menyerahkan segala fasilitas dan keamanannya pada SQL Server.