Issuer::CAS manager part (#1183)

This commit is contained in:
Xavier Guimard 2017-04-12 20:02:04 +00:00
parent 97e124e997
commit b93d7ff315
8 changed files with 41 additions and 21 deletions

View File

@ -24,7 +24,7 @@ our $specialNodeHash = {
our $doubleHashKeys = 'issuerDBGetParameters';
our $simpleHashKeys = '(?:(?:l(?:o(?:calSessionStorageOption|goutService)|dapExportedVar|wp(?:Ssl)?Opt)|c(?:as(?:StorageOption|Attribute)|ustomAddParam|ombModule)|(?:(?:d(?:emo|bi)|facebook|webID)E|e)xportedVar|g(?:r(?:antSessionRule|oup)|lobalStorageOption)|n(?:otificationStorageOption|ginxCustomHandler)|p(?:ersistentStorageOption|ortalSkinRule)|re(?:moteGlobalStorageOption|loadUrl)|macro)s|o(?:idcS(?:erviceMetaDataAuthnContext|torageOptions)|penIdExportedVars)|s(?:(?:amlStorageOption|laveExportedVar)s|essionDataToRemember)|a(?:uthChoiceModules|pplicationList)|S(?:MTPTLSOpts|SLVarIf))';
our $specialNodeKeys = '(?:(?:(?:saml(?:ID|S)|oidc[OR])P|cas(?:App|Srv))MetaDataNode|virtualHost)s';
our $casAppMetaDataNodeKeys = 'casAppMetaDataExportedVars';
our $casAppMetaDataNodeKeys = 'casAppMetaData(?:OptionsService|ExportedVars)';
our $casSrvMetaDataNodeKeys = 'casSrvMetaData(?:Options(?:ProxiedServices|Gateway|Renew|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 $oidcRPMetaDataNodeKeys = 'oidcRPMetaData(?:Options(?:I(?:DToken(?:Expiration|SignAlg)|con)|Logout(?:SessionRequired|Type|Url)|AccessTokenExpiration|R(?:edirectUris|ule)|Client(?:Secret|ID)|BypassConsent|DisplayName|ExtraClaims|UserIDAttr)|ExportedVars)';

View File

@ -640,6 +640,9 @@ sub attributes {
'casAppMetaDataOptions' => {
'type' => 'subContainer'
},
'casAppMetaDataOptionsService' => {
'type' => 'url'
},
'casAttr' => {
'type' => 'text'
},

View File

@ -1236,6 +1236,26 @@ sub attributes {
documentation => 'CAS server rule',
},
# Partners
casAppMetaDataOptions => { type => 'subContainer', },
casAppMetaDataExportedVars => {
type => 'keyTextContainer',
default => { cn => 'cn', mail => 'mail', uid => 'uid', },
documentation => 'CAS exported variables',
},
casAppMetaDataOptionsService => {
type => 'url',
documentation => 'CAS App service',
},
# Fake attribute: used by manager REST API to agglomerate all nodes
# related to a SAML SP partner
casAppMetaDataNodes => {
type => 'casAppMetaDataNodeContainer',
template => 'casAppMetaDataNode',
help => 'idpcas.html',
},
# OpenID Issuer
issuerDBOpenIDActivation => {
default => 0,
@ -2077,13 +2097,6 @@ m{^(?:ldapi://[^/]*/?|\w[\w\-\.]*(?::\d{1,5})?|ldap(?:s|\+tls)?://\w[\w\-\.]*(?:
msgFail => '__badUrl__',
},
casAppMetaDataOptions => { type => 'subContainer', },
casAppMetaDataExportedVars => {
type => 'keyTextContainer',
default => { cn => 'cn', mail => 'mail', uid => 'uid', },
documentation => 'CAS exported variables',
},
# Fake attribute: used by manager REST API to agglomerate all nodes
# related to a SAML IDP partner
casSrvMetaDataNodes => {
@ -2092,14 +2105,6 @@ m{^(?:ldapi://[^/]*/?|\w[\w\-\.]*(?::\d{1,5})?|ldap(?:s|\+tls)?://\w[\w\-\.]*(?:
help => 'authcas.html',
},
# Fake attribute: used by manager REST API to agglomerate all nodes
# related to a SAML SP partner
casAppMetaDataNodes => {
type => 'casAppMetaDataNodeContainer',
template => 'casAppMetaDataNode',
help => 'idpcas.html',
},
# PAM
pamAuthnLevel => {
type => 'int',

View File

@ -229,7 +229,7 @@ sub cTrees {
casAppMetaDataNode => [
{
title => 'casAppMetaDataOptions',
nodes => []
nodes => ['casAppMetaDataOptionsService']
},
'casAppMetaDataExportedVars',
],

View File

@ -11,7 +11,13 @@ function templates(tpl,key) {
case 'casAppMetaDataNode':
return [
{
"_nodes" : [],
"_nodes" : [
{
"get" : tpl+"s/"+key+"/"+"casAppMetaDataOptionsService",
"id" : tpl+"s/"+key+"/"+"casAppMetaDataOptionsService",
"title" : "casAppMetaDataOptionsService"
}
],
"id" : "casAppMetaDataOptions",
"title" : "casAppMetaDataOptions"
},

File diff suppressed because one or more lines are too long

View File

@ -104,13 +104,16 @@
"casAuthnLevel": "Authentication level",
"casAccessControlPolicy": "Access control policy",
"casApp": "CAS Application",
"casAppMetaDataExportedVars": "Exported attributes",
"casAppMetaDataNodes": "CAS Applications",
"casAppMetaDataOptions": "Options",
"casAppMetaDataOptionsService": "Service URL",
"casAppName": "CAS App Name",
"casAttr": "CAS login",
"casAttributes": "CAS exported attributes",
"casParams": "CAS parameters",
"casSrv": "CAS Server",
"casSrvMetaDataExportedVars": "Exported variables",
"casSrvMetaDataExportedVars": "Exported attributes",
"casSrvMetaDataOptions": "Options",
"casSrvMetaDataOptionsGateway": "Gateway authentication",
"casSrvMetaDataOptionsRenew": "Renew authentication",

View File

@ -104,13 +104,16 @@
"casAuthnLevel": "Niveau d'authentification",
"casAccessControlPolicy": "Politique de contrôle d'accès",
"casApp": "Application CAS",
"casAppMetaDataExportedVars": "Attributs exportés",
"casAppMetaDataNodes": "Applications CAS",
"casAppMetaDataOptions": "Options",
"casAppMetaDataOptionsService": "URL du service",
"casAppName": "Nom de l'application CAS",
"casAttr": "Identifiant CAS",
"casAttributes": "Attributs CAS",
"casParams": "Paramètres CAS",
"casSrv": "Serveur CAS",
"casSrvMetaDataExportedVars": "Variables exportées",
"casSrvMetaDataExportedVars": "Attributs exportés",
"casSrvMetaDataOptions": "Options",
"casSrvMetaDataOptionsGateway": "Authentification transparente",
"casSrvMetaDataOptionsRenew": "Renouveller l'authentication",