Lokales Login-System + Registrierung

    • VB.NET

    Es gibt 10 Antworten in diesem Thema. Der letzte Beitrag () ist von Dodo.

      Lokales Login-System + Registrierung

      Hallo Leute,

      In diesem Thema werde ich euch zeigen wie ihr ein Lokales Login- bzw. Registrierungs-System in euer Programm einbaut.
      Dazu benötigt ihr keine anderen Sachen.


      Dann lasst uns mal beginnen:

      1. Erstellt 2 Formen.
      Diese können zum Beispiel so aussehen:
      Form1, Der Login:


      Form2, Die Registrierung:


      Es ist noch wichtig, dass ihr bei jeder Form eine versteckte Textbox habt (bzw. Visible = False)
      Bei mir sind das:
      Form1: Textbox3
      Form2: Textbox4

      2. Allgemeines:
      1. MD5 Sicherung
      Nun erstellen wir die MD5 Sicherung in form einer Funktion. Diese benötigt ihr auch bei Form2:

      VB.NET-Quellcode

      1. Private Function StringtoMD5(ByVal Content As String) As String
      2. Dim M5 As New System.Security.Cryptography.MD5CryptoServiceProvider
      3. Dim ByteString() As Byte = System.Text.Encoding.ASCII.GetBytes(Content)
      4. ByteString = M5.ComputeHash(ByteString)
      5. Dim FinalString As String = Nothing
      6. For Each bt As Byte In ByteString
      7. FinalString &= bt.ToString("x2")
      8. Next
      9. Return FinalString
      10. End Function


      3. Login:

      1. Allgemeines
      Als erstes erstellen wir mal einen einfachen String, der kürz einfach nur das ganze:

      VB.NET-Quellcode

      1. Dim startup As String = Application.StartupPath & "\"


      2. MD5 Sicherungs Funktion einfügen
      Wie der Schritt schon sagt müsst ihr nun den MD5-SicherungsCode einfügen.

      3. Der Login-Check
      Hier wird geprüfft, ob alle Felder ausgefüllt sind, und ob das Passwort, bzw. der Benutzer mit dem Erstelltem Übereinstimmen.

      VB.NET-Quellcode

      1. TextBox3.Text = StringtoMD5(TextBox2.Text)
      2. If TextBox1.Text = "" Or TextBox2.Text = "" Then
      3. MsgBox("Alle Felder bitte ausfüllen!", MsgBoxStyle.Information, "login")
      4. Else
      5. If My.Computer.FileSystem.DirectoryExists(startup & "Accounts\" & TextBox1.Text) = False Then
      6. TextBox1.Text = ""
      7. TextBox2.Text = ""
      8. Else
      9. If My.Computer.FileSystem.ReadAllText(startup & "Accounts\" & TextBox1.Text & "\" & "Passwort.txt") = TextBox3.Text Then
      10. TextBox1.Text = ""
      11. TextBox2.Text = ""
      12. MsgBox("Login war erfolgreich!", MsgBoxStyle.Exclamation, "Login")
      13. System.Threading.Thread.Sleep(500)
      14. 'Funktion die Passiert falls das Passwort, und der User übereinstimmen
      15. Me.Hide()
      16. End If
      17. End If
      18. End If


      3. Die Registrierung:

      1. Das Dimmen
      Hier fügt ihr wieder den auch in Form1 erstellten String ein:

      VB.NET-Quellcode

      1. Dim startup As String = Application.StartupPath & "\"


      2. MD5 Sicherungs Funktion einfügen

      3. Die Registrierung
      Es ist eigentlich ganz einfach, hier erstellen wir (wenn er noch nicht vorhanden ist) einen Ordner mit dem Namen Account. In diesem Ordner wird dann pro erstelltem Account wieder ein Ordner mit Username und verschlüsseltem Passwort angelegt.

      VB.NET-Quellcode

      1. TextBox4.Text = StringtoMD5(TextBox2.Text)
      2. If TextBox1.Text = "" Or TextBox2.Text = "" Or TextBox3.Text = "" Then
      3. MsgBox("Bitte alle Felder ausfüllen!", MsgBoxStyle.Information, "Register")
      4. Else
      5. If TextBox2.Text = TextBox3.Text Then
      6. If My.Computer.FileSystem.DirectoryExists(startup & "Accounts\" & TextBox1.Text) = True Then
      7. TextBox1.Text = ""
      8. TextBox2.Text = ""
      9. TextBox3.Text = ""
      10. MsgBox("Der User existiert bereits!", MsgBoxStyle.Information, "Register")
      11. Else
      12. My.Computer.FileSystem.CreateDirectory(startup & "Accounts\" & TextBox1.Text)
      13. My.Computer.FileSystem.WriteAllText(startup & "Accounts\" & TextBox1.Text & "\" & "Username.txt", TextBox1.Text, False)
      14. My.Computer.FileSystem.WriteAllText(startup & "Accounts\" & TextBox1.Text & "\" & "Passwort.txt", TextBox4.Text, False)
      15. TextBox1.Text = ""
      16. TextBox2.Text = ""
      17. TextBox3.Text = ""
      18. MsgBox("User wurde erfolgreich erstellt!", MsgBoxStyle.Exclamation, "Register")
      19. Form1.Show()
      20. Me.Hide()
      21. End If
      22. End If
      23. End If
      24. End Sub


      So das wars auch schon.
      Ich hoffe ich konnte euch mit diesem Tutorial helfen.
      Bei Fragen einfach Beitrag schreiben (oder PM)

      PS: Bedanken nicht vergessen :thumbsup:
      Mfg: Gather
      Private Nachrichten bezüglich VB-Fragen werden Ignoriert!


      Was nützt ein Lokales Login System wenn man es nur Lokal Hosten kann ??

      Ich nehme mal an er geht davon aus das man seine Daten auch Lokal mit einem Zusatz Passwort sichern könnte.
      Wäre schon praktisch wenn jemand einen Passwort Manager / etc. schreibt.

      LG.L
      Es hat folgenden nutzen:
      Wenn du keinen Hoster hast oder findest, der Externe Zugriffe auf MySQL Datenbanken erlaubt, hast du hier eine alternative.

      MfG Technostyles
      RT-Software.de - Ist halt ne gewöhnliche Website, neh.
      Alles schön und gut doch wenn man das ganze Lokal Hostet kann sich ja im Endefekt niemand anderes Registrieren da man die Datenbank die man Lokal hostet angeben muss und dazu müsste man wiederum Ports öffnen die wieder Sicherheitslücken eines Netzwerks darstellen

      hmm - mir scheint das auch kein rechten Sinn zu ergeben.
      Da verschlüsselt man schön sein Passwort mit MD5 (aber ohne Salt), aber soweitich sehe, ist niemand daran gehindert, einfach den gesamten DateiBaum aller User sich rauszukopieren, oder nach belieben darin herumzufuhrwerken.

      Unter solchen Bedingungen braucht man IMO überhaupt kein Passwort, sondern man gibt sich einfach als User an, und werkelt auf seinen Daten.
      IMO durchaus gangbar - grad bei lokalen Computern sind die User ja nicht immer so verfeindet, dasse nix anneres zu tun hätten, als sich gegenseitig ihre Daten zu verwüsten.

      Aber ich schreib das nur aus Eigenwerbung. Weil hier habichmich auch mit dem Thema beschäftigt, inklusive Daten-Verschlüsselung.
      Tut mir wirklich leid das ganze wieder auszugraben aber ich hätte da noch eine Frage.
      Ich bin noch ziemlich Anfänger und habe mir von hier die MD5 Sicherung geholt. Ein großes Danke nochmal dafür.

      Ich wüsste jetzt nur gerne wie ich zb die Passwörter wieder entschlüsseln kann ( für zb eine "Nutzerdaten-Anzeige Modus :D )
      Mfg Chriis