Slave in progress

This commit is contained in:
Xavier Guimard 2010-12-08 10:42:53 +00:00
parent 7c2cc91098
commit 3d5709cd0a
4 changed files with 21 additions and 11 deletions

View File

@ -280,7 +280,7 @@ sub struct {
_nodes => [
'applicationlist:/applicationList:menuCatAndApp:applicationListCategory'
],
_js => 'applicationListCategoryRoot',
_js => 'applicationListCategoryRoot',
_help => 'menuCatAndApp',
},
},
@ -575,9 +575,10 @@ sub struct {
# Slave
slaveParams => {
_nodes => [qw(slaveAuthnLevel)],
_help => 'authSlave',
_nodes => [qw(slaveAuthnLevel slaveUserAttr)],
_help => 'authSlave',
slaveAuthnLevel => 'int:/slaveAuthnLevel',
slaveUserAttr => 'int:/slaveUserAttr',
},
# Choice
@ -618,14 +619,14 @@ sub struct {
issuerDBCASPath => 'text:/issuerDBCASPath',
issuerDBCASRule =>
'text:/issuerDBCASRule:issuerdbCAS:boolOrPerlExpr',
issuerDBCASOptions => {
issuerDBCASOptions => {
_nodes => [qw(casAttr casStorage cn:casStorageOptions)],
casAttr => 'text:/casAttr',
casStorage => 'text:/casStorage',
casStorageOptions => {
_nodes =>
['hash:/casStorageOptions:issuerDBCAS:btext'],
_js => 'hashRoot',
_js => 'hashRoot',
_help => 'issuerdbCAS',
},
},
@ -637,7 +638,7 @@ sub struct {
_help => 'issuerdbOpenID',
issuerDBOpenIDActivation =>
'bool:/issuerDBOpenIDActivation',
issuerDBOpenIDPath => 'text:/issuerDBOpenIDPath',
issuerDBOpenIDPath => 'text:/issuerDBOpenIDPath',
issuerDBOpenIDRule =>
'text:/issuerDBOpenIDRule:issuerdbOpenID:boolOrPerlExpr',
issuerDBOpenIDOptions => {
@ -708,7 +709,7 @@ sub struct {
globalStorageOptions => {
_nodes =>
['hash:/globalStorageOptions:sessionsdb:btext'],
_js => 'hashRoot',
_js => 'hashRoot',
_help => 'sessionsdb',
},
},
@ -778,7 +779,7 @@ sub struct {
userControl => 'text:/userControl',
portalForceAuthn => 'bool:/portalForceAuthn',
key => 'text:/key',
trustedDomains => 'text:/trustedDomains',
trustedDomains => 'text:/trustedDomains',
},
redirection => {
@ -1115,7 +1116,7 @@ sub struct {
samlStorageOptions => {
_nodes =>
['hash:/samlStorageOptions:samlServiceAdvanced:btext'],
_js => 'hashRoot',
_js => 'hashRoot',
_help => 'samlServiceAdvanced',
},
samlCommonDomainCookie => {
@ -1655,6 +1656,10 @@ sub testStruct {
# Slave
slaveAuthnLevel => $integer,
slaveUserAttr => {
test => qr/^[_a-zA-Z]\w*$/,
msgFail => 'Bad attribute name',
},
# Choice
authChoiceParams => $testNotDefined,

View File

@ -257,6 +257,8 @@ sub en {
singleIP => 'One IP only by user',
singleSession => 'One session only by user',
singleUserByIP => 'One user by IP address',
slaveAuthnLevel => 'Authentication level',
slaveParams => 'Slave parameters',
SMTPServer => 'SMTP server',
soap => 'SOAP',
Soap => 'Activation',
@ -641,6 +643,8 @@ sub fr {
singleIP => 'Une seule IP par utilisateur',
singleSession => 'Une seule session par utilisateur',
singleUserByIP => 'Une seule adresse IP par utilisateur',
slaveAuthnLevel => 'Niveau d\'authentification',
slaveParams => 'Paramètres Slave',
SMTPServer => 'Serveur SMTP',
soap => 'SOAP',
Soap => 'Activation',

View File

@ -18,7 +18,6 @@ our @ISA = qw(Lemonldap::NG::Portal::AuthNull);
sub setAuthSessionInfo {
my $self = shift;
$self->{sessionInfo}->{'_user'} = 'anonymous';
$self->{sessionInfo}->{authenticationLevel} = $self->{slaveAuthnLevel};
PE_OK;

View File

@ -17,12 +17,14 @@ our @ISA = qw(Lemonldap::NG::Portal::UserDBNull);
# @return Lemonldap::NG::Portal constant
sub setSessionInfo {
my $self = shift;
my $c = 0;
my $c = 0;
while ( my ( $k, $v ) = each %{ $self->{exportedVars} } ) {
$v = 'HTTP_' . uc($v);
$v =~ s/\-/_/g;
$self->{sessionInfo}->{$k} = $ENV{$v} and $c++;
}
$self->{sessionInfo}->{'_user'} ||=
$self->{sessionInfo}->{ $self->{slaveUserAttr} };
return ( $c ? PE_OK : PE_USERNOTFOUND );
}