Nwlapcug.com


Come prevenire un accesso utente al Database di MS Access 2007 dopo tre tentativi

Come prevenire un accesso utente al Database di MS Access 2007 dopo tre tentativi


Una delle caratteristiche potenti dietro Microsoft Access 2007 è che si può fare un database per la propria applicazione stand-alone. Questo è utile quando il database a più utenti su un server di distribuzione. Fare altre misure di sicurezza, ad esempio form di accesso, per garantire la protezione dei vostri dati da utenti non autorizzati. Per ulteriormente il potere di protezione, è possibile limitare accesso se ci sono tre o più tentativi di accesso non riusciti. In questo modo, agli utenti non autorizzati non possono utilizzare programmi di password cracking software per hackerare il vostro database.

Istruzioni

1

Aprire il database in Access 2007 e aggiungere una nuova tabella denominata "tblFailedAttempts." Questa tabella conterrà il numero di tentativi di accesso che qualcuno ha nella sessione corrente. Fare clic sulla scheda "Crea" e poi "ping". Creare la tabella in visualizzazione struttura. Dare i campi della tabella tre: digitare "AttemptID" come un tipo di dati "Contatore", "login" con un tipo di dati "Text" e "attempt_time" come dati "Data/ora". Salvare e chiudere la tabella.

2

Vai al form di login attualmente in uso e visualizzare il codice per il form. Fare clic sulla scheda "Strumenti di Database" e quindi fare clic su "Visual Basic". Fare doppio clic sul nome per il modulo nell'elenco di oggetti sul lato sinistro dell'editor di Visual Basic.

3

Aggiungere questo codice al codice Visual Basic già presente nel form. Il codice sarà aprire la tabella "tblFailedAttempts" e vedere quanti tentativi che la persona ha già fatto. Sarà anche aumentare il numero di tentativi non riusciti ogni volta che la persona tenta di effettuare il login. Infine, il codice sarà bloccare la persona e chiudere il database dopo il terzo tentativo fallito.

"Set rst1 = db. OpenRecordset ("tblFailedAttempts", dbOpenDynaset)

With rst1

.AddNew

![computer_login] = Me.txtUser_hidden

.Update

End With

MsgBox "You entered the wrong User Name or Password." & Chr(13) & _

"Please enter the correct User Name and Password or " & Chr(13) & _

"contact the Database Adminstrator for assistance.", vbOKOnly + vbCritical, "Logon Denied"

'This counts how many times a user has typed in the wrong UserID/Password combo. After three attempts the user is

'suspended from the DB, and cannot get access until their account is reset by the Admin

cnt = cnt + 1 'increment counter if wrong password entered

If cnt = 3 Then 'Set up number of tries

'Display Message Box

MsgBox "Access Violation Program Will Now Close", , "Violation Detected"

DoCmd.OpenForm "frmPWChangeCheck", , , , , acHidden

'change frmPWChangeCheck to the name of your login form

[Forms]![frmPWChangeCheck]![Active] = False

DoCmd.Quit 'quit application and close Access

End If"4

Fare clic sull'icona "Salva" in Visual Basic editor per salvare le modifiche al codice e quindi chiudere l'editor. Fare clic su "Salva" nella finestra principale di accesso, nella scheda "Home", per salvare le modifiche al database.