Nutzeranmeldung über Datenbank - Was ist sinnvoll?

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von StormySunshine.

    Nutzeranmeldung über Datenbank - Was ist sinnvoll?

    Hallo,

    ich habe eine LoginForm, über die eine Anmeldung erfolgt. Anmeldedaten sind in einer Access-Datenbanktabelle gespeichert. Es handelt sich um maximal 50 Benutzer in der Tabelle.

    Ist es in diesem Fall sinnvoll wie ich es mache, bei Login aus der DB zu lesen und den Nutzer zu überprüfen oder ist es sinnvoller, bei Öffnen des Fensters im Hintergrund die kompletten Nutzer in eine dataTable zu laden und so bei Login nur noch lokal zu überprüfen?

    Hier der Login-Code:

    VB.NET-Quellcode

    1. Private Sub Login()
    2. Dim connectionAttemps As Integer = 3
    3. Dim connectionSuccess As Boolean = False
    4. Do Until connectionAttemps = 0 Or connectionSuccess = True
    5. Try
    6. con.Open()
    7. cmd = con.CreateParameterCommand("SELECT txt_anmeldename, txt_passworthash, txt_passwortsalt FROM benutzer WHERE txt_anmeldename = ?", {txtUser.Text})
    8. reader = cmd.ExecuteReader
    9. If reader.Read Then
    10. 'Anmeldung
    11. Else
    12. 'Meldung fehlerhafte Anmeldung
    13. End If
    14. connectionSuccess = True
    15. Catch ex As Exception
    16. connectionAttemps -= 1
    17. MsgBox(ex.Message)
    18. Finally
    19. If con.State = ConnectionState.Open Then
    20. con.Close()
    21. End If
    22. End Try
    23. Loop
    24. End Sub

    Ich würde die DB extern (zB. Server) speichern und die Daten via PHP übertragen. Außerdem solltest Du Dich bei vertraulichen Daten mit Cryptography bemühen! :)

    Hash/Salt bilden ist anbei veranschaulicht!

    Dateien
    • LoginClient.zip

      (179,03 kB, 88 mal heruntergeladen, zuletzt: )