Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

plack::middleware::auth::basic(3pm) [debian man page]

Plack::Middleware::Auth::Basic(3pm)			User Contributed Perl Documentation		       Plack::Middleware::Auth::Basic(3pm)

NAME
Plack::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) = @_; return $username eq 'admin' && $password eq 's3cr3t'; } DESCRIPTION
Plack::Middleware::Auth::Basic is a basic authentication handler for Plack. CONFIGURATION
authenticator A callback function that takes username and password supplied and returns whether the authentication succeeds. Required. Authenticator can also be an object that responds to "authenticate" method that takes username and password and returns boolean, so backends for Authen::Simple is perfect to use: use Authen::Simple::LDAP; enable "Auth::Basic", authenticator => Authen::Simple::LDAP->new(...); realm Realm name to display in the basic authentication dialog. Defaults to restricted area. LIMITATIONS
This 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] AUTHOR
Tatsuhiko Miyagawa SEE ALSO
Plack perl v5.14.2 2012-06-21 Plack::Middleware::Auth::Basic(3pm)

Check Out this Related Man Page

Plack::Middleware::Recursive(3pm)			User Contributed Perl Documentation			 Plack::Middleware::Recursive(3pm)

NAME
Plack::Middleware::Recursive - Allows PSGI apps to include or forward requests recursively SYNOPSIS
# with Builder enable "Recursive"; # in apps my $res = $env->{'plack.recursive.include'}->("/new_path"); # Or, use exceptions my $app = sub { # ... Plack::Recursive::ForwardRequest->throw("/new_path"); }; DESCRIPTION
Plack::Middleware::Recursive allows PSGI applications to recursively include or forward requests to other paths. Applications can make use of callbacks stored in "$env->{'plack.recursive.include'}" to include another path to get the response (whether it's an array ref or a code ref depending on your application), or throw an exception Plack::Recursive::ForwardRequest anywhere in the code to forward the current request (i.e. abort the current and redo the request). EXCEPTIONS
This middleware passes through unknown exceptions to the outside middleware stack, so if you use this middleware with other exception handlers such as Plack::Middleware::StackTrace or Plack::Middleware::HTTPExceptions, be sure to wrap this so Plack::Middleware::Recursive gets as inner as possible. AUTHORS
Tatsuhiko Miyagawa Masahiro Honma SEE ALSO
Plack Plack::Middleware::HTTPExceptions The idea, code and interface are stolen from Rack::Recursive and paste.recursive. perl v5.14.2 2011-06-22 Plack::Middleware::Recursive(3pm)
Man Page