Mailinglisten-Archive |
Ein wenig Aufwand solltest du schon betreiben. Am Besten eine eigene Minidatenbank (Tabelle) anlegen, die per Script -INCLUDE("php-Script")- abgefragt wird. Die PW-Tabelle konnte so aussehen: user1##passwort1\n user2##passwort2\n ('\n' sind dabei die Zeilenumbrueche und '##' die Separatoren.) Das Ganze moeglichst verschluesselt (natuerlich nur Name und Passwort) und in einem entfernten Verzeichnis mit NICHT SELBSTERKLAERENDEM NAMEN gespeichert, also in /home/infos/manual/tue_ganz_unschuldig/wirklich_nichts_interessantes/trallitralla.txt Die PW-Abfrage sieht dann bspw so aus: <?PHP if(!isset($PHP_AUTH_USER) || !isset($PHP_AUTH_PW)) { Header("WWW-Authenticate: Basic realm=\"My Realm\""); Header("HTTP/1.0 401 Unauthorized"); echo "Fehler! Username und/oder Passwort wurden nicht uebergeben"; exit; } $file=file( "PW-Tabelle.txt" ); /* in unserem top secret-Fall natuerlich trallitralla.txt */ $count=count($file); for ($i=0;$i<$count;$i++) { $line=$file[$i]; $user_pw=explode("##",$line); $user=$user_pw[0]; $passwort=$user_pw[1]; if ($user==$PHP_AUTH_USER && $passwort==$PHP_AUTH_PW) { $ok=1; } } if ($ok!=1) { include("Zugriffsverweigerung.html"); /* Datei, die aufgerufen wird, wenn User oder PW nicht korrekt */ exit; } else { /* hier steht dann alles, was passieren soll, wenn user + pw korrekt, bevor es weiter geht - z.B. logfile anlegen */ } ?> Das Ganze z.B. als pwcheck.php3 speichern. Dann muss in der ersten Zeile jeder zu schutzenden Seite nur stehen: include("pwcheck.php3"); Achtung! Die PW-Verifizierung erfolgt nur einmal! D.h. a) im Fehlerfall muss der komplette Browser geschlossen und neu gestartet werden. b) nach Beenden der Session sollte der Anwender seinen Browser schliessen, da sonst Unbefugte von seinem Rechner aus auf den zu schutzenden Bereich Zugang erhalt - Darauf sollte gerade bei Zugriff von offentlichen Rechnern (Uni,Arbeitsplatz) hingewiesen werden. Tino
php::bar PHP Wiki - Listenarchive