6aa267542afd20129168d6124b9a81d5ed73ec66
[catagits/Catalyst-Plugin-Authentication.git] / t / lib / RemoteTestApp2.pm
1 package RemoteTestApp2;
2
3 use Catalyst qw/
4    Authentication
5 /;
6
7 use base qw/Catalyst/;
8 __PACKAGE__->engine_class('RemoteTestEngine');
9 __PACKAGE__->config(
10     'Plugin::Authentication' => {
11         default_realm => 'remote',
12         realms => {
13             remote => {
14                 credential => {
15                     class => 'Remote',
16                     allow_regexp => '^(bob|john|CN=.*)$',
17                     deny_regexp=> 'denied',
18                     cutname_regexp=> 'CN=(.*)/OU=Test',
19                     source => 'SSL_CLIENT_S_DN',
20                     username_field => 'my_user_name',
21                 },
22                 store => {
23                     class => 'Null',
24                 },
25             },
26         },
27     },
28 );
29
30 sub default : Local {
31     my ( $self, $c ) = @_;
32     if ($c->authenticate()) {
33         $c->res->body( 
34               'my_user_name:'
35               . $c->user->{my_user_name}
36         );
37     }
38     else {
39         $c->res->body('FAIL');
40         $c->res->status(403);
41     }
42 }
43
44 sub public : Local {
45     my ( $self, $c ) = @_;
46     $c->res->body('OK');
47 }
48
49 __PACKAGE__->setup;
50