view release on metacpan or search on metacpan
timeout => 2 * 60 * 60,
timeout_min => 2 * 60,
timeout_refresh => 0.5,
guest_login => 0,
guest_user => 'guest',
ignore_ip => 0,
require_ssl => 0,
cookie_secure => 0,
);
my %BOOLEAN = map { $_ => 1 } qw(
TKTAuthGuestLogin TKTAuthIgnoreIP TKTAuthRequireSSL TKTAuthCookieSecure
);
# Default TKTAuthDomain to host part of HTTP_HOST, or SERVER_NAME
($DEFAULTS{TKTAuthDomain}) = split /:/, $ENV{HTTP_HOST} || '';
$DEFAULTS{TKTAuthDomain} ||= $ENV{SERVER_NAME};
my %ATTR = map { $_ => 1 } qw(
conf secret secret_old digest_type
cookie_name back_cookie_name back_arg_name domain cookie_expires
login_url timeout_url post_timeout_url unauth_url
timeout timeout_min timeout_refresh token debug
guest_login guest_user ignore_ip require_ssl cookie_secure
if ($BOOLEAN{$directive}) {
$merge{$directive} = 0
if $merge{$directive} =~ m/^(off|no|false)$/i;
$merge{$directive} = 1
if $merge{$directive} =~ m/^(on|yes|true)$/i;
}
elsif (defined $merge{$directive}) {
$merge{$directive} =~ s/^\s+//;
$merge{$directive} =~ s/\s+$//;
}
if ($directive eq 'TKTAuthCookieExpires' || $directive eq 'TKTAuthTimeout') {
$self->{$_} = $self->convert_time_seconds($merge{$directive});
}
# Don't allow TKTAuthDebug to turn on debugging here
elsif ($directive ne 'TKTAuthDebug') {
$self->{$_} = $merge{$directive};
}
}
}
# Process constructor args
$cookie = $at->cookie or die $at->errstr;
cookie() supports all the same arguments as ticket(), plus the
following:
=over 4
=item cookie_name
Cookie name. Should match the TKTAuthCookieName directive, if you're
using it. Default: $at->cookie_name, or 'auth_tkt'.
=item cookie_domain
Cookie domain. Should match the TKTAuthDomain directive, if you're
using it. Default: $at->domain.
=item cookie_path
Cookie path. Default: '/'.
=item cookie_secure
Flag whether to set the 'secure' cookie flag, so that the cookie is
returned only in HTTPS contexts. Default: $at->require_ssl, or 0.
=back
=head2 TICKET PARSING AND VALIDATION
t/05_defaults.t view on Meta::CPAN
$ticket = $at->ticket(ts => $ts);
is($ticket, $ignore_addr_tkt, 'unspecified ip_addr honours IgnoreIP on');
$ticket = $at2->ticket(ts => $ts);
is($ticket, $remote_addr_tkt, 'unspecified ip_addr honours IgnoreIP off');
# Setup some reference cookies
my $cookie1 = $at->cookie(ts => $ts, cookie_name => 'foobar', cookie_domain => 'example.com', cookie_secure => 1);
my $cookie2 = $at2->cookie(ts => $ts, cookie_name => 'fubah', cookie_secure => 0);
#print $cookie2 . "\n";
# Cookie defaults
$cookie = $at->cookie(ts => $ts);
is($cookie, $cookie1, 'cookie defaults honoured from 01_auth_tkt.conf');
$cookie = $at2->cookie(ts => $ts);
is($cookie, $cookie2, 'cookie defaults honoured from 02_auth_tkt.conf');
# vim:ft=perl
t/06_expires.t view on Meta::CPAN
# TKTAuthCookieExpires testing
use File::Basename;
use Test::More tests => 21;
BEGIN { use_ok( Apache::AuthTkt ) }
use strict;
my $dir = dirname($0);
my $at;
my %tests = (
t/t04/auth_tkt2.conf view on Meta::CPAN
TKTAuthSecret "0e1d79e1-c18b-43c5-bfd6-a396e13bf39c"
Alias /secret /var/www/secret
<Directory /var/www/secret>
AuthType Basic
require valid-user
TKTAuthLoginURL https://www.example.com/pub/login.cgi
TKTAuthIgnoreIP on
TKTAuthGuestLogin on
TKTAuthGuestUser guest-%U
TKTAuthCookieName session_id
TKTAuthBackArgName whence
TKTAuthDomain www.example.com
TKTAuthCookieExpires 86400
TKTAuthRequireSSL on
TKTAuthTimeout 60m
TKTAuthTimeoutRefresh 0.33
</Directory>
# arch-tag: 1c9943b9-d8f1-4b4d-9b42-6b29573e3b20
t/t05/01_auth_tkt.conf view on Meta::CPAN
TKTAuthSecret "bf07982e-a551-43cc-9d41-2f050a22e229"
Alias /secret /var/www/secret
<Directory /var/www/secret>
AuthType Basic
require valid-user
TKTAuthLoginURL https://www.example.com/pub/login.cgi
TKTAuthIgnoreIP on
TKTAuthRequireSSL on
TKTAuthCookieSecure on
TKTAuthGuestLogin off
TKTAuthCookieName foobar
TKTAuthDomain example.com
</Directory>
# arch-tag: 487c6ae6-0400-47cc-a622-5dbb622205d7
t/t05/02_auth_tkt.conf view on Meta::CPAN
TKTAuthSecret "bf07982e-a551-43cc-9d41-2f050a22e229"
Alias /secret /var/www/secret
<Directory /var/www/secret>
AuthType Basic
require valid-user
TKTAuthLoginURL https://www.example.com/pub/login.cgi
TKTAuthIgnoreIP off
TKTAuthRequireSSL off
TKTAuthCookieSecure off
TKTAuthCookieName fubah
</Directory>
# arch-tag: 9906f3a3-af96-4b90-ab15-3a6423d52fde
t/t05/03_auth_tkt.conf view on Meta::CPAN
TKTAuthSecret "X,08d307810@R5%&aa49e7e0d9f0c9 ,X530023FB*e0941f1dkjf188797,tdt"
Alias /secret /var/www/secret
<Directory /var/www/secret>
AuthType Basic
require valid-user
TKTAuthLoginURL https://www.example.com/pub/login.cgi
TKTAuthIgnoreIP off
TKTAuthRequireSSL off
TKTAuthCookieSecure off
TKTAuthCookieName fubah
</Directory>
# arch-tag: 7c3f251f-648f-4453-bd8c-01c2d81bef6f
t/t06/expires01.conf view on Meta::CPAN
TKTAuthSecret "0e1d79e1-c18b-43c5-bfd6-a396e13bf39c"
Alias /secret /var/www/secret
<Directory /var/www/secret>
AuthType Basic
require valid-user
TKTAuthLoginURL https://www.example.com/pub/login.cgi
TKTAuthCookieExpires 12345
</Directory>
# arch-tag: f354ad31-9950-48ee-9bea-73d3a0918c7c
t/t06/expires02.conf view on Meta::CPAN
TKTAuthSecret "0e1d79e1-c18b-43c5-bfd6-a396e13bf39c"
Alias /secret /var/www/secret
<Directory /var/www/secret>
AuthType Basic
require valid-user
TKTAuthLoginURL https://www.example.com/pub/login.cgi
TKTAuthCookieExpires 1064s
</Directory>
# arch-tag: ccfd5f4b-b10f-4895-8350-9c803df0e9bd
t/t06/expires03.conf view on Meta::CPAN
TKTAuthSecret "0e1d79e1-c18b-43c5-bfd6-a396e13bf39c"
Alias /secret /var/www/secret
<Directory /var/www/secret>
AuthType Basic
require valid-user
TKTAuthLoginURL https://www.example.com/pub/login.cgi
TKTAuthCookieExpires 25m
</Directory>
# arch-tag: 1bcc05d4-e9b1-4e0e-b8f9-89d347bc2090
t/t06/expires04.conf view on Meta::CPAN
TKTAuthSecret "0e1d79e1-c18b-43c5-bfd6-a396e13bf39c"
Alias /secret /var/www/secret
<Directory /var/www/secret>
AuthType Basic
require valid-user
TKTAuthLoginURL https://www.example.com/pub/login.cgi
TKTAuthCookieExpires 12h
</Directory>
# arch-tag: 67ec4179-836e-437a-bbe3-367f2027b023
t/t06/expires05.conf view on Meta::CPAN
TKTAuthSecret "0e1d79e1-c18b-43c5-bfd6-a396e13bf39c"
Alias /secret /var/www/secret
<Directory /var/www/secret>
AuthType Basic
require valid-user
TKTAuthLoginURL https://www.example.com/pub/login.cgi
TKTAuthCookieExpires 3d
</Directory>
# arch-tag: 3f703ffc-6ec1-4015-adf9-203090ae40d7
t/t06/expires06.conf view on Meta::CPAN
TKTAuthSecret "0e1d79e1-c18b-43c5-bfd6-a396e13bf39c"
Alias /secret /var/www/secret
<Directory /var/www/secret>
AuthType Basic
require valid-user
TKTAuthLoginURL https://www.example.com/pub/login.cgi
TKTAuthCookieExpires 3w
</Directory>
# arch-tag: 7f6a5b69-625d-4a4a-910c-0875ed2221b0
t/t06/expires07.conf view on Meta::CPAN
TKTAuthSecret "0e1d79e1-c18b-43c5-bfd6-a396e13bf39c"
Alias /secret /var/www/secret
<Directory /var/www/secret>
AuthType Basic
require valid-user
TKTAuthLoginURL https://www.example.com/pub/login.cgi
TKTAuthCookieExpires 2M
</Directory>
# arch-tag: 665e13fb-b5a8-4fd5-8c48-85adf073d797
t/t06/expires08.conf view on Meta::CPAN
TKTAuthSecret "0e1d79e1-c18b-43c5-bfd6-a396e13bf39c"
Alias /secret /var/www/secret
<Directory /var/www/secret>
AuthType Basic
require valid-user
TKTAuthLoginURL https://www.example.com/pub/login.cgi
TKTAuthCookieExpires 1y
</Directory>
# arch-tag: ffe00425-d1d1-44a1-af95-62587bc6305c
t/t06/expires09.conf view on Meta::CPAN
TKTAuthSecret "0e1d79e1-c18b-43c5-bfd6-a396e13bf39c"
Alias /secret /var/www/secret
<Directory /var/www/secret>
AuthType Basic
require valid-user
TKTAuthLoginURL https://www.example.com/pub/login.cgi
TKTAuthCookieExpires 1y 3M 2w 4d 6h 12m 10s
</Directory>
# arch-tag: d35686fc-ae5b-448d-88b9-fb78c429cc2d
t/t06/expires10.conf view on Meta::CPAN
TKTAuthSecret "0e1d79e1-c18b-43c5-bfd6-a396e13bf39c"
Alias /secret /var/www/secret
<Directory /var/www/secret>
AuthType Basic
require valid-user
TKTAuthLoginURL https://www.example.com/pub/login.cgi
TKTAuthCookieExpires 2y 3M 1d 2h 12s
</Directory>
# arch-tag: dfd38d7b-51b6-47a9-95ff-6120cbcc440b