Apache-AuthCookie
view release on metacpan or search on metacpan
lib/Apache2/AuthCookie.pm view on Meta::CPAN
}
sub satisfy_is_valid {
my ($auth_type, $r, $satisfy) = @_;
$satisfy = lc $satisfy;
if ($satisfy eq 'any' or $satisfy eq 'all') {
return 1;
}
else {
my $auth_name = $r->auth_name;
$r->server->log_error("PerlSetVar ${auth_name}Satisfy $satisfy invalid",$r->uri);
return 0;
}
}
1;
=pod
=encoding UTF-8
=head1 NAME
Apache2::AuthCookie - Perl Authentication and Authorization via cookies
=head1 VERSION
version 3.32
=head1 SYNOPSIS
Make sure your mod_perl is at least 2.0.0-RC5, with StackedHandlers,
MethodHandlers, Authen, and Authz compiled in.
# In httpd.conf or .htaccess:
PerlModule Sample::Apache2::AuthCookieHandler
PerlSetVar WhatEverPath /
PerlSetVar WhatEverLoginScript /login.pl
# use to alter how "require" directives are matched. Can be "Any" or "All".
# If its "Any", then you must only match Any of the "require" directives. If
# its "All", then you must match All of the require directives.
#
# Default: All
PerlSetVar WhatEverSatisfy Any
# The following line is optional - it allows you to set the domain
# scope of your cookie. Default is the current domain.
PerlSetVar WhatEverDomain .yourdomain.com
# Use this to only send over a secure connection
PerlSetVar WhatEverSecure 1
# Use this if you want user session cookies to expire if the user
# doesn't request a auth-required or recognize_user page for some
# time period. If set, a new cookie (with updated expire time)
# is set on every request.
PerlSetVar WhatEverSessionTimeout +30m
# to enable the HttpOnly cookie property, use HttpOnly.
# This is an MS extension. See:
# http://msdn.microsoft.com/workshop/author/dhtml/httponly_cookies.asp
PerlSetVar WhatEverHttpOnly 1
# to enable the SameSite cookie property, set SameSite to "lax" or "strict".
# See: https://www.owasp.org/index.php/SameSite
PerlSetVar WhatEverSameSite strict
# Usually documents are uncached - turn off here
PerlSetVar WhatEverCache 1
# Use this to make your cookies persistent (+2 hours here)
PerlSetVar WhatEverExpires +2h
# Use to make AuthCookie send a P3P header with the cookie
# see http://www.w3.org/P3P/ for details about what the value
# of this should be
PerlSetVar WhatEverP3P "CP=\"...\""
# optional: enable decoding of intercepted GET/POST params:
PerlSetVar WhatEverEncoding UTF-8
# optional: enable decoding of httpd.conf "Requires" directives
PerlSetVar WhatEverRequiresEncoding UTF-8
# optional: enforce that the destination argument from the login form is
# local to the server
PerlSetVar WhatEverEnforceLocalDestination 1
# optional: specify a default destination for when the destination argument
# of the login form is invalid or unspecified
PerlSetVar WhatEverDefaultDestination /protected/user/
# These documents require user to be logged in.
<Location /protected>
AuthType Sample::Apache2::AuthCookieHandler
AuthName WhatEver
PerlAuthenHandler Sample::Apache2::AuthCookieHandler->authenticate
PerlAuthzHandler Sample::Apache2::AuthCookieHandler->authorize
require valid-user
</Location>
# These documents don't require logging in, but allow it.
<FilesMatch "\.ok$">
AuthType Sample::Apache2::AuthCookieHandler
AuthName WhatEver
PerlFixupHandler Sample::Apache2::AuthCookieHandler->recognize_user
</FilesMatch>
# This is the action of the login.pl script above.
<Files LOGIN>
AuthType Sample::Apache2::AuthCookieHandler
AuthName WhatEver
SetHandler perl-script
PerlResponseHandler Sample::Apache2::AuthCookieHandler->login
</Files>
=head1 DESCRIPTION
( run in 1.491 second using v1.01-cache-2.11-cpan-75ffa21a3d4 )