2016-05-18 18 views
1

ich habe ein Perl-Programm und verwendet von cgi auf it.i die unterhalb der Linie an denWie kann ich Benutzername und Passwort für die grundlegende http-Authentifizierung einstellen? Browser will Benutzername und Passwort

Code anhängen
use CGI qw(:cgi); 
print header(-type => 'text/html', -status => '401 Not Authorized', 
     'WWW-Authenticate' => 'Basic realm="Videos"'); 

und wenn ich die URL eingeben von me.problem ist, dass ich weiß nicht, was ist Benutzer und Passwort und wo sollte ich sie zuweisen. auch jede Hilfe mit einem anderen Mechanismus zur Bereitstellung der grundlegenden Authentifizierung wäre gut. kann mir jemand dabei helfen? danke.

+0

Also ... Sie wissen nicht, welchen Benutzer und Passwort für die ** Sie ** in erster Linie zu stellen? – DaSourcerer

+0

@serenat: Ooh gucken. Hier ist ein anderes. Du könntest diesmal auch etwas Nützliches tun – Borodin

Antwort

0

Normalerweise behandelt der Webserver die Standardauthentifizierung, und dann würde er wahrscheinlich auch 401 für nicht autorisierte Anfragen zurückgeben - also ist Ihre Code-ID wahrscheinlich sinnlos.

Wenn Sie es wirklich selbst ausprobieren möchten, müssen Sie auch die vom Browser gesendeten Header analysieren, wenn der Benutzer versucht hat, sich zu authentifizieren, die Informationen mit der von Ihnen gewünschten Methode zu validieren und bei Erfolg eine verwendbare Seite zurückzugeben.

+0

danke @ Henrik.Ihre Antwort hilf mir zu verstehen, was wirklich authentication.i ist, was du gesagt hast und setze meinen Code hier. – farzane

+0

können Sie mir sagen, wie bekomme ich die Anfrage Header aus dem Browser? Ich bekomme es durch ENV-Variable, aber Authentifizierung Box nicht verschwinden. – farzane

0

Da Sie bereits CGI verwenden, können Sie das CGI::Auth::Basic-Modul von CPAN verwenden. Oder wenn Sie etwas mehr Feature benötigen, CGI::Auth

+0

Ich habe dieses Modul zum ersten Mal ausprobiert, aber es sendet mir einen Fehler in Zeile 314 des Moduls !! – farzane