Jak chronić wrażliwe dane za pomocą formularza logowania w dostępie

Podziel się teraz:

Formularz logowania jest konieczny w przypadku baz danych zawierających poufne informacje. Wykonaj poniższe czynności, aby utworzyć własny formularz logowania w celu ochrony bazy danych przed nieprawidłowym dostępem.

Pobierz teraz

Jeśli chcesz zacząć korzystać z tej funkcji jak najszybciej, możesz:

Pobierz teraz przykładową bazę danych z kodami VBA

W przeciwnym razie, jeśli chcesz wykonać majsterkowanie, możesz przeczytać poniższą zawartość.

Kroki, aby utworzyć formularz logowania w programie Access

1. Utwórz tabelę logowania

Pierwszą rzeczą, którą musimy zrobić, jest utworzenie tabeli, która będzie przechowywać wszystkie dane logowania.

  1. Utwórz nową tabelę i nadaj jej nazwę tbl_login.
  2. Otwórz tabelę w widoku projektu.
  3. Dodaj następujące pola z odpowiadającymi im typami danych:
Nazwa pola DataType
ID użytkownika Numer samochodu
Imię Krótki tekst
Nazwisko Krótki tekst
UserName Krótki tekst
Hasło Krótki tekst

 

  1. Edytuj maskę wprowadzania hasła, aby była wyświetlana jako seria gwiazdek (*).Edytuj maskę wprowadzania hasła
  • Wybierz pole Hasło.
  • Przejdź do karty Ogólne> Maska wprowadzania>…
  • Gdy pojawi się Kreator maski wprowadzania, wybierz opcję Hasło.
  • Kliknij Zakończ.
  1. Otwórz tabelę w widoku arkusza danych i wprowadź pierwszy rekord (dane logowania).Wprowadź swoje dane logowania
  2. Zamknij tabelę i zapisz wprowadzone zmiany.

2. Utwórz formularz logowania

Utwórz pusty formularz z 2 polami tekstowymi i 2 przyciskami poleceń (jak pokazano poniżej). Pomiń kreatora przycisków poleceń.Utwórz formularz logowania

Zamierzamy później odwołać się do tych kontrolek formularza w naszym kodzie, więc najlepiej byłoby zmienić ich nazwy, aby można je było łatwo zidentyfikować:

  • txt_nazwa użytkownika
  • txt_hasło
  • cmd_login
  • cmd_anuluj

Następnie zmień maskę wprowadzania hasła w polu tekstowym, aby było ono również wyświetlane jako seria gwiazdek (*).

  1. W widoku projektu zaznacz pole tekstowe hasła.
  2. Otwórz arkusz właściwości (ALT + Enter).
  3. Przejdź do zakładki Dane> Maska wprowadzania.
  4. Wybierz Hasło i kliknij Zakończ.

Teraz zmienimy niektóre właściwości formularza ze względów estetycznych, a co najważniejsze, aby mieć pewność, że użytkownicy nie będą mogli ominąć formularza bez podania poprawnych danych logowania.

  1. W widoku projektu wybierz formularz (jak pokazano poniżej).Wybierz formularz
  2. Otwórz arkusz właściwości (ALT + Enter) i zaktualizuj następujące właściwości:
  • Pod Format: .
    • Podpis: Zaloguj się
    • Selektory rekordów: Nie
    • Przyciski nawigacji: Nie
    • Paski przewijania: żadne
    • Styl obramowania: okno dialogowe
    • Przycisk zamykania: nie
  • Pod Inne .
    • Pop Up: Tak
    • Modalne: tak
    • Menu skrótów: Nie
  1. Zapisz formularz jako frm_login.

3. Dodaj kod

Dodaj zdarzenie On Click do przycisku Login.

  1. W widoku projektu wybierz przycisk Zaloguj.
  2. Przejdź do arkusza właściwości> karty Zdarzenie> Po kliknięciu>…
  3. Wybierz Konstruktor kodu z menu Wybierz konstruktora i kliknij OK.
  4. Otworzy się edytor VBA.
  5. Skopiuj poniższy kod.
Private Sub cmd_login_Click()

  Dim db As DAO.Database
  Dim rst As DAO.Recordset
  Dim strSQL As String
 
  If Trim(Me.txt_username.Value & vbNullString) = vbNullString Then
    MsgBox prompt:="Username should not be left blank.", buttons:=vbInformation, title:="Username Required"
    Me.txt_username.SetFocus
    Exit Sub
  End If
 
  If Trim(Me.txt_password.Value & vbNullString) = vbNullString Then
    MsgBox prompt:="Password should not be left blank.", buttons:=vbInformation, title:="Password Required"
    Me.txt_password.SetFocus
    Exit Sub
  End If
 
  'query to check if login details are correct
  strSQL = "SELECT FirstName FROM tbl_login WHERE Username = """ & Me.txt_username.Value & """ AND Password = """ & Me.txt_password.Value & """"
 
  Set db = CurrentDb
  Set rst = db.OpenRecordset(strSQL)
  If rst.EOF Then
    MsgBox prompt:="Incorrect username/password. Try again.", buttons:=vbCritical, title:="Login Error"
    Me.txt_username.SetFocus
  Else
    MsgBox prompt:="Hello, " & rst.Fields(0).Value & ".", buttons:=vbOKOnly, title:="Login Successful"
    DoCmd.Close acForm, "frm_login", acSaveYes
  End If
 
 Set db = Nothing
 Set rst = Nothing

End Sub

Ten kod:

  1. Sprawdź, czy pola nazwy użytkownika i hasła nie są puste. Jeśli tak, pojawi się monit.
  2. Sprawdź, czy dane logowania są poprawne, porównując je z wartościami w tabeli logowania (tbl_login).
  3. Po zweryfikowaniu danych logowania pojawi się monit powitalny użytkownika.

Następnym krokiem jest dodanie kodu przycisku Anuluj, aby po jego kliknięciu baza danych została zamknięta.

  1. Dodaj zdarzenie On Click do przycisku Cancel (ta sama procedura z przyciskiem Login).
  2. Skopiuj poniższy kod.
Private Sub cmd_cancel_Click()
   DoCmd.Quit acQuitSaveAll
End Sub

4. Ustaw formularz logowania jako formularz wyświetlania

Na koniec ustaw formularz logowania jako domyślny formularz, który użytkownicy zobaczą po otwarciu bazy danych.

  1. Przejdź do Plik> Opcje> Bieżąca baza danych.
  2. Ustaw Formularz wyświetlania na frm_login.
  3. Kliknij przycisk OK.

Będziesz musiał zamknąć bazę danych i ponownie ją otworzyć, aby zobaczyć, jak to działa.

Odzyskaj swoją bazę danych dostępu

Gratulacje! Teraz wiesz, jak chronić swoją cenną bazę danych przed nieprawidłowym dostępem. Teraz dam ci dodatkową wskazówkę. Jeśli z niefortunnego powodu Twoja baza danych została uszkodzona, NIE panikuj. DataNumen Inc., ekspert w dziedzinie technologii odzyskiwania danych, dostarcza oprogramowanie, które naprawia uszkodzony Access Baza danych. Twoja baza danych nadal może zostać odzyskana.

Wprowadzenie autora:

Jayme Stack jest ekspertem w dziedzinie odzyskiwania danych w DataNumen, Inc., która jest światowym liderem w technologiach odzyskiwania danych, w tym odzyskiwanie sql i doskonałe oprogramowanie do odzyskiwania. po więcej informacji odwiedź www.datanumen.com

Podziel się teraz:

Możliwość dodawania komentarzy nie jest dostępna.