Store authParams keys (#967)
This commit is contained in:
parent
2d2edb61ac
commit
32c0d51d4b
|
@ -34,6 +34,7 @@ my $ignoreKeys;
|
|||
my $mainTree;
|
||||
my @sessionTypes;
|
||||
my @simpleHashKeys;
|
||||
my $authParams;
|
||||
|
||||
my $attributes = Lemonldap::NG::Manager::Build::Attributes::attributes();
|
||||
my $jsonEnc = JSON->new()->allow_nonref;
|
||||
|
@ -149,7 +150,7 @@ sub run {
|
|||
my $exportedVars =
|
||||
'$'
|
||||
. join( 'Keys $', 'simpleHash', 'specialNode', sort keys %cnodesRe )
|
||||
. 'Keys $specialNodeHash @sessionTypes';
|
||||
. 'Keys $specialNodeHash @sessionTypes $authParameters';
|
||||
print F <<EOF;
|
||||
# This file is generated by $module. Don't modify it by hand
|
||||
package Lemonldap::NG::Manager::Constants;
|
||||
|
@ -189,6 +190,10 @@ EOF
|
|||
print F "our \$${_}Keys = '$cnodesRe{$_}';\n";
|
||||
}
|
||||
|
||||
$tmp = Dumper($authParams);
|
||||
$tmp =~ s/VAR1/authParameters/s;
|
||||
print F "\nour $tmp\n";
|
||||
|
||||
print F "\n1;\n";
|
||||
close F;
|
||||
print STDERR "done\n";
|
||||
|
@ -403,7 +408,12 @@ sub scanTree {
|
|||
$jleaf->{"_$n"} = [];
|
||||
$self->scanTree( $leaf->{$n}, $jleaf->{"_$n"}, $prefix,
|
||||
"$path.$nodeName\[$ord\]" );
|
||||
if ( $n eq 'nodes_cond' ) {
|
||||
if ( $leaf->{title} eq 'authParams' and $n eq 'nodes_cond' ) {
|
||||
foreach my $sn (@{$leaf->{$n}}) {
|
||||
my @cn = $self->scanLeaf( $sn->{nodes} );
|
||||
$authParams->{$sn->{title}} = \@cn;
|
||||
}
|
||||
print STDERR Dumper($authParams);
|
||||
foreach my $sn ( @{ $jleaf->{"_$n"} } ) {
|
||||
$sn->{show} = 'false';
|
||||
}
|
||||
|
@ -483,6 +493,20 @@ sub scanTree {
|
|||
}
|
||||
}
|
||||
|
||||
sub scanLeaf {
|
||||
my($self,$tree)=@_;
|
||||
my @res;
|
||||
foreach my $k (@$tree) {
|
||||
if(ref $k) {
|
||||
push @res, $self->scanLeaf($k->{nodes});
|
||||
}
|
||||
else {
|
||||
push @res, $k;
|
||||
}
|
||||
}
|
||||
return @res;
|
||||
}
|
||||
|
||||
1;
|
||||
__END__
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@ use base qw(Exporter);
|
|||
|
||||
our $VERSION = '2.0.0';
|
||||
|
||||
our %EXPORT_TAGS = ( 'all' => [qw($simpleHashKeys $specialNodeKeys $oidcOPMetaDataNodeKeys $oidcRPMetaDataNodeKeys $samlIDPMetaDataNodeKeys $samlSPMetaDataNodeKeys $virtualHostKeys $specialNodeHash @sessionTypes)] );
|
||||
our %EXPORT_TAGS = ( 'all' => [qw($simpleHashKeys $specialNodeKeys $oidcOPMetaDataNodeKeys $oidcRPMetaDataNodeKeys $samlIDPMetaDataNodeKeys $samlSPMetaDataNodeKeys $virtualHostKeys $specialNodeHash @sessionTypes $authParameters)] );
|
||||
our @EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } );
|
||||
our @EXPORT = ( @{ $EXPORT_TAGS{'all'} } );
|
||||
|
||||
|
@ -29,4 +29,159 @@ our $samlIDPMetaDataNodeKeys = 'samlIDPMetaData(?:Options(?:A(?:llow(?:LoginFrom
|
|||
our $samlSPMetaDataNodeKeys = 'samlSPMetaData(?:Options(?:N(?:ameID(?:SessionKey|Format)|otOnOrAfterTimeout)|S(?:essionNotOnOrAfterTimeout|ignS[LS]OMessage)|(?:CheckS[LS]OMessageSignatur|OneTimeUs)e|En(?:ableIDPInitiatedURL|cryptionMode))|ExportedAttributes|XML)';
|
||||
our $virtualHostKeys = '(?:vhost(?:(?:Aliase|Http)s|Maintenance|Port)|(?:exportedHeader|locationRule)s|post)';
|
||||
|
||||
our $authParameters = {
|
||||
'adParams' => [
|
||||
'ADPwdMaxAge',
|
||||
'ADPwdExpireWarning'
|
||||
],
|
||||
'apacheParams' => [
|
||||
'apacheAuthnLevel'
|
||||
],
|
||||
'browseridParams' => [
|
||||
'browserIdAuthnLevel',
|
||||
'browserIdAutoLogin',
|
||||
'browserIdVerificationURL',
|
||||
'browserIdSiteName',
|
||||
'browserIdSiteLogo',
|
||||
'browserIdBackgroundColor'
|
||||
],
|
||||
'casParams' => [
|
||||
'CAS_authnLevel',
|
||||
'CAS_url',
|
||||
'CAS_CAFile',
|
||||
'CAS_renew',
|
||||
'CAS_gateway',
|
||||
'CAS_pgtFile',
|
||||
'CAS_proxiedServices'
|
||||
],
|
||||
'choiceParams' => [
|
||||
'authChoiceParam',
|
||||
'authChoiceModules'
|
||||
],
|
||||
'dbiParams' => [
|
||||
'dbiAuthnLevel',
|
||||
'dbiExportedVars',
|
||||
'dbiAuthChain',
|
||||
'dbiAuthUser',
|
||||
'dbiAuthPassword',
|
||||
'dbiUserChain',
|
||||
'dbiUserUser',
|
||||
'dbiUserPassword',
|
||||
'dbiAuthTable',
|
||||
'dbiUserTable',
|
||||
'dbiAuthLoginCol',
|
||||
'dbiAuthPasswordCol',
|
||||
'dbiPasswordMailCol',
|
||||
'userPivot',
|
||||
'dbiAuthPasswordHash'
|
||||
],
|
||||
'demoParams' => [
|
||||
'demoExportedVars'
|
||||
],
|
||||
'facebookParams' => [
|
||||
'facebookAuthnLevel',
|
||||
'facebookExportedVars',
|
||||
'facebookAppId',
|
||||
'facebookAppSecret'
|
||||
],
|
||||
'googleParams' => [
|
||||
'googleAuthnLevel',
|
||||
'googleExportedVars'
|
||||
],
|
||||
'ldapParams' => [
|
||||
'ldapAuthnLevel',
|
||||
'ldapExportedVars',
|
||||
'ldapServer',
|
||||
'ldapPort',
|
||||
'ldapBase',
|
||||
'managerDn',
|
||||
'managerPassword',
|
||||
'ldapTimeout',
|
||||
'ldapVersion',
|
||||
'ldapRaw',
|
||||
'LDAPFilter',
|
||||
'AuthLDAPFilter',
|
||||
'mailLDAPFilter',
|
||||
'ldapSearchDeref',
|
||||
'ldapGroupBase',
|
||||
'ldapGroupObjectClass',
|
||||
'ldapGroupAttributeName',
|
||||
'ldapGroupAttributeNameUser',
|
||||
'ldapGroupAttributeNameSearch',
|
||||
'ldapGroupRecursive',
|
||||
'ldapGroupAttributeNameGroup',
|
||||
'ldapPpolicyControl',
|
||||
'ldapSetPassword',
|
||||
'ldapChangePasswordAsUser',
|
||||
'ldapPwdEnc',
|
||||
'ldapUsePasswordResetAttribute',
|
||||
'ldapPasswordResetAttribute',
|
||||
'ldapPasswordResetAttributeValue'
|
||||
],
|
||||
'multiParams' => [
|
||||
'multiAuthStack',
|
||||
'multiUserDBStack'
|
||||
],
|
||||
'nullParams' => [
|
||||
'nullAuthnLevel'
|
||||
],
|
||||
'oidcParams' => [
|
||||
'oidcAuthnLevel',
|
||||
'oidcRPCallbackGetParam',
|
||||
'oidcRPStateTimeout'
|
||||
],
|
||||
'openidParams' => [
|
||||
'openIdAuthnLevel',
|
||||
'openIdExportedVars',
|
||||
'openIdSecret',
|
||||
'openIdIDPList'
|
||||
],
|
||||
'proxyParams' => [
|
||||
'soapAuthService',
|
||||
'remoteCookieName',
|
||||
'soapSessionService'
|
||||
],
|
||||
'radiusParams' => [
|
||||
'radiusAuthnLevel',
|
||||
'radiusSecret',
|
||||
'radiusServer'
|
||||
],
|
||||
'remoteParams' => [
|
||||
'remotePortal',
|
||||
'remoteCookieName',
|
||||
'remoteGlobalStorage',
|
||||
'remoteGlobalStorageOptions'
|
||||
],
|
||||
'slaveParams' => [
|
||||
'slaveAuthnLevel',
|
||||
'slaveExportedVars',
|
||||
'slaveUserHeader',
|
||||
'slaveMasterIP',
|
||||
'slaveHeaderName',
|
||||
'slaveHeaderContent'
|
||||
],
|
||||
'sslParams' => [
|
||||
'SSLAuthnLevel',
|
||||
'SSLVar'
|
||||
],
|
||||
'twitterParams' => [
|
||||
'twitterAuthnLevel',
|
||||
'twitterKey',
|
||||
'twitterSecret',
|
||||
'twitterAppName'
|
||||
],
|
||||
'webiDParams' => [
|
||||
'webIDAuthnLevel',
|
||||
'webIDExportedVars',
|
||||
'webIDWhitelist'
|
||||
],
|
||||
'yubikeyParams' => [
|
||||
'yubikeyAuthnLevel',
|
||||
'yubikeyClientID',
|
||||
'yubikeySecretKey',
|
||||
'yubikeyPublicIDSize'
|
||||
]
|
||||
};
|
||||
|
||||
|
||||
1;
|
||||
|
|
Loading…
Reference in New Issue
Block a user