parent
b4aad2ffd1
commit
99aa48105a
|
@ -109,6 +109,9 @@ sub init {
|
||||||
->addUnauthRoute( ping => 'pleaseAuth', ['GET'] )
|
->addUnauthRoute( ping => 'pleaseAuth', ['GET'] )
|
||||||
->addAuthRoute( ping => 'authenticated', ['GET'] )
|
->addAuthRoute( ping => 'authenticated', ['GET'] )
|
||||||
|
|
||||||
|
# Refresh session
|
||||||
|
->addAuthRoute( refresh => 'refresh', ['GET'] )
|
||||||
|
|
||||||
# Logout
|
# Logout
|
||||||
->addAuthRoute( logout => 'logout', ['GET'] );
|
->addAuthRoute( logout => 'logout', ['GET'] );
|
||||||
|
|
||||||
|
|
|
@ -104,6 +104,35 @@ sub postAuthenticatedRequest {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
sub refresh {
|
||||||
|
my ( $self, $req ) = @_;
|
||||||
|
$req->mustRedirect(1);
|
||||||
|
my %datas = %{ $req->userData };
|
||||||
|
$req->user( $datas{ $self->conf->{whatToTrace} } );
|
||||||
|
$req->id( $datas{_session_id} );
|
||||||
|
$self->userLogger->notice('Refresh request for '.$req->user);
|
||||||
|
foreach ( keys %datas ) {
|
||||||
|
delete $datas{$_} unless ( /^_/ or /^(?:startTime)$/ );
|
||||||
|
}
|
||||||
|
return $self->do(
|
||||||
|
$req,
|
||||||
|
[
|
||||||
|
'getUser',
|
||||||
|
@{ $self->betweenAuthAndDatas },
|
||||||
|
'setAuthSessionInfo',
|
||||||
|
'setSessionInfo',
|
||||||
|
'setMacros',
|
||||||
|
'setGroups',
|
||||||
|
'setLocalGroups',
|
||||||
|
sub {
|
||||||
|
$req->sessionInfo->{$_} = $datas{$_} foreach ( keys %datas );
|
||||||
|
return PE_OK;
|
||||||
|
},
|
||||||
|
'store',
|
||||||
|
]
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
sub logout {
|
sub logout {
|
||||||
my ( $self, $req ) = @_;
|
my ( $self, $req ) = @_;
|
||||||
return $self->do(
|
return $self->do(
|
||||||
|
|
Loading…
Reference in New Issue
Block a user