Angenommen, Sie haben eine Website , deren Informationen nur für bestimmte Personen vorbehalten , und Sie wollen nicht nur jemand bekommen Zugang . Ein Weg, um sie vom Betreten des geschützten Bereich zu verhindern, ist die Verwendung der Formularauthentifizierung . Dies umfasst in der Regel die Einrichtung einer Login-Seite dem Benutzer ein Passwort für den Zugriff eingeben müssen. Dieser Artikel wird Ihnen zeigen, wie man ein Geheimnis Web Seite innerhalb einer CGI-Programm in Perl geschrieben verschachtelt schützen. Andere serverseitige Sprachen verwendet werden, um diese Aufgabe , wie ASP.NET oder C zu erreichen , aber Perl ist hier für seine Flexibilität und der relativen Leichtigkeit bevorzugt. Sie müssen und sehr gute Kenntnisse von Perl und Wissen von Servern und FTP. Things You
Texteditor
Passwort -Datei
brauchen anzeigen Weitere Anweisungen
Forms Authentication
1
Erstellen Sie ein Passwort Login-Seite im Text-Editor . Dies wird in HTML , die ein CGI-Skript , wenn die Taste gedrückt wird ruft getan . Ein Beispiel HTML-Skript , dies zu tun ist unten angegeben:
Authentication Authentifizierung erforderlich
2
erstellen Sie ein Passwort Datei im Text- Editor, der die Benutzernamen und Passwörter der Personen, die Authentifizierung eingeben müssen beinhaltet die Website . Die Informationen in der Datei unten ist begrenzt mit angepassten XML-Tags . Sie können mit dem, was Sie begrenzen ; Ich bin zufällig zu finden XML Trennzeichen sehr pragmatisch. Speichern Sie diese Datei als " pwds.txt . " Mike Smith 123abc John Smith 456abc < name> Mary Smith 789abc
3
erstellen Sie das CGI-Skript . Die folgende CGI Perl-Skript nimmt die Eingabe des Benutzers und prüft sie gegen die Infos in der pwds.txt Datei. Wenn das Passwort richtig ist , grüßt er den Benutzer mit Namen und öffnet dann die geheimen Informationen . Wenn das Kennwort nicht gefunden wird, wird eine Fehlermeldung ausgegeben . Speichern Sie das folgende Skript als " pwd_in.cgi . " # /Usr /bin /perl- wprint " Content-type: text /html \\ n \\ n";
use CGI ;
! $ q = new CGI ; $ pwd = $ q -> param ( ' pwd '); $ cgi = new CGI ;
open ( PWD , "< pwds.txt "); $ error = "
Wrong Password
"; !
while ( ) {
if ( / (*). ? <\\ /name> <\\ /pw > /ist ) (*. ) { $ name {$ 1} = $ 1; $ pw {$ 1} = $ 2; @ p_words = $ pw {$ 1} ;}
foreach $ p ( @ p_words ) {
if ($ p eq " $ pwd ") { $ error = "";
print "
< ; ! title> The Secret Seite <\\ /title> <\\ /head> Hey $ name {$ 1} , Schön, dass du wieder da bist
Hier ist die top secret Informationen < /p > <\\ /body> "; }}
} print $ error ;
4
Upload der Dateien . Laden Sie die HTML -Datei auf Ihren HTML -Ordner und den beiden anderen Dateien auf Ihrem cgi -bin .
5
Nutzungsbedingungen chmod mit der CGI -Datei. Möglicherweise müssen Sie die Berechtigungen für externe Benutzer zu geben, um diese Datei zugreifen . Um die Erlaubnis zu erteilen, an der UNIX- Eingabeaufforderung : Ausführen> $ " chmod 755 pwd_cgi "
6
das Programm. Öffnen Sie die HTML-Datei und geben Sie in einem authentischen Passwort. Sie erhalten eine Seite, die den Namen, das Passwort mit sowie ein Satz , der sagt, verbunden grüßt "Hier ist der geheime Informationen . " Geben Sie ein falsches Kennwort oder ohne Passwort , und Sie erhalten eine Fehlermeldung.