Sudah beberapa lama saya mencari cara supaya bisa menutup celah keamanan pada aplikasi Microsoft Access yang saya buat. Pasalnya saya sudah mendesain sebuah login form untuk masuk ke dalam aplikasi, akan tetapi bagi user yang mengerti seluk beluk Ms Access biasanya dapat dengan mudah melihat inti dari aplikasi tersebut dengan tombol shift.
Setelah pencarian yang panjang akhirnya saya dapat menemukan triknya, yaitu dengan memanfaatkan Visual Basic Editor pada Ms Access. Untuk mempersingkat waktu, caranya adalah sebagai berikut:
1. Buka aplikasi Ms. Access
2. Masuk ke Visual Basic Editor, caranya dengan kombinasi tombol Alt + F11
3. Buat modul baru, dengan cara klik menu Insert - Module
4. Masukkan Coding berikut ini ke dalam modul baru
Function ap_DisableShift()
'This function disable the shift at startup. This action causes
'the Autoexec macro and Startup properties to always be executed.
On Error GoTo errDisableShift
Dim db As DAO.Database
Dim prop as DAO.Property
Const conPropNotFound = 3270
Set db = CurrentDb()
'This next line disables the shift key on startup.
db.Properties("AllowByPassKey") = False
'The function is successful.
Exit Function
errDisableShift:
'The first part of this error routine creates the "AllowByPassKey
'property if it does not exist.
If Err = conPropNotFound Then
Set prop = db.CreateProperty("AllowByPassKey", _
dbBoolean, False)
db.Properties.Append prop
Resume Next
Else
MsgBox "Function 'ap_DisableShift' did not complete successfully."
Exit Function
End If
End Function
Function ap_EnableShift()
'This function enables the SHIFT key at startup. This action causes
'the Autoexec macro and the Startup properties to be bypassed
'if the user holds down the SHIFT key when the user opens the database.
On Error GoTo errEnableShift
Dim db as DAO.Database
Dim prop as DAO.Property
Const conPropNotFound = 3270
Set db = CurrentDb()
'This next line of code disables the SHIFT key on startup.
db.Properties("AllowByPassKey") = True
'function successful
Exit Function
errEnableShift:
'The first part of this error routine creates the "AllowByPassKey
'property if it does not exist.
If Err = conPropNotFound Then
Set prop = db.CreateProperty("AllowByPassKey", _
dbBoolean, True)
db.Properties.Append prop
Resume Next
Else
MsgBox "Function 'ap_DisableShift' did not complete successfully."
Exit Function
End If
End Function
5. Pada Form Utama (yang djalankan pada saat startup) tambahkan kode
Private Sub Form_load()
ap_DisableShift
End Sub
6. Jika ingin mendisable tombol shift panggil modul dengan cara ketik ap_DisableShift, untuk mengaktifkan kembali ketik ap_EnableShift.
0 comments:
Post a Comment