Zugangskontrolle mit Passwortschutz
Für einen geschlossenen Benutzerkreis wird eine Zugangskontrolle benötigt. Als erstes Beschreibe ich den Ablauf anhand des Ablaufdiagrammes Schritt für Schritt. Erst dann werden wir Schritt für Schritt das Programm umsetzen.

Schritt 1: Session starten
In der Session sind nach erfolgreichem Einloggen die Zugangsdaten vermerkt. Dadurch kann der Zustand sich „gemerkt“ werden. Ohne die Sessions wüsste das Programm beim nächsten Start nicht, ob der Benutzer sich bereits erfolgreich eingeloggt hat oder ob es sich um einen neuen Besucher handelt.
Schritt 2: Test, ob eine Formulareingabe vorliegt
Im Array $_POST
, bzw. $_GET
sind die Inhalte von einem abgesendeten Formular abfragbar. Wenn die entsprechenden Einträge vorhanden sind, geht es weiter in Punkt 3 mit gegenprüfen gegen Datenbank. Sind keine Formulareingaben vorhanden, springen wir direkt weiter zu Punkt 6.
Schritt 3: Gegenprüfen zu Datenbank-Einträgen
Hier werden nun die Formulareingaben gegen die Datenbank geprüft. Das Besondere ist, dass das Kennwort in der Datenbank md5-verschlüsselt abgespeichert ist. Dadurch kann niemand (auch nicht der Admin) die Kennwörter nutzen, da das verschlüsseln ein Einwegvorgang ist. Das bedeutet, dass die Benutzereingabe auch wieder mit md5 verschlüsselt wird und das Ergebnis der Verschlüsselung mit dem eingetragenen md5-Kennwort verglichen wird. Sind beide identisch, dann war es das richtige Passwort. Als Ergebnis sollte nur 1 Datensatz zurückkommen!
Schritt 4: Nutzer hat sich korrekt authentifiziert
Wenn nur 1 Datensatz zurückkommt, hat der Vergleich gepasst. Die Daten des Nutzers werden in der Session hinterlegt, damit er auch für alle anderen Seiten als eingeloggt gilt.
Schritt 5: Fehlermeldung, wenn nicht in Datenbank
Falls die Eingaben des Formulars zu keinem Ergebnis geführt haben, dann hat sich entweder der Nutzer vertippt oder es gibt ihn gar nicht (in der Datenbank). Es wird eine Fehlermeldung am Bildschirm angezeigt. Wenn Sie die Zugangsroutinen weiter absichern wollen, können Sie die Fehlerversuche mitzählen und nach 3 Fehlerversuchen den Zugang für X-Minuten sperren.
Schritt 6: Kontrolle der Session-Daten
Es wird nachgesehen, ob die entsprechenden Session-Daten vorhanden sind. Wenn diese korrekt vorhanden sind, läuft das Programm im Punkt 7 weiter. Dort kommt nun der eigentliche geschützte Programmteil, den nur berechtigte Benutzer sehen.
Schritt 7: geschütze Programmteil
Hier ist der geschützte Programmteil - dies kann jetzt beliebig komplex sein. Zum Testen können Sie einfach die aktuelle Uhrzeit ausgeben lassen.
Schritt 8: Formularausgabe zum einloggen
Nach dem fehlgeschlagenen Test der Session-Einträge ist klar, dass der Nutzer nicht eingeloggt ist. Also wird Ihm das Formular zum Einloggen angezeigt. Nach dem Anzeigen des Formulars wird das Programm beendet!