|
NAMEPlack::Middleware::Auth::Basic - Simple basic authentication middleware SYNOPSIS use Plack::Builder;
my $app = sub { ... };
builder {
enable "Auth::Basic", authenticator => \&authen_cb;
$app;
};
sub authen_cb {
my($username, $password, $env) = @_;
return $username eq 'admin' && $password eq 's3cr3t';
}
DESCRIPTIONPlack::Middleware::Auth::Basic is a basic authentication handler for Plack. CONFIGURATION
LIMITATIONSThis middleware expects that the application has a full access to the headers sent by clients in PSGI environment. That is normally the case with standalone Perl PSGI web servers such as Starman or HTTP::Server::Simple::PSGI. However, in a web server configuration where you can't achieve this (i.e. using your application via Apache's mod_cgi), this middleware does not work since your application can't know the value of "Authorization:" header. If you use Apache as a web server and CGI to run your PSGI application, you can either a) compile Apache with "-DSECURITY_HOLE_PASS_AUTHORIZATION" option, or b) use mod_rewrite to pass the Authorization header to the application with the rewrite rule like following. RewriteEngine on
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
AUTHORTatsuhiko Miyagawa SEE ALSOPlack
|