Sorting OIDc (#1704)

This commit is contained in:
Antoine ROSIER 2019-04-10 16:37:39 +02:00
parent 8636da45be
commit f7b296b032
15 changed files with 26 additions and 4 deletions

View File

@ -26,7 +26,7 @@ our $simpleHashKeys = '(?:(?:l(?:o(?:calSessionStorageOption|goutService)|dapExp
our $specialNodeKeys = '(?:(?:(?:saml(?:ID|S)|oidc[OR])P|cas(?:App|Srv))MetaDataNode|virtualHost)s';
our $casAppMetaDataNodeKeys = 'casAppMetaData(?:Options(?:Servic|Rul)e|ExportedVars)';
our $casSrvMetaDataNodeKeys = 'casSrvMetaData(?:Options(?:ProxiedServices|DisplayName|Gateway|Renew|Icon|Url)|ExportedVars)';
our $oidcOPMetaDataNodeKeys = 'oidcOPMetaData(?:Options(?:C(?:lient(?:Secret|ID)|heckJWTSignature|onfigurationURI)|TokenEndpointAuthMethod|(?:JWKSTimeou|Promp)t|I(?:DTokenMaxAge|con)|S(?:toreIDToken|cope)|U(?:iLocales|seNonce)|Display(?:Name)?|AcrValues|MaxAge)|ExportedVars|J(?:SON|WKS))';
our $oidcOPMetaDataNodeKeys = 'oidcOPMetaData(?:Options(?:C(?:lient(?:Secret|ID)|heckJWTSignature|onfigurationURI)|S(?:toreIDToken|ortNumber|cope)|TokenEndpointAuthMethod|(?:JWKSTimeou|Promp)t|I(?:DTokenMaxAge|con)|U(?:iLocales|seNonce)|Display(?:Name)?|AcrValues|MaxAge)|ExportedVars|J(?:SON|WKS))';
our $oidcRPMetaDataNodeKeys = 'oidcRPMetaData(?:Options(?:(?:PostLogoutRedirectUri|ExtraClaim)s|I(?:DToken(?:Expiration|SignAlg)|con)|Logout(?:SessionRequired|Type|Url)|AccessTokenExpiration|R(?:edirectUris|ule)|Client(?:Secret|ID)|BypassConsent|DisplayName|UserIDAttr)|ExportedVars)';
our $samlIDPMetaDataNodeKeys = 'samlIDPMetaData(?:Options(?:(?:Check(?:S[LS]OMessageSignatur|Audienc|Tim)|EncryptionMod|UserAttribut|DisplayNam)e|S(?:ignS[LS]OMessage|toreSAMLToken|[LS]OBinding|ortNumber)|A(?:llow(?:LoginFromIDP|ProxiedAuthn)|daptSessionUtime)|Re(?:questedAuthnContext|solutionRule|layStateURL)|Force(?:Authn|UTF8)|I(?:sPassive|con)|NameIDFormat)|ExportedAttributes|XML)';
our $samlSPMetaDataNodeKeys = 'samlSPMetaData(?:Options(?:N(?:ameID(?:SessionKey|Format)|otOnOrAfterTimeout)|S(?:essionNotOnOrAfterTimeout|ignS[LS]OMessage)|(?:CheckS[LS]OMessageSignatur|OneTimeUs|Rul)e|En(?:ableIDPInitiatedURL|cryptionMode)|ForceUTF8)|ExportedAttributes|XML)';

View File

@ -1866,6 +1866,9 @@ qr/^(?:\*\.)?(?:(?:(?:(?:[a-zA-Z0-9][-a-zA-Z0-9]*)?[a-zA-Z0-9])[.])*(?:[a-zA-Z][
'default' => 'openid profile',
'type' => 'text'
},
'oidcOPMetaDataOptionsSortNumber' => {
'type' => 'int'
},
'oidcOPMetaDataOptionsStoreIDToken' => {
'default' => 0,
'type' => 'bool'

View File

@ -3343,6 +3343,7 @@ m{^(?:ldapi://[^/]*/?|\w[\w\-\.]*(?::\d{1,5})?|ldap(?:s|\+tls)?://\w[\w\-\.]*(?:
oidcOPMetaDataOptionsDisplayName => { type => 'text', },
oidcOPMetaDataOptionsIcon => { type => 'text', },
oidcOPMetaDataOptionsStoreIDToken => { type => 'bool', default => 0 },
oidcOPMetaDataOptionsSortNumber => { type => 'int', },
oidcRPMetaDataOptionsRule => {
type => 'text',

View File

@ -179,7 +179,8 @@ sub cTrees {
form => 'simpleInputContainer',
nodes => [
'oidcOPMetaDataOptionsDisplayName',
'oidcOPMetaDataOptionsIcon'
'oidcOPMetaDataOptionsIcon',
'oidcOPMetaDataOptionsSortNumber'
]
},
],

View File

@ -336,6 +336,12 @@ function templates(tpl,key) {
"get" : tpl+"s/"+key+"/"+"oidcOPMetaDataOptionsIcon",
"id" : tpl+"s/"+key+"/"+"oidcOPMetaDataOptionsIcon",
"title" : "oidcOPMetaDataOptionsIcon"
},
{
"get" : tpl+"s/"+key+"/"+"oidcOPMetaDataOptionsSortNumber",
"id" : tpl+"s/"+key+"/"+"oidcOPMetaDataOptionsSortNumber",
"title" : "oidcOPMetaDataOptionsSortNumber",
"type" : "int"
}
],
"id" : "oidcOPMetaDataOptionsDisplayParams",

File diff suppressed because one or more lines are too long

View File

@ -499,6 +499,7 @@
"oidcOPMetaDataOptionsDisplayName":"عرض الاسم",
"oidcOPMetaDataOptionsDisplayParams":"عرض",
"oidcOPMetaDataOptionsIcon":"شعار",
"oidcOPMetaDataOptionsSortNumber":"Order",
"oidcOPMetaDataOptionsJWKSTimeout":"مهلة بيانات JWKS",
"oidcRPMetaDataOptionsLogoutSessionRequired":"جلسة مطلوب",
"oidcRPMetaDataOptionsLogoutType":"نوع",

View File

@ -499,6 +499,7 @@
"oidcOPMetaDataOptionsDisplayName":"Display name",
"oidcOPMetaDataOptionsDisplayParams":"Display",
"oidcOPMetaDataOptionsIcon":"Logo",
"oidcOPMetaDataOptionsSortNumber":"Order",
"oidcOPMetaDataOptionsJWKSTimeout":"JWKS data timeout",
"oidcRPMetaDataOptionsLogoutSessionRequired":"Session required",
"oidcRPMetaDataOptionsLogoutType":"Type",

View File

@ -499,6 +499,7 @@
"oidcOPMetaDataOptionsDisplayName":"Display name",
"oidcOPMetaDataOptionsDisplayParams":"Display",
"oidcOPMetaDataOptionsIcon":"Logo",
"oidcOPMetaDataOptionsSortNumber":"Order",
"oidcOPMetaDataOptionsJWKSTimeout":"JWKS data timeout",
"oidcRPMetaDataOptionsLogoutSessionRequired":"Session required",
"oidcRPMetaDataOptionsLogoutType":"Type",

View File

@ -499,6 +499,7 @@
"oidcOPMetaDataOptionsDisplayName":"Display name",
"oidcOPMetaDataOptionsDisplayParams":"Display",
"oidcOPMetaDataOptionsIcon":"Logo",
"oidcOPMetaDataOptionsSortNumber":"Order",
"oidcOPMetaDataOptionsJWKSTimeout":"JWKS data timeout",
"oidcRPMetaDataOptionsLogoutSessionRequired":"Session required",
"oidcRPMetaDataOptionsLogoutType":"Type",

View File

@ -499,6 +499,7 @@
"oidcOPMetaDataOptionsDisplayName":"Nom d'affichage",
"oidcOPMetaDataOptionsDisplayParams":"Affichage",
"oidcOPMetaDataOptionsIcon":"Logo",
"oidcOPMetaDataOptionsSortNumber":"Ordre",
"oidcOPMetaDataOptionsJWKSTimeout":"Durée de vie des données JWKS",
"oidcRPMetaDataOptionsLogoutSessionRequired":"Session requise",
"oidcRPMetaDataOptionsLogoutType":"Type",

View File

@ -499,6 +499,7 @@
"oidcOPMetaDataOptionsDisplayName":"Visualizza nome",
"oidcOPMetaDataOptionsDisplayParams":"Visualizza",
"oidcOPMetaDataOptionsIcon":"Logo",
"oidcOPMetaDataOptionsSortNumber":"Order",
"oidcOPMetaDataOptionsJWKSTimeout":"Timeout dei dati di JWKS",
"oidcRPMetaDataOptionsLogoutSessionRequired":"Sessione necessaria",
"oidcRPMetaDataOptionsLogoutType":"Tipo",

View File

@ -499,6 +499,7 @@
"oidcOPMetaDataOptionsDisplayName":"Tên hiển thị",
"oidcOPMetaDataOptionsDisplayParams":"Hiển thị",
"oidcOPMetaDataOptionsIcon":"Logo",
"oidcOPMetaDataOptionsSortNumber":"Order",
"oidcOPMetaDataOptionsJWKSTimeout":"Thời gian chờ của dữ liệu JWKS",
"oidcRPMetaDataOptionsLogoutSessionRequired":"Phiên yêu cầu",
"oidcRPMetaDataOptionsLogoutType":"Loại",

View File

@ -499,6 +499,7 @@
"oidcOPMetaDataOptionsDisplayName":"Display name",
"oidcOPMetaDataOptionsDisplayParams":"Display",
"oidcOPMetaDataOptionsIcon":"Logo",
"oidcOPMetaDataOptionsSortNumber":"Order",
"oidcOPMetaDataOptionsJWKSTimeout":"JWKS data timeout",
"oidcRPMetaDataOptionsLogoutSessionRequired":"Session required",
"oidcRPMetaDataOptionsLogoutType":"Type",

View File

@ -45,6 +45,8 @@ sub init {
->{oidcOPMetaDataOptionsDisplayName};
my $icon = $self->conf->{oidcOPMetaDataOptions}->{$_}
->{oidcOPMetaDataOptionsIcon};
my $order = $self->conf->{oidcOPMetaDataOptions}->{$_}
->{oidcOPMetaDataOptionsSortNumber};
my $img_src;
if ($icon) {
@ -60,6 +62,7 @@ sub init {
name => $name,
icon => $img_src,
class => "openidconnect",
order => $order
};
}
$self->addRouteFromConf(
@ -73,7 +76,7 @@ sub init {
oidcServiceMetaDataBackChannelURI => 'backLogout',
);
@list =
sort { $a->{name} cmp $b->{name} or $a->{val} cmp $b->{val} } @list;
sort { $a->{order} <=> $b->{order} or $a->{name} cmp $b->{name} or $a->{val} cmp $b->{val} } @list;
$self->opList( [@list] );
return 1;
}