This is what I use to lock down a database. This is adapted from info in the Access help. My frmWelcome asks for the password; if they don't respond correctly in 30 seconds, it closes the app. They didn't want real workgroup security in this app.

VERY IMPORTANT!!!! make sure that you have a "secret" clickable button somewhere for you to run the 'Reset' portion, because after it's locked it's really locked.

BTW Any keys that aren't disabled by this, can be re-mapped in AutoKeys to do nothing.

Option Compare Database
Option Explicit

Sub SetStartupProperties()
    ChangeProperty "StartupForm", dbText, "frmWelcome"
    ChangeProperty "StartupShowDBWindow", dbBoolean, False
    ChangeProperty "StartupShowStatusBar", dbBoolean, False
    ChangeProperty "AllowBuiltinToolbars", dbBoolean, False
    ChangeProperty "AllowFullMenus", dbBoolean, False
    ChangeProperty "AllowBreakIntoCode", dbBoolean, False
    ChangeProperty "AllowSpecialKeys", dbBoolean, False
    ChangeProperty "AllowBypassKey", dbBoolean, False
End Sub

Sub ResetStartupProperties()
    ChangeProperty "StartupForm", dbText, ""
    ChangeProperty "StartupShowDBWindow", dbBoolean, True
    ChangeProperty "StartupShowStatusBar", dbBoolean, True
    ChangeProperty "AllowBuiltinToolbars", dbBoolean, True
    ChangeProperty "AllowFullMenus", dbBoolean, True
    ChangeProperty "AllowBreakIntoCode", dbBoolean, True
    ChangeProperty "AllowSpecialKeys", dbBoolean, True
    ChangeProperty "AllowBypassKey", dbBoolean, True
End Sub

Function ChangeProperty(strPropName, varPropType, varPropValue)
    Dim dbs As Database, prp As Property
    Const conPropNotFoundError = 3270
    '
    Set dbs = CurrentDb
    On Error GoTo Change_Err
    dbs.Properties(strPropName) = varPropValue
    ChangeProperty = True
    '
Change_Bye:
    Exit Function
    '
Change_Err:
    If Err = conPropNotFoundError Then  ' Property not found.
        Set prp = dbs.CreateProperty(strPropName, varPropType, varPropValue)
        dbs.Properties.Append prp
        Resume Next
    Else
        ' Unknown error.
        ChangeProperty = False
        Resume Change_Bye
    End If
End Function