Skip to main content

Menonaktifkan Security Warning Pada Access

Security Warning adalah sebuah pesan yang ditampilkan di bagian message bar yang menyatakan bahwa, untuk alasan keamanan, beberapa hal dalam database yang akan dibuka telah dinonaktifkan. Secara default, Access akan menonaktifkan semua isi database yang bisa dieksekuisi, kecuali kita benar-benar yakin pada database yang akan dibuka, atau database itu berada di sebuah lokasi folder yang telah dinyatakan aman dan bisa diandalkan.

Dengan adanya Security Warning itu, jika sebuah database berasal dari programmer/pengembang yang terpercaya, kita dapat mengaktifkan isi yang secara default oleh Access telah dinonaktifkan. Bagi programmer yang sedang melakukan pengkodean, baik di VBA maupun Macro, munculnya Security Warning ini tentu sangat mengganggu, karena setiap kali sebuah file Access Database dibuka, maka pesan peringatan ini akan selalu muncul. Kita harus menekan tombol Options di sebelah kanan dan meng-enable untuk dapat membuka Access Database dengan sempurna.
Gambar 1 Security Alert
Pada gambar di atas, Security Warning ada di pojok kiri atas. Saat kita menekan Options, maka Access akan menampilkan Security Alert yang menjelaskan alasan penonaktifkan VBA Macro. Jika kita yakin bahwa database yang dibuka tidak mengandung kode yang merusak atau membahayakan Access maupun sistem operasi, maka kita dipersilakan untuk memilih Enable this content. Kode dalam VBA atau Macro dikatakan berbahaya jika ada bagian dari program dalam komputer menjadi rusak sebagai akibat dari eksekusi kode itu dan tidak bisa diperbaiki, kecuali diinstall ulang.

Menonaktifkan Security Warning Pada Access Dengan Cara Manual

Bila kita percaya sepenuhnya pada database yang dibuat, maka kita bisa menaruh folder dari database ini ke Trusted Location seperti pada gambar di bawah ini.
Gambar 2 Trusted Location
Caranya, pada pojok kiri bawah dari Security Alert, kliklah link Open the Trust Center sehingga muncul menu Trust Center, lalu pilihlah Trusted Location. Klik tombol Add new location dan ketikkan lokasi folder (path) tempat menyimpan database yang dibuka. Pada contoh di gambar atas, lokasi folder yang sudah terisi secara otomatis oleh Access ada di C:\Program Files\Microsoft Office\Office12\ACCWIZ\. Dengan menambahkan lokasi folder ke dalam daftar Trusted Location, maka file Access yang ada dalam lokasi folder ini dinyatakan aman dan bebas dari kode yang berbahaya.

Menonaktifkan Security Warning Pada Access Dengan VBA

Kita dapat memerintahkan Access untuk meletakkan lokasi folder yang dinyatakan aman, seperti pada contoh di atas, dengan menggunakan kode VBA. Bila cara menonaktifkan Security Warning di atas bisa kita sebut manual, maka dengan VBA, cara itu menjadi otomatis karena diprogram sesuai dengan keinginan kita. Untuk itu, kita harus membuat fungsi di modul yang memerintahkan Access menonaktifkan Security Warning dengan meletakkan lokasi folder yang aman di Trusted Location. Fungsi (sebut saja EditTrustLoc seperti pada kode di bawah) ini akan menambahkan satu baris Registry Key ke dalam daftar registry yang ada di OS Windows.

Perhatian: Salah mengedit registry mungkin dapat mengakibatkan kerusakan sistem operasi yang sangat parah, dan memaksa kita harus menginstall ulang. Sebelum mengedit registry, buatlah backup untuk semua data yang penting dan berharga.

Function EditTrustLoc(Optional acRegdelete As Boolean)
  Dim RegKey As String
  Dim Value As String
  Dim RegObj, WTRTL As Object
On Error GoTo Err_Msg
  RegKey = "HKCU\Software\Microsoft\Office\12.0\Access\Security\Trusted Locations\MyApp\Path"
  Value = BacaLokasiFolder '"D:\SoftwareAkuntansi\ElexMedia2\BonusCD\Final\"

  Set WTRTL = CreateObject("WScript.Shell")
  If acRegdelete = False Or acRegdelete = Null Then
    WTRTL.RegWrite RegKey, Value, "REG_SZ"
  Else
    If WTRTL.RegRead(RegKey) <> "" Then
      WTRTL.RegDelete RegKey
    End If
  End If
Exit_Function:
  Exit Function
Err_Msg:
  If Err.Number = -2147024894 Then Resume Exit_Function
  MsgBox "Error # " & str(Err.Number) & ", source: " & Err.Source & Chr(13) & Err.Description
  Resume Exit_Function
End Function
Baris registry itu ada di HKCU\Software\Microsoft\Office\12.0\Access\Security\Trusted Locations\MyApp\Path. HKCU adalah syntax penulisan untuk HKEY_CURRENT_USER.
Gambar 3 Registry Editor
Nilai dari Registry Key itu berupa lokasi folder. Misalkan "C:\myData\AccessData\". Pada contoh di atas, nilai itu ditentukan oleh fungsi BacaLokasiFolder yang dibuat di MdlGlobal.

Fungsi EditTrustLoc ini dapat digunakan untuk menambahkan location folder yang dianggap aman ke dalam Trusted Location, atau menghapus location folder yang sudah ada di daftar Trusted Location. Untuk menghapus location folder dari Trusted Location, tambahkan nilai true pada variabel acRegDelete, seperti berikut ini:

EditTrustLoc True

Bila variabel acRegDelete dikosongkan atau diisi false, maka fungsi itu digunakan untuk menambahkan location folder ke dalam Trusted Location.

Untuk menjalankan fungsi itu, letakkan EditTrustLoc di sebuah startup form, misalkan form untuk login, menu utama, dan sebagainya atau di sebuah fungsi yang pertama kali akan dieksekusi pada saat database dibuka. Contohnya seperti di bawah ini.
Function CekAccdeMde() As Boolean
'------------------------------------------
' Digunakan untuk mengecek apakah file yang
' terbuka ini bisa diedit atau tidak.
'------------------------------------------
  Dim strMDE As String
  Dim dbs As Object, prp As Variant
  
On Error Resume Next
  Set dbs = CurrentDb
  strMDE = dbs.Properties("MDE")
  If Err = 0 And strMDE = "T" Then
      ' Bila MDE/ACCDE database.
      CekAccdeMde = True
  Else
      EditTrustLoc True
      CekAccdeMde = False
  End If
End Function
Bila fungsi itu sudah dijalankan, maka kita harus menutup database dan membukanya kembali untuk mengetahui efek dari fungsi itu.

Menambahkan Registry Key untuk Menampilkan Kotak Modal Dialog

Selain memasukkan location folder ke dalam daftar Trusted Location di atas, ada cara lain yang digunakan untuk menonaktifkan Security Warning. Cara lain ini juga melibatkan Registry Key, sehingga kita harus berhati-hati mengedit Registry Key.

Berikut ini adalah langkahnya:

Perhatian: Salah mengedit registry mungkin dapat mengakibatkan kerusakan sistem operasi yang sangat parah, dan memaksa kita harus menginstall ulang. Sebelum mengedit registry, buatlah backup untuk semua data yang penting dan berharga.
  1. Klik Start dan kemudian klik Run.
  2. Di dalam open box, ketikkan regedit dan tekan enter. Regsitry dalam keadaan terbuka seperti gambar 3 di atas.
  3. Klik tanda + pada folder HKEY_CURRENT_USER dan arahkan ke registry key berikut ini: Software\Microsoft\Office\12.0\Access\Security
  4. Pada bagian kanan dari kotak registry editor, arahkan mouse ke area kosong dan klik mouse kanan, pilih New, dan klik DWORD Value. Muncullah kotak DWORD kosong yang harus diisi nilainya.
  5. Isikan nama berikut ini sebagai nilainya: ModalTrustDecisionOnly
  6. Klik ganda mouse ke New Value. Kotak dialog Edit DWORD Value akan muncul.
  7. Pada field Value Data, ubahlah nilainya dari 0 menjadi 1, dan klik OK.
  8. Tutuplah Registry Editor.
  9. Sekarang, bila membuka sebuah database yang berisi kode yang mencurigakan, kita akan melihat sebuah kotak dialog yang telah menggantikan Message Bar security warning.Untuk menampilkan kembali Message Bar security warning, ubahlah nilai yang ada di langkah ke 7, dari 1 kembali ke 0.

Comments

Posting Terpopuler

Normalisasi, Denormalisasi, dan Anomali Database

Membuat Relasi Database

Menampilkan Data MySQL dalam Form di Access