From 679911d4d016cb09ce04d42df3206aa466ff7b07 Mon Sep 17 00:00:00 2001 From: Xavier Guimard Date: Wed, 12 Apr 2017 16:45:49 +0000 Subject: [PATCH] Prepare CAS partners managment (#1183) --- Makefile | 1 + .../lib/Lemonldap/NG/Common/Conf/Constants.pm | 2 +- .../Lemonldap/NG/Common/Conf/RESTServer.pm | 69 +++++++++++++++++- .../Lemonldap/NG/Common/Conf/ReConstants.pm | Bin 8727 -> 8882 bytes lemonldap-ng-manager/MANIFEST | 4 + .../lib/Lemonldap/NG/Manager/Attributes.pm | 18 +++-- .../Lemonldap/NG/Manager/Build/Attributes.pm | 18 ++++- .../lib/Lemonldap/NG/Manager/Build/CTrees.pm | 5 ++ .../lib/Lemonldap/NG/Manager/Build/Tree.pm | 8 +- .../lib/Lemonldap/NG/Manager/Conf.pm | 1 + .../lib/Lemonldap/NG/Manager/Conf/Parser.pm | 20 ++++- .../site/coffee/manager.coffee | 6 ++ .../static/forms/casAppMetaDataNode.html | 21 ++++++ .../forms/casAppMetaDataNodeContainer.html | 26 +++++++ .../static/forms/casSrvMetaDataNode.html | 21 ++++++ .../forms/casSrvMetaDataNodeContainer.html | 26 +++++++ .../site/htdocs/static/js/conftree.js | 12 +++ .../site/htdocs/static/js/conftree.min.js | 2 +- .../site/htdocs/static/js/manager.js | 6 ++ .../site/htdocs/static/js/manager.min.js | 2 +- .../site/htdocs/static/languages/en.json | 14 +++- .../site/htdocs/static/languages/fr.json | 14 +++- .../site/htdocs/static/reverseTree.json | 2 +- .../site/htdocs/static/struct.json | 2 +- 24 files changed, 275 insertions(+), 25 deletions(-) create mode 100644 lemonldap-ng-manager/site/htdocs/static/forms/casAppMetaDataNode.html create mode 100644 lemonldap-ng-manager/site/htdocs/static/forms/casAppMetaDataNodeContainer.html create mode 100644 lemonldap-ng-manager/site/htdocs/static/forms/casSrvMetaDataNode.html create mode 100644 lemonldap-ng-manager/site/htdocs/static/forms/casSrvMetaDataNodeContainer.html diff --git a/Makefile b/Makefile index 64bdc22fa..6c6413e5d 100644 --- a/Makefile +++ b/Makefile @@ -183,6 +183,7 @@ MANAGERJSONSRC= scripts/jsongenerator.pl \ $(SRCMANAGERDIR)/lib/Lemonldap/NG/Manager/Build.pm \ $(SRCMANAGERDIR)/lib/Lemonldap/NG/Manager/Build/Attributes.pm \ $(SRCMANAGERDIR)/lib/Lemonldap/NG/Manager/Build/Tree.pm \ + $(SRCMANAGERDIR)/lib/Lemonldap/NG/Manager/Build/CTrees.pm \ $(SRCMANAGERDIR)/lib/Lemonldap/NG/Manager/Conf/Zero.pm MANAGERJSONDST=$(SRCMANAGERDIR)/site/htdocs/static/struct.json \ $(SRCMANAGERDIR)/site/htdocs/static/js/conftree.js \ diff --git a/lemonldap-ng-common/lib/Lemonldap/NG/Common/Conf/Constants.pm b/lemonldap-ng-common/lib/Lemonldap/NG/Common/Conf/Constants.pm index 15a027511..f6540f044 100644 --- a/lemonldap-ng-common/lib/Lemonldap/NG/Common/Conf/Constants.pm +++ b/lemonldap-ng-common/lib/Lemonldap/NG/Common/Conf/Constants.pm @@ -23,7 +23,7 @@ use constant HANDLERSECTION => "handler"; use constant MANAGERSECTION => "manager"; use constant SESSIONSEXPLORERSECTION => "sessionsExplorer"; use constant APPLYSECTION => "apply"; -our $hashParameters = qr/^(?:(?:l(?:o(?:ca(?:lSessionStorageOption|tionRule)|goutService)|dapExportedVar|wp(?:Ssl)?Opt)|(?:(?:d(?:emo|bi)|facebook|webID)ExportedVa|exported(?:Heade|Va))r|c(?:as(?:StorageOption|Attribute)|ustomAddParam|ombModule)|g(?:r(?:antSessionRule|oup)|lobalStorageOption)|n(?:otificationStorageOption|ginxCustomHandler)|re(?:moteGlobalStorageOption|loadUrl)|CAS_proxiedService|macro)s|o(?:idc(?:RPMetaData(?:(?:Option(?:sExtraClaim)?|ExportedVar)s|Node)|OPMetaData(?:(?:ExportedVar|Option)s|J(?:SON|WKS)|Node)|S(?:erviceMetaDataAuthnContext|torageOptions))|penIdExportedVars)|s(?:aml(?:S(?:PMetaData(?:(?:ExportedAttribute|Option)s|Node|XML)|torageOptions)|IDPMetaData(?:(?:ExportedAttribute|Option)s|Node|XML))|essionDataToRemember|laveExportedVars)|p(?:ersistentStorageOptions|o(?:rtalSkinRules|st))|a(?:uthChoiceModules|pplicationList)|v(?:hostOptions|irtualHost)|S(?:MTPTLSOpts|SLVarIf))$/; +our $hashParameters = qr/^(?:(?:l(?:o(?:ca(?:lSessionStorageOption|tionRule)|goutService)|dapExportedVar|wp(?:Ssl)?Opt)|(?:(?:d(?:emo|bi)|facebook|webID)ExportedVa|exported(?:Heade|Va))r|g(?:r(?:antSessionRule|oup)|lobalStorageOption)|n(?:otificationStorageOption|ginxCustomHandler)|re(?:moteGlobalStorageOption|loadUrl)|CAS_proxiedService|macro)s|o(?:idc(?:RPMetaData(?:(?:Option(?:sExtraClaim)?|ExportedVar)s|Node)|OPMetaData(?:(?:ExportedVar|Option)s|J(?:SON|WKS)|Node)|S(?:erviceMetaDataAuthnContext|torageOptions))|penIdExportedVars)|s(?:aml(?:S(?:PMetaData(?:(?:ExportedAttribute|Option)s|Node|XML)|torageOptions)|IDPMetaData(?:(?:ExportedAttribute|Option)s|Node|XML))|essionDataToRemember|laveExportedVars)|c(?:as(?:S(?:rvMetaDataNode|torageOptions)|A(?:ppMetaDataNode|ttributes))|(?:ustomAddParam|ombModule)s)|p(?:ersistentStorageOptions|o(?:rtalSkinRules|st))|a(?:uthChoiceModules|pplicationList)|v(?:hostOptions|irtualHost)|S(?:MTPTLSOpts|SLVarIf))$/; our @sessionTypes = ( 'remoteGlobal', 'cas', 'global', 'localSession', 'persistent', 'saml', 'oidc' ); diff --git a/lemonldap-ng-common/lib/Lemonldap/NG/Common/Conf/RESTServer.pm b/lemonldap-ng-common/lib/Lemonldap/NG/Common/Conf/RESTServer.pm index 8533f199f..d2565a1f0 100644 --- a/lemonldap-ng-common/lib/Lemonldap/NG/Common/Conf/RESTServer.pm +++ b/lemonldap-ng-common/lib/Lemonldap/NG/Common/Conf/RESTServer.pm @@ -444,6 +444,65 @@ sub oidcRPMetaDataNodes { return $self->_oidcMetaDataNodes( 'RP', $req, @path ); } +# 314 - CAS +# --- + +sub _casMetaDataNodes { + my ( $self, $type, $req, @path ) = @_; + my $refKey = + ( $type eq 'App' ? 'casAppMetaDataOptions' : 'casSrvMetaDataOptions' ); + return $self->complexNodesRoot( $req, $refKey, "oidc${type}MetaDataNode" ) + unless (@path); + + my $partner = shift @path; + my $query = shift @path; + unless ($query) { + return $self->sendError( $req, + "Bad request: oidc${type}MetaDataNode query must ask for a key", + 400 ); + } + + # setDefault response for new partners + return $self->sendError( $req, 'setDefault', 200 ) + if ( $partner =~ /^new__/ ); + + # Reject unknown partners + return $self->sendError( $req, "Unknown CAS partner ($partner)", 400 ) + unless ( defined eval { $self->getConfKey( $req, $refKey )->{$partner}; } + ); + + my ( $id, $resp ) = ( 1, [] ); + + # Options + if ( + $query =~ { + App => qr/^$casAppMetaDataNodeKeys$/o, + Srv => qr/^$casSrvMetaDataNodeKeys$/o + }->{$type} + ) + { + my $value = eval { + $self->getConfKey( $req, "cas${type}MetaDataOptions" )->{$partner} + ->{$query}; + } // undef; + return $self->sendJSONresponse( $req, { value => $value } ); + } + else { + return $self->sendError( $req, + "Bad key for cas${type}MetaDataNode ($query)", 400 ); + } +} + +sub casSrvMetaDataNodes { + my ( $self, $req, @path ) = @_; + return $self->_oidcMetaDataNodes( 'Srv', $req, @path ); +} + +sub casAppMetaDataNodes { + my ( $self, $req, @path ) = @_; + return $self->_oidcMetaDataNodes( 'App', $req, @path ); +} + # 32 - Other special nodes # ------------------- @@ -654,7 +713,9 @@ sub metadatas { my $id = -1; my ($ind) = map { $id++; $_ == $res->{cfgNum} ? ($id) : () } @a; if ($ind) { $res->{prev} = $a[ $ind - 1 ]; } - if ( defined $ind and $ind < $#a ) { $res->{next} = $a[ $ind + 1 ]; } + if ( defined $ind and $ind < $#a ) { + $res->{next} = $a[ $ind + 1 ]; + } if ( $self->can('userId') ) { $self->userLogger->info( 'User ' . $self->userId($req) @@ -664,7 +725,8 @@ sub metadatas { } else { $self->logger->info( - "REST request to get configuration metadatas ($res->{cfgNum})"); + "REST request to get configuration metadatas ($res->{cfgNum})" + ); } return $self->sendJSONresponse( $req, $res ); } @@ -730,7 +792,8 @@ sub getKey { # When scalar return $self->sendError( $req, "Key $key is not a hash", 400 ) if ($subkey); - return $self->sendError( $req, 'setDefault', 200 ) unless defined($value); + return $self->sendError( $req, 'setDefault', 200 ) + unless defined($value); return $self->sendJSONresponse( $req, { value => $value } ); # TODO authParam key diff --git a/lemonldap-ng-common/lib/Lemonldap/NG/Common/Conf/ReConstants.pm b/lemonldap-ng-common/lib/Lemonldap/NG/Common/Conf/ReConstants.pm index c0c814730ebfe9212b807874e8ae385bc5749919..c075627d625bb170206a69e4576bbe147faecd7e 100644 GIT binary patch delta 175 zcmbR4vdMLW9-~@vVzFaEfp2O_qDx{)qF;VWs&{H-v4RRvJh-R~CcasP(U5I&5WAE> z4NyYE-U_Iv1}LwoIXQ=2DFTNfwhHQTF-Z*S)?E3eMd(Jttpch-wamYuBr`v+IJ78d Oa~u0^*3F*0=R^R<0zD)E delta 57 zcmdnwI^AW19^+&~4)M*Ui~?-p#fiB&8unJ6E;YfLHTjt-$ { 'type' => 'bool' }, - 'CAS_url' => { - 'msgFail' => '__badUrl__', - 'test' => -qr/(?:(?:https?):\/\/(?:(?:(?:(?:(?:(?:[a-zA-Z0-9][-a-zA-Z0-9]*)?[a-zA-Z0-9])[.])*(?:[a-zA-Z][-a-zA-Z0-9]*[a-zA-Z0-9]|[a-zA-Z])[.]?)|(?:[0-9]+[.][0-9]+[.][0-9]+[.][0-9]+)))(?::(?:(?:[0-9]*)))?(?:\/(?:(?:(?:(?:(?:(?:[a-zA-Z0-9\-_.!~*'():@&=+\$,]+|(?:%[a-fA-F0-9][a-fA-F0-9]))*)(?:;(?:(?:[a-zA-Z0-9\-_.!~*'():@&=+\$,]+|(?:%[a-fA-F0-9][a-fA-F0-9]))*))*)(?:\/(?:(?:(?:[a-zA-Z0-9\-_.!~*'():@&=+\$,]+|(?:%[a-fA-F0-9][a-fA-F0-9]))*)(?:;(?:(?:[a-zA-Z0-9\-_.!~*'():@&=+\$,]+|(?:%[a-fA-F0-9][a-fA-F0-9]))*))*))*))(?:[?](?:(?:(?:[;\/?:@&=+\$,a-zA-Z0-9\-_.!~*'()]+|(?:%[a-fA-F0-9][a-fA-F0-9]))*)))?))?)/, - 'type' => 'text' - }, 'casAccessControlPolicy' => { 'default' => 'none', 'select' => [ @@ -650,12 +644,24 @@ qr/(?:(?:https?):\/\/(?:(?:(?:(?:(?:(?:[a-zA-Z0-9][-a-zA-Z0-9]*)?[a-zA-Z0-9])[.] ], 'type' => 'select' }, + 'casAppMetaDataNodes' => { + 'type' => 'casAppMetaDataNodeContainer' + }, 'casAttr' => { 'type' => 'text' }, 'casAttributes' => { 'type' => 'keyTextContainer' }, + 'casSrvMetaDataNodes' => { + 'type' => 'casSrvMetaDataNodeContainer' + }, + 'casSrvMetaDataOptionsUrl' => { + 'msgFail' => '__badUrl__', + 'test' => +qr/(?:(?:https?):\/\/(?:(?:(?:(?:(?:(?:[a-zA-Z0-9][-a-zA-Z0-9]*)?[a-zA-Z0-9])[.])*(?:[a-zA-Z][-a-zA-Z0-9]*[a-zA-Z0-9]|[a-zA-Z])[.]?)|(?:[0-9]+[.][0-9]+[.][0-9]+[.][0-9]+)))(?::(?:(?:[0-9]*)))?(?:\/(?:(?:(?:(?:(?:(?:[a-zA-Z0-9\-_.!~*'():@&=+\$,]+|(?:%[a-fA-F0-9][a-fA-F0-9]))*)(?:;(?:(?:[a-zA-Z0-9\-_.!~*'():@&=+\$,]+|(?:%[a-fA-F0-9][a-fA-F0-9]))*))*)(?:\/(?:(?:(?:[a-zA-Z0-9\-_.!~*'():@&=+\$,]+|(?:%[a-fA-F0-9][a-fA-F0-9]))*)(?:;(?:(?:[a-zA-Z0-9\-_.!~*'():@&=+\$,]+|(?:%[a-fA-F0-9][a-fA-F0-9]))*))*))*))(?:[?](?:(?:(?:[;\/?:@&=+\$,a-zA-Z0-9\-_.!~*'()]+|(?:%[a-fA-F0-9][a-fA-F0-9]))*)))?))?)/, + 'type' => 'text' + }, 'casStorage' => { 'type' => 'PerlModule' }, diff --git a/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Build/Attributes.pm b/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Build/Attributes.pm index 8188750b9..044d5130d 100644 --- a/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Build/Attributes.pm +++ b/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Build/Attributes.pm @@ -2065,12 +2065,28 @@ m{^(?:ldapi://[^/]*/?|\w[\w\-\.]*(?::\d{1,5})?|ldap(?:s|\+tls)?://\w[\w\-\.]*(?: keyMsgFail => '__badCasProxyId__', }, CAS_renew => { type => 'bool', }, - CAS_url => { + casSrvMetaDataOptionsUrl => { type => 'text', test => $url, msgFail => '__badUrl__', }, + # Fake attribute: used by manager REST API to agglomerate all nodes + # related to a SAML IDP partner + casSrvMetaDataNodes => { + type => 'casSrvMetaDataNodeContainer', + template => 'casSrvMetaDataNode', + }, + + # Fake attribute: used by manager REST API to agglomerate all nodes + # related to a SAML SP partner + casAppMetaDataNodes => { + type => 'casAppMetaDataNodeContainer', + help => 'authsaml.html', + template => 'casAppMetaDataNode', + }, + + # PAM pamAuthnLevel => { type => 'int', diff --git a/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Build/CTrees.pm b/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Build/CTrees.pm index 95054b6de..2ed9f932c 100644 --- a/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Build/CTrees.pm +++ b/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Build/CTrees.pm @@ -214,6 +214,11 @@ sub cTrees { }, 'oidcRPMetaDataOptionsExtraClaims', ], + casSrvMetaDataNode => [ + 'casSrvMetaDataOptionsUrl', + ], + casAppMetaDataNode => [ + ], }; } diff --git a/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Build/Tree.pm b/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Build/Tree.pm index 0dc6afa46..d8043c1a0 100644 --- a/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Build/Tree.pm +++ b/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Build/Tree.pm @@ -122,9 +122,9 @@ sub tree { title => 'casParams', help => 'authcas.html', nodes => [ - 'CAS_authnLevel', 'CAS_url', - 'CAS_CAFile', 'CAS_renew', - 'CAS_gateway', 'CAS_proxiedServices' + 'CAS_authnLevel', 'CAS_CAFile', + 'CAS_renew', 'CAS_gateway', + 'CAS_proxiedServices' ] }, { @@ -911,6 +911,8 @@ sub tree { }, 'oidcOPMetaDataNodes', 'oidcRPMetaDataNodes', + 'casSrvMetaDataNodes', + 'casAppMetaDataNodes', ]; } diff --git a/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Conf.pm b/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Conf.pm index 678e525de..d2d2bf148 100644 --- a/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Conf.pm +++ b/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Conf.pm @@ -43,6 +43,7 @@ sub addRoutes { ':cfgNum' => [ qw(virtualHosts samlIDPMetaDataNodes samlSPMetaDataNodes applicationList oidcOPMetaDataNodes oidcRPMetaDataNodes + casSrvMetaDataNodes casAppMetaDataNodes authChoiceModules grantSessionRules combModules openIdIDPList) ] diff --git a/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Conf/Parser.pm b/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Conf/Parser.pm index 92eeda669..387692c04 100644 --- a/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Conf/Parser.pm +++ b/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Conf/Parser.pm @@ -426,6 +426,23 @@ sub _scanNodes { } next; } + + # CAS + elsif ( $base =~ /^cas(?:App|Srv)MetaDataNodes$/ ) { + my $optKey = $&; + hdebug('CAS'); + if ( $target =~ + /^(?:$casSrvMetaDataNodeKeys|$casAppMetaDataNodeKeys)/o ) + { + $self->set( $optKey, [ $oldName, $key ], + $target, $leaf->{data} ); + } + else { + push @{ $self->errors }, + { message => "Unknown OIDC metadata option $target" }; + return 0; + } + } else { push @{ $self->errors }, { message => "Fatal: unknown special sub node $base" }; @@ -752,7 +769,8 @@ sub _scanNodes { @oldKeys = keys %{ $self->refConf->{$name}->{$host} }; } foreach my $prm ( @{ $getHost->{h} } ) { - $self->newConf->{$name}->{$host}->{ $prm->{k} } = $prm->{v}; + $self->newConf->{$name}->{$host}->{ $prm->{k} } = + $prm->{v}; if ( !$change and ( diff --git a/lemonldap-ng-manager/site/coffee/manager.coffee b/lemonldap-ng-manager/site/coffee/manager.coffee index b6aac4ff4..7a665ba41 100644 --- a/lemonldap-ng-manager/site/coffee/manager.coffee +++ b/lemonldap-ng-manager/site/coffee/manager.coffee @@ -373,6 +373,12 @@ llapp.controller 'TreeCtrl', [ $scope.addOidcRp = -> $scope.newTemplateNode 'oidcRPMetaDataNode', 'oidcRPName', 'rp-example' + $scope.addCasSrv = -> + $scope.newTemplateNode 'casSrvMetaDataNode', 'casPartnerName', 'srv-example' + + $scope.addCasApp = -> + $scope.newTemplateNode 'casAppMetaDataNode', 'casPartnerName', 'app-example' + $scope.newTemplateNode = (type, title, init) -> $scope.message = title: title diff --git a/lemonldap-ng-manager/site/htdocs/static/forms/casAppMetaDataNode.html b/lemonldap-ng-manager/site/htdocs/static/forms/casAppMetaDataNode.html new file mode 100644 index 000000000..65e55df96 --- /dev/null +++ b/lemonldap-ng-manager/site/htdocs/static/forms/casAppMetaDataNode.html @@ -0,0 +1,21 @@ +
+
+

+
+ + + + + +
+
+ diff --git a/lemonldap-ng-manager/site/htdocs/static/forms/casAppMetaDataNodeContainer.html b/lemonldap-ng-manager/site/htdocs/static/forms/casAppMetaDataNodeContainer.html new file mode 100644 index 000000000..24a98d786 --- /dev/null +++ b/lemonldap-ng-manager/site/htdocs/static/forms/casAppMetaDataNodeContainer.html @@ -0,0 +1,26 @@ +
+
+

+
+ + + + + + + + + + +
+ + +
+
+ diff --git a/lemonldap-ng-manager/site/htdocs/static/forms/casSrvMetaDataNode.html b/lemonldap-ng-manager/site/htdocs/static/forms/casSrvMetaDataNode.html new file mode 100644 index 000000000..69315b630 --- /dev/null +++ b/lemonldap-ng-manager/site/htdocs/static/forms/casSrvMetaDataNode.html @@ -0,0 +1,21 @@ +
+
+

+
+ + + + + +
+
+ diff --git a/lemonldap-ng-manager/site/htdocs/static/forms/casSrvMetaDataNodeContainer.html b/lemonldap-ng-manager/site/htdocs/static/forms/casSrvMetaDataNodeContainer.html new file mode 100644 index 000000000..a1fa25888 --- /dev/null +++ b/lemonldap-ng-manager/site/htdocs/static/forms/casSrvMetaDataNodeContainer.html @@ -0,0 +1,26 @@ +
+
+

+
+ + + + + + + + + + +
+ + +
+
+ diff --git a/lemonldap-ng-manager/site/htdocs/static/js/conftree.js b/lemonldap-ng-manager/site/htdocs/static/js/conftree.js index baac6341a..09b7420de 100644 --- a/lemonldap-ng-manager/site/htdocs/static/js/conftree.js +++ b/lemonldap-ng-manager/site/htdocs/static/js/conftree.js @@ -8,6 +8,18 @@ function templates(tpl,key) { }; }; switch(tpl){ + case 'casAppMetaDataNode': + return [] +; + case 'casSrvMetaDataNode': + return [ + { + "get" : tpl+"s/"+key+"/"+"casSrvMetaDataOptionsUrl", + "id" : tpl+"s/"+key+"/"+"casSrvMetaDataOptionsUrl", + "title" : "casSrvMetaDataOptionsUrl" + } +] +; case 'oidcOPMetaDataNode': return [ { diff --git a/lemonldap-ng-manager/site/htdocs/static/js/conftree.min.js b/lemonldap-ng-manager/site/htdocs/static/js/conftree.min.js index 9fbb56977..7521d47eb 100644 --- a/lemonldap-ng-manager/site/htdocs/static/js/conftree.min.js +++ b/lemonldap-ng-manager/site/htdocs/static/js/conftree.min.js @@ -1 +1 @@ -function templates(b,c){var d;var a=function(e){return{id:b+"s/"+(d++),title:e,get:b+"s/"+c+"/"+e}};switch(b){case"oidcOPMetaDataNode":return[{get:b+"s/"+c+"/oidcOPMetaDataJSON",id:b+"s/"+c+"/oidcOPMetaDataJSON",title:"oidcOPMetaDataJSON",type:"file"},{get:b+"s/"+c+"/oidcOPMetaDataJWKS",id:b+"s/"+c+"/oidcOPMetaDataJWKS",title:"oidcOPMetaDataJWKS",type:"file"},{cnodes:b+"s/"+c+"/oidcOPMetaDataExportedVars","default":[{data:"name",id:b+"s/"+c+"/oidcOPMetaDataExportedVars/cn",title:"cn",type:"keyText"},{data:"email",id:b+"s/"+c+"/oidcOPMetaDataExportedVars/mail",title:"mail",type:"keyText"},{data:"family_name",id:b+"s/"+c+"/oidcOPMetaDataExportedVars/sn",title:"sn",type:"keyText"},{data:"sub",id:b+"s/"+c+"/oidcOPMetaDataExportedVars/uid",title:"uid",type:"keyText"}],id:b+"s/"+c+"/oidcOPMetaDataExportedVars",title:"oidcOPMetaDataExportedVars",type:"keyTextContainer"},{_nodes:[{_nodes:[{get:b+"s/"+c+"/oidcOPMetaDataOptionsConfigurationURI",id:b+"s/"+c+"/oidcOPMetaDataOptionsConfigurationURI",title:"oidcOPMetaDataOptionsConfigurationURI"},{"default":0,get:b+"s/"+c+"/oidcOPMetaDataOptionsJWKSTimeout",id:b+"s/"+c+"/oidcOPMetaDataOptionsJWKSTimeout",title:"oidcOPMetaDataOptionsJWKSTimeout",type:"int"},{get:b+"s/"+c+"/oidcOPMetaDataOptionsClientID",id:b+"s/"+c+"/oidcOPMetaDataOptionsClientID",title:"oidcOPMetaDataOptionsClientID"},{get:b+"s/"+c+"/oidcOPMetaDataOptionsClientSecret",id:b+"s/"+c+"/oidcOPMetaDataOptionsClientSecret",title:"oidcOPMetaDataOptionsClientSecret",type:"password"},{"default":0,get:b+"s/"+c+"/oidcOPMetaDataOptionsStoreIDToken",id:b+"s/"+c+"/oidcOPMetaDataOptionsStoreIDToken",title:"oidcOPMetaDataOptionsStoreIDToken",type:"bool"}],id:"oidcOPMetaDataOptionsConfiguration",title:"oidcOPMetaDataOptionsConfiguration",type:"simpleInputContainer"},{_nodes:[{"default":"openid profile",get:b+"s/"+c+"/oidcOPMetaDataOptionsScope",id:b+"s/"+c+"/oidcOPMetaDataOptionsScope",title:"oidcOPMetaDataOptionsScope"},{"default":"",get:b+"s/"+c+"/oidcOPMetaDataOptionsDisplay",id:b+"s/"+c+"/oidcOPMetaDataOptionsDisplay",select:[{k:"",v:""},{k:"page",v:"page"},{k:"popup",v:"popup"},{k:"touch",v:"touch"},{k:"wap",v:"wap"}],title:"oidcOPMetaDataOptionsDisplay",type:"select"},{get:b+"s/"+c+"/oidcOPMetaDataOptionsPrompt",id:b+"s/"+c+"/oidcOPMetaDataOptionsPrompt",title:"oidcOPMetaDataOptionsPrompt"},{"default":0,get:b+"s/"+c+"/oidcOPMetaDataOptionsMaxAge",id:b+"s/"+c+"/oidcOPMetaDataOptionsMaxAge",title:"oidcOPMetaDataOptionsMaxAge",type:"int"},{get:b+"s/"+c+"/oidcOPMetaDataOptionsUiLocales",id:b+"s/"+c+"/oidcOPMetaDataOptionsUiLocales",title:"oidcOPMetaDataOptionsUiLocales"},{get:b+"s/"+c+"/oidcOPMetaDataOptionsAcrValues",id:b+"s/"+c+"/oidcOPMetaDataOptionsAcrValues",title:"oidcOPMetaDataOptionsAcrValues"},{"default":"client_secret_post",get:b+"s/"+c+"/oidcOPMetaDataOptionsTokenEndpointAuthMethod",id:b+"s/"+c+"/oidcOPMetaDataOptionsTokenEndpointAuthMethod",select:[{k:"client_secret_post",v:"client_secret_post"},{k:"client_secret_basic",v:"client_secret_basic"}],title:"oidcOPMetaDataOptionsTokenEndpointAuthMethod",type:"select"},{"default":1,get:b+"s/"+c+"/oidcOPMetaDataOptionsCheckJWTSignature",id:b+"s/"+c+"/oidcOPMetaDataOptionsCheckJWTSignature",title:"oidcOPMetaDataOptionsCheckJWTSignature",type:"bool"},{"default":30,get:b+"s/"+c+"/oidcOPMetaDataOptionsIDTokenMaxAge",id:b+"s/"+c+"/oidcOPMetaDataOptionsIDTokenMaxAge",title:"oidcOPMetaDataOptionsIDTokenMaxAge",type:"int"},{"default":1,get:b+"s/"+c+"/oidcOPMetaDataOptionsUseNonce",id:b+"s/"+c+"/oidcOPMetaDataOptionsUseNonce",title:"oidcOPMetaDataOptionsUseNonce",type:"bool"}],id:"oidcOPMetaDataOptionsProtocol",title:"oidcOPMetaDataOptionsProtocol",type:"simpleInputContainer"},{_nodes:[{get:b+"s/"+c+"/oidcOPMetaDataOptionsDisplayName",id:b+"s/"+c+"/oidcOPMetaDataOptionsDisplayName",title:"oidcOPMetaDataOptionsDisplayName"},{get:b+"s/"+c+"/oidcOPMetaDataOptionsIcon",id:b+"s/"+c+"/oidcOPMetaDataOptionsIcon",title:"oidcOPMetaDataOptionsIcon"}],id:"oidcOPMetaDataOptionsDisplayParams",title:"oidcOPMetaDataOptionsDisplayParams",type:"simpleInputContainer"}],id:"oidcOPMetaDataOptions",title:"oidcOPMetaDataOptions"}];case"oidcRPMetaDataNode":return[{cnodes:b+"s/"+c+"/oidcRPMetaDataExportedVars","default":[{data:"mail",id:b+"s/"+c+"/oidcRPMetaDataExportedVars/email",title:"email",type:"keyText"},{data:"sn",id:b+"s/"+c+"/oidcRPMetaDataExportedVars/family_name",title:"family_name",type:"keyText"},{data:"cn",id:b+"s/"+c+"/oidcRPMetaDataExportedVars/name",title:"name",type:"keyText"}],id:b+"s/"+c+"/oidcRPMetaDataExportedVars",title:"oidcRPMetaDataExportedVars",type:"keyTextContainer"},{_nodes:[{_nodes:[{get:b+"s/"+c+"/oidcRPMetaDataOptionsClientID",id:b+"s/"+c+"/oidcRPMetaDataOptionsClientID",title:"oidcRPMetaDataOptionsClientID"},{get:b+"s/"+c+"/oidcRPMetaDataOptionsClientSecret",id:b+"s/"+c+"/oidcRPMetaDataOptionsClientSecret",title:"oidcRPMetaDataOptionsClientSecret",type:"password"}],id:"oidcRPMetaDataOptionsAuthentication",title:"oidcRPMetaDataOptionsAuthentication",type:"simpleInputContainer"},{_nodes:[{get:b+"s/"+c+"/oidcRPMetaDataOptionsDisplayName",id:b+"s/"+c+"/oidcRPMetaDataOptionsDisplayName",title:"oidcRPMetaDataOptionsDisplayName"},{get:b+"s/"+c+"/oidcRPMetaDataOptionsIcon",id:b+"s/"+c+"/oidcRPMetaDataOptionsIcon",title:"oidcRPMetaDataOptionsIcon"}],id:"oidcRPMetaDataOptionsDisplay",title:"oidcRPMetaDataOptionsDisplay",type:"simpleInputContainer"},{get:b+"s/"+c+"/oidcRPMetaDataOptionsUserIDAttr",id:b+"s/"+c+"/oidcRPMetaDataOptionsUserIDAttr",title:"oidcRPMetaDataOptionsUserIDAttr"},{"default":"HS512",get:b+"s/"+c+"/oidcRPMetaDataOptionsIDTokenSignAlg",id:b+"s/"+c+"/oidcRPMetaDataOptionsIDTokenSignAlg",select:[{k:"none",v:"None"},{k:"HS256",v:"HS256"},{k:"HS384",v:"HS384"},{k:"HS512",v:"HS512"},{k:"RS256",v:"RS256"},{k:"RS384",v:"RS384"},{k:"RS512",v:"RS512"}],title:"oidcRPMetaDataOptionsIDTokenSignAlg",type:"select"},{"default":3600,get:b+"s/"+c+"/oidcRPMetaDataOptionsIDTokenExpiration",id:b+"s/"+c+"/oidcRPMetaDataOptionsIDTokenExpiration",title:"oidcRPMetaDataOptionsIDTokenExpiration",type:"int"},{"default":3600,get:b+"s/"+c+"/oidcRPMetaDataOptionsAccessTokenExpiration",id:b+"s/"+c+"/oidcRPMetaDataOptionsAccessTokenExpiration",title:"oidcRPMetaDataOptionsAccessTokenExpiration",type:"int"},{get:b+"s/"+c+"/oidcRPMetaDataOptionsRedirectUris",id:b+"s/"+c+"/oidcRPMetaDataOptionsRedirectUris",title:"oidcRPMetaDataOptionsRedirectUris"},{"default":0,get:b+"s/"+c+"/oidcRPMetaDataOptionsBypassConsent",help:"openidconnectclaims.html",id:b+"s/"+c+"/oidcRPMetaDataOptionsBypassConsent",title:"oidcRPMetaDataOptionsBypassConsent",type:"bool"},{_nodes:[{get:b+"s/"+c+"/oidcRPMetaDataOptionsLogoutUrl",id:b+"s/"+c+"/oidcRPMetaDataOptionsLogoutUrl",title:"oidcRPMetaDataOptionsLogoutUrl"},{"default":"front",get:b+"s/"+c+"/oidcRPMetaDataOptionsLogoutType",id:b+"s/"+c+"/oidcRPMetaDataOptionsLogoutType",select:[{k:"front",v:"Front Channel"},{k:"back",v:"Back Channel"}],title:"oidcRPMetaDataOptionsLogoutType",type:"select"},{get:b+"s/"+c+"/oidcRPMetaDataOptionsLogoutSessionRequired",id:b+"s/"+c+"/oidcRPMetaDataOptionsLogoutSessionRequired",title:"oidcRPMetaDataOptionsLogoutSessionRequired",type:"bool"}],id:"logout",title:"logout",type:"simpleInputContainer"},{get:b+"s/"+c+"/oidcRPMetaDataOptionsRule",id:b+"s/"+c+"/oidcRPMetaDataOptionsRule",title:"oidcRPMetaDataOptionsRule"}],id:"oidcRPMetaDataOptions",title:"oidcRPMetaDataOptions"},{cnodes:b+"s/"+c+"/oidcRPMetaDataOptionsExtraClaims","default":[],id:b+"s/"+c+"/oidcRPMetaDataOptionsExtraClaims",title:"oidcRPMetaDataOptionsExtraClaims",type:"keyTextContainer"}];case"samlIDPMetaDataNode":return[{get:b+"s/"+c+"/samlIDPMetaDataXML",id:b+"s/"+c+"/samlIDPMetaDataXML",title:"samlIDPMetaDataXML",type:"file"},{cnodes:b+"s/"+c+"/samlIDPMetaDataExportedAttributes","default":[],help:"authsaml.html#exported_attributes",id:b+"s/"+c+"/samlIDPMetaDataExportedAttributes",title:"samlIDPMetaDataExportedAttributes",type:"samlAttributeContainer"},{_nodes:[{"default":"",get:b+"s/"+c+"/samlIDPMetaDataOptionsResolutionRule",id:b+"s/"+c+"/samlIDPMetaDataOptionsResolutionRule",title:"samlIDPMetaDataOptionsResolutionRule",type:"longtext"},{"default":"",get:b+"s/"+c+"/samlIDPMetaDataOptionsNameIDFormat",id:b+"s/"+c+"/samlIDPMetaDataOptionsNameIDFormat",select:[{k:"",v:""},{k:"unspecified",v:"Unspecified"},{k:"email",v:"Email"},{k:"x509",v:"X509 certificate"},{k:"windows",v:"Windows"},{k:"kerberos",v:"Kerberos"},{k:"entity",v:"Entity"},{k:"persistent",v:"Persistent"},{k:"transient",v:"Transient"},{k:"encrypted",v:"Encrypted"}],title:"samlIDPMetaDataOptionsNameIDFormat",type:"select"},{"default":0,get:b+"s/"+c+"/samlIDPMetaDataOptionsForceAuthn",id:b+"s/"+c+"/samlIDPMetaDataOptionsForceAuthn",title:"samlIDPMetaDataOptionsForceAuthn",type:"bool"},{"default":0,get:b+"s/"+c+"/samlIDPMetaDataOptionsIsPassive",id:b+"s/"+c+"/samlIDPMetaDataOptionsIsPassive",title:"samlIDPMetaDataOptionsIsPassive",type:"bool"},{"default":0,get:b+"s/"+c+"/samlIDPMetaDataOptionsAllowProxiedAuthn",id:b+"s/"+c+"/samlIDPMetaDataOptionsAllowProxiedAuthn",title:"samlIDPMetaDataOptionsAllowProxiedAuthn",type:"bool"},{"default":0,get:b+"s/"+c+"/samlIDPMetaDataOptionsAllowLoginFromIDP",id:b+"s/"+c+"/samlIDPMetaDataOptionsAllowLoginFromIDP",title:"samlIDPMetaDataOptionsAllowLoginFromIDP",type:"bool"},{"default":"",get:b+"s/"+c+"/samlIDPMetaDataOptionsRequestedAuthnContext",id:b+"s/"+c+"/samlIDPMetaDataOptionsRequestedAuthnContext",select:[{k:"",v:""},{k:"kerberos",v:"Kerberos"},{k:"password-protected-transport",v:"Password protected transport"},{k:"password",v:"Password"},{k:"tls-client",v:"TLS client certificate"}],title:"samlIDPMetaDataOptionsRequestedAuthnContext",type:"select"},{"default":0,get:b+"s/"+c+"/samlIDPMetaDataOptionsRelayStateURL",id:b+"s/"+c+"/samlIDPMetaDataOptionsRelayStateURL",title:"samlIDPMetaDataOptionsRelayStateURL",type:"bool"}],help:"authsaml.html#options",id:"samlIDPMetaDataOptions",title:"samlIDPMetaDataOptions",type:"simpleInputContainer"},{_nodes:[{"default":0,get:b+"s/"+c+"/samlIDPMetaDataOptionsAdaptSessionUtime",id:b+"s/"+c+"/samlIDPMetaDataOptionsAdaptSessionUtime",title:"samlIDPMetaDataOptionsAdaptSessionUtime",type:"bool"},{"default":0,get:b+"s/"+c+"/samlIDPMetaDataOptionsForceUTF8",id:b+"s/"+c+"/samlIDPMetaDataOptionsForceUTF8",title:"samlIDPMetaDataOptionsForceUTF8",type:"bool"},{"default":0,get:b+"s/"+c+"/samlIDPMetaDataOptionsStoreSAMLToken",id:b+"s/"+c+"/samlIDPMetaDataOptionsStoreSAMLToken",title:"samlIDPMetaDataOptionsStoreSAMLToken",type:"bool"}],id:"samlIDPMetaDataOptionsSession",title:"samlIDPMetaDataOptionsSession",type:"simpleInputContainer"},{_nodes:[{"default":-1,get:b+"s/"+c+"/samlIDPMetaDataOptionsSignSSOMessage",id:b+"s/"+c+"/samlIDPMetaDataOptionsSignSSOMessage",title:"samlIDPMetaDataOptionsSignSSOMessage",type:"trool"},{"default":1,get:b+"s/"+c+"/samlIDPMetaDataOptionsCheckSSOMessageSignature",id:b+"s/"+c+"/samlIDPMetaDataOptionsCheckSSOMessageSignature",title:"samlIDPMetaDataOptionsCheckSSOMessageSignature",type:"bool"},{"default":-1,get:b+"s/"+c+"/samlIDPMetaDataOptionsSignSLOMessage",id:b+"s/"+c+"/samlIDPMetaDataOptionsSignSLOMessage",title:"samlIDPMetaDataOptionsSignSLOMessage",type:"trool"},{"default":1,get:b+"s/"+c+"/samlIDPMetaDataOptionsCheckSLOMessageSignature",id:b+"s/"+c+"/samlIDPMetaDataOptionsCheckSLOMessageSignature",title:"samlIDPMetaDataOptionsCheckSLOMessageSignature",type:"bool"}],id:"samlIDPMetaDataOptionsSignature",title:"samlIDPMetaDataOptionsSignature",type:"simpleInputContainer"},{_nodes:[{"default":"",get:b+"s/"+c+"/samlIDPMetaDataOptionsSSOBinding",id:b+"s/"+c+"/samlIDPMetaDataOptionsSSOBinding",select:[{k:"",v:""},{k:"http-post",v:"POST"},{k:"http-redirect",v:"Redirect"},{k:"artifact-get",v:"Artifact GET"}],title:"samlIDPMetaDataOptionsSSOBinding",type:"select"},{"default":"",get:b+"s/"+c+"/samlIDPMetaDataOptionsSLOBinding",id:b+"s/"+c+"/samlIDPMetaDataOptionsSLOBinding",select:[{k:"",v:""},{k:"http-post",v:"POST"},{k:"http-redirect",v:"Redirect"},{k:"http-soap",v:"SOAP"}],title:"samlIDPMetaDataOptionsSLOBinding",type:"select"}],id:"samlIDPMetaDataOptionsBinding",title:"samlIDPMetaDataOptionsBinding",type:"simpleInputContainer"},{_nodes:[{"default":"none",get:b+"s/"+c+"/samlIDPMetaDataOptionsEncryptionMode",id:b+"s/"+c+"/samlIDPMetaDataOptionsEncryptionMode",select:[{k:"none",v:"None"},{k:"nameid",v:"Name ID"},{k:"assertion",v:"Assertion"}],title:"samlIDPMetaDataOptionsEncryptionMode",type:"select"},{"default":1,get:b+"s/"+c+"/samlIDPMetaDataOptionsCheckTime",id:b+"s/"+c+"/samlIDPMetaDataOptionsCheckTime",title:"samlIDPMetaDataOptionsCheckTime",type:"bool"},{"default":1,get:b+"s/"+c+"/samlIDPMetaDataOptionsCheckAudience",id:b+"s/"+c+"/samlIDPMetaDataOptionsCheckAudience",title:"samlIDPMetaDataOptionsCheckAudience",type:"bool"}],id:"samlIDPMetaDataOptionsSecurity",title:"samlIDPMetaDataOptionsSecurity",type:"simpleInputContainer"}];case"samlSPMetaDataNode":return[{get:b+"s/"+c+"/samlSPMetaDataXML",id:b+"s/"+c+"/samlSPMetaDataXML",title:"samlSPMetaDataXML",type:"file"},{cnodes:b+"s/"+c+"/samlSPMetaDataExportedAttributes","default":[],help:"idpsaml.html#exported_attributes",id:b+"s/"+c+"/samlSPMetaDataExportedAttributes",title:"samlSPMetaDataExportedAttributes",type:"samlAttributeContainer"},{_nodes:[{_nodes:[{"default":"",get:b+"s/"+c+"/samlSPMetaDataOptionsNameIDFormat",id:b+"s/"+c+"/samlSPMetaDataOptionsNameIDFormat",select:[{k:"",v:""},{k:"unspecified",v:"Unspecified"},{k:"email",v:"Email"},{k:"x509",v:"X509 certificate"},{k:"windows",v:"Windows"},{k:"kerberos",v:"Kerberos"},{k:"entity",v:"Entity"},{k:"persistent",v:"Persistent"},{k:"transient",v:"Transient"},{k:"encrypted",v:"Encrypted"}],title:"samlSPMetaDataOptionsNameIDFormat",type:"select"},{get:b+"s/"+c+"/samlSPMetaDataOptionsNameIDSessionKey",id:b+"s/"+c+"/samlSPMetaDataOptionsNameIDSessionKey",title:"samlSPMetaDataOptionsNameIDSessionKey"},{"default":0,get:b+"s/"+c+"/samlSPMetaDataOptionsOneTimeUse",id:b+"s/"+c+"/samlSPMetaDataOptionsOneTimeUse",title:"samlSPMetaDataOptionsOneTimeUse",type:"bool"},{"default":72000,get:b+"s/"+c+"/samlSPMetaDataOptionsSessionNotOnOrAfterTimeout",id:b+"s/"+c+"/samlSPMetaDataOptionsSessionNotOnOrAfterTimeout",title:"samlSPMetaDataOptionsSessionNotOnOrAfterTimeout",type:"int"},{"default":72000,get:b+"s/"+c+"/samlSPMetaDataOptionsNotOnOrAfterTimeout",id:b+"s/"+c+"/samlSPMetaDataOptionsNotOnOrAfterTimeout",title:"samlSPMetaDataOptionsNotOnOrAfterTimeout",type:"int"},{"default":1,get:b+"s/"+c+"/samlSPMetaDataOptionsForceUTF8",id:b+"s/"+c+"/samlSPMetaDataOptionsForceUTF8",title:"samlSPMetaDataOptionsForceUTF8",type:"bool"}],id:"samlSPMetaDataOptionsAuthnResponse",title:"samlSPMetaDataOptionsAuthnResponse",type:"simpleInputContainer"},{_nodes:[{"default":-1,get:b+"s/"+c+"/samlSPMetaDataOptionsSignSSOMessage",id:b+"s/"+c+"/samlSPMetaDataOptionsSignSSOMessage",title:"samlSPMetaDataOptionsSignSSOMessage",type:"trool"},{"default":1,get:b+"s/"+c+"/samlSPMetaDataOptionsCheckSSOMessageSignature",id:b+"s/"+c+"/samlSPMetaDataOptionsCheckSSOMessageSignature",title:"samlSPMetaDataOptionsCheckSSOMessageSignature",type:"bool"},{"default":-1,get:b+"s/"+c+"/samlSPMetaDataOptionsSignSLOMessage",id:b+"s/"+c+"/samlSPMetaDataOptionsSignSLOMessage",title:"samlSPMetaDataOptionsSignSLOMessage",type:"trool"},{"default":1,get:b+"s/"+c+"/samlSPMetaDataOptionsCheckSLOMessageSignature",id:b+"s/"+c+"/samlSPMetaDataOptionsCheckSLOMessageSignature",title:"samlSPMetaDataOptionsCheckSLOMessageSignature",type:"bool"}],id:"samlSPMetaDataOptionsSignature",title:"samlSPMetaDataOptionsSignature",type:"simpleInputContainer"},{_nodes:[{"default":"none",get:b+"s/"+c+"/samlSPMetaDataOptionsEncryptionMode",id:b+"s/"+c+"/samlSPMetaDataOptionsEncryptionMode",select:[{k:"none",v:"None"},{k:"nameid",v:"Name ID"},{k:"assertion",v:"Assertion"}],title:"samlSPMetaDataOptionsEncryptionMode",type:"select"},{"default":0,get:b+"s/"+c+"/samlSPMetaDataOptionsEnableIDPInitiatedURL",id:b+"s/"+c+"/samlSPMetaDataOptionsEnableIDPInitiatedURL",title:"samlSPMetaDataOptionsEnableIDPInitiatedURL",type:"bool"},{get:b+"s/"+c+"/samlSPMetaDataOptionsRule",id:b+"s/"+c+"/samlSPMetaDataOptionsRule",title:"samlSPMetaDataOptionsRule"}],id:"samlSPMetaDataOptionsSecurity",title:"samlSPMetaDataOptionsSecurity",type:"simpleInputContainer"}],help:"idpsaml.html#options",id:"samlSPMetaDataOptions",title:"samlSPMetaDataOptions"}];case"virtualHost":return[{cnodes:b+"s/"+c+"/locationRules","default":[{data:"deny",id:b+"s/"+c+"/locationRules/default",re:"default",title:"default",type:"rule"}],help:"writingrulesand_headers.html#rules",id:b+"s/"+c+"/locationRules",title:"locationRules",type:"ruleContainer"},{cnodes:b+"s/"+c+"/exportedHeaders",help:"writingrulesand_headers.html#headers",id:b+"s/"+c+"/exportedHeaders",title:"exportedHeaders",type:"keyTextContainer"},{cnodes:b+"s/"+c+"/post",help:"formreplay.html",id:b+"s/"+c+"/post",title:"post",type:"postContainer"},{_nodes:[{"default":-1,get:b+"s/"+c+"/vhostPort",id:b+"s/"+c+"/vhostPort",title:"vhostPort",type:"int"},{"default":-1,get:b+"s/"+c+"/vhostHttps",id:b+"s/"+c+"/vhostHttps",title:"vhostHttps",type:"trool"},{"default":0,get:b+"s/"+c+"/vhostMaintenance",id:b+"s/"+c+"/vhostMaintenance",title:"vhostMaintenance",type:"bool"},{get:b+"s/"+c+"/vhostAliases",id:b+"s/"+c+"/vhostAliases",title:"vhostAliases"},{"default":"Main",get:b+"s/"+c+"/vhostType",id:b+"s/"+c+"/vhostType",select:[{k:"Main",v:"Main"},{k:"Zimbra",v:"ZimbraPreAuth"},{k:"AuthBasic",v:"AuthBasic"},{k:"SecureToken",v:"SecureToken"},{k:"CDA",v:"CDA"},{k:"DevOps",v:"DevOps"},{k:"ServiceToken",v:"ServiceToken"}],title:"vhostType",type:"select"},{get:b+"s/"+c+"/vhostAuthnLevel",id:b+"s/"+c+"/vhostAuthnLevel",title:"vhostAuthnLevel",type:"int"}],help:"configvhost.html#options",id:"vhostOptions",title:"vhostOptions"}];default:return[]}}function setScopeVars(a){a.portal=a.data[0]._nodes[0]._nodes[0];a.getKey(a.portal);a.domain=a.data[0]._nodes[4]._nodes[1];a.getKey(a.domain)}; \ No newline at end of file +function templates(b,c){var d;var a=function(e){return{id:b+"s/"+(d++),title:e,get:b+"s/"+c+"/"+e}};switch(b){case"casAppMetaDataNode":return[];case"casSrvMetaDataNode":return[{get:b+"s/"+c+"/casSrvMetaDataOptionsUrl",id:b+"s/"+c+"/casSrvMetaDataOptionsUrl",title:"casSrvMetaDataOptionsUrl"}];case"oidcOPMetaDataNode":return[{get:b+"s/"+c+"/oidcOPMetaDataJSON",id:b+"s/"+c+"/oidcOPMetaDataJSON",title:"oidcOPMetaDataJSON",type:"file"},{get:b+"s/"+c+"/oidcOPMetaDataJWKS",id:b+"s/"+c+"/oidcOPMetaDataJWKS",title:"oidcOPMetaDataJWKS",type:"file"},{cnodes:b+"s/"+c+"/oidcOPMetaDataExportedVars","default":[{data:"name",id:b+"s/"+c+"/oidcOPMetaDataExportedVars/cn",title:"cn",type:"keyText"},{data:"email",id:b+"s/"+c+"/oidcOPMetaDataExportedVars/mail",title:"mail",type:"keyText"},{data:"family_name",id:b+"s/"+c+"/oidcOPMetaDataExportedVars/sn",title:"sn",type:"keyText"},{data:"sub",id:b+"s/"+c+"/oidcOPMetaDataExportedVars/uid",title:"uid",type:"keyText"}],id:b+"s/"+c+"/oidcOPMetaDataExportedVars",title:"oidcOPMetaDataExportedVars",type:"keyTextContainer"},{_nodes:[{_nodes:[{get:b+"s/"+c+"/oidcOPMetaDataOptionsConfigurationURI",id:b+"s/"+c+"/oidcOPMetaDataOptionsConfigurationURI",title:"oidcOPMetaDataOptionsConfigurationURI"},{"default":0,get:b+"s/"+c+"/oidcOPMetaDataOptionsJWKSTimeout",id:b+"s/"+c+"/oidcOPMetaDataOptionsJWKSTimeout",title:"oidcOPMetaDataOptionsJWKSTimeout",type:"int"},{get:b+"s/"+c+"/oidcOPMetaDataOptionsClientID",id:b+"s/"+c+"/oidcOPMetaDataOptionsClientID",title:"oidcOPMetaDataOptionsClientID"},{get:b+"s/"+c+"/oidcOPMetaDataOptionsClientSecret",id:b+"s/"+c+"/oidcOPMetaDataOptionsClientSecret",title:"oidcOPMetaDataOptionsClientSecret",type:"password"},{"default":0,get:b+"s/"+c+"/oidcOPMetaDataOptionsStoreIDToken",id:b+"s/"+c+"/oidcOPMetaDataOptionsStoreIDToken",title:"oidcOPMetaDataOptionsStoreIDToken",type:"bool"}],id:"oidcOPMetaDataOptionsConfiguration",title:"oidcOPMetaDataOptionsConfiguration",type:"simpleInputContainer"},{_nodes:[{"default":"openid profile",get:b+"s/"+c+"/oidcOPMetaDataOptionsScope",id:b+"s/"+c+"/oidcOPMetaDataOptionsScope",title:"oidcOPMetaDataOptionsScope"},{"default":"",get:b+"s/"+c+"/oidcOPMetaDataOptionsDisplay",id:b+"s/"+c+"/oidcOPMetaDataOptionsDisplay",select:[{k:"",v:""},{k:"page",v:"page"},{k:"popup",v:"popup"},{k:"touch",v:"touch"},{k:"wap",v:"wap"}],title:"oidcOPMetaDataOptionsDisplay",type:"select"},{get:b+"s/"+c+"/oidcOPMetaDataOptionsPrompt",id:b+"s/"+c+"/oidcOPMetaDataOptionsPrompt",title:"oidcOPMetaDataOptionsPrompt"},{"default":0,get:b+"s/"+c+"/oidcOPMetaDataOptionsMaxAge",id:b+"s/"+c+"/oidcOPMetaDataOptionsMaxAge",title:"oidcOPMetaDataOptionsMaxAge",type:"int"},{get:b+"s/"+c+"/oidcOPMetaDataOptionsUiLocales",id:b+"s/"+c+"/oidcOPMetaDataOptionsUiLocales",title:"oidcOPMetaDataOptionsUiLocales"},{get:b+"s/"+c+"/oidcOPMetaDataOptionsAcrValues",id:b+"s/"+c+"/oidcOPMetaDataOptionsAcrValues",title:"oidcOPMetaDataOptionsAcrValues"},{"default":"client_secret_post",get:b+"s/"+c+"/oidcOPMetaDataOptionsTokenEndpointAuthMethod",id:b+"s/"+c+"/oidcOPMetaDataOptionsTokenEndpointAuthMethod",select:[{k:"client_secret_post",v:"client_secret_post"},{k:"client_secret_basic",v:"client_secret_basic"}],title:"oidcOPMetaDataOptionsTokenEndpointAuthMethod",type:"select"},{"default":1,get:b+"s/"+c+"/oidcOPMetaDataOptionsCheckJWTSignature",id:b+"s/"+c+"/oidcOPMetaDataOptionsCheckJWTSignature",title:"oidcOPMetaDataOptionsCheckJWTSignature",type:"bool"},{"default":30,get:b+"s/"+c+"/oidcOPMetaDataOptionsIDTokenMaxAge",id:b+"s/"+c+"/oidcOPMetaDataOptionsIDTokenMaxAge",title:"oidcOPMetaDataOptionsIDTokenMaxAge",type:"int"},{"default":1,get:b+"s/"+c+"/oidcOPMetaDataOptionsUseNonce",id:b+"s/"+c+"/oidcOPMetaDataOptionsUseNonce",title:"oidcOPMetaDataOptionsUseNonce",type:"bool"}],id:"oidcOPMetaDataOptionsProtocol",title:"oidcOPMetaDataOptionsProtocol",type:"simpleInputContainer"},{_nodes:[{get:b+"s/"+c+"/oidcOPMetaDataOptionsDisplayName",id:b+"s/"+c+"/oidcOPMetaDataOptionsDisplayName",title:"oidcOPMetaDataOptionsDisplayName"},{get:b+"s/"+c+"/oidcOPMetaDataOptionsIcon",id:b+"s/"+c+"/oidcOPMetaDataOptionsIcon",title:"oidcOPMetaDataOptionsIcon"}],id:"oidcOPMetaDataOptionsDisplayParams",title:"oidcOPMetaDataOptionsDisplayParams",type:"simpleInputContainer"}],id:"oidcOPMetaDataOptions",title:"oidcOPMetaDataOptions"}];case"oidcRPMetaDataNode":return[{cnodes:b+"s/"+c+"/oidcRPMetaDataExportedVars","default":[{data:"mail",id:b+"s/"+c+"/oidcRPMetaDataExportedVars/email",title:"email",type:"keyText"},{data:"sn",id:b+"s/"+c+"/oidcRPMetaDataExportedVars/family_name",title:"family_name",type:"keyText"},{data:"cn",id:b+"s/"+c+"/oidcRPMetaDataExportedVars/name",title:"name",type:"keyText"}],id:b+"s/"+c+"/oidcRPMetaDataExportedVars",title:"oidcRPMetaDataExportedVars",type:"keyTextContainer"},{_nodes:[{_nodes:[{get:b+"s/"+c+"/oidcRPMetaDataOptionsClientID",id:b+"s/"+c+"/oidcRPMetaDataOptionsClientID",title:"oidcRPMetaDataOptionsClientID"},{get:b+"s/"+c+"/oidcRPMetaDataOptionsClientSecret",id:b+"s/"+c+"/oidcRPMetaDataOptionsClientSecret",title:"oidcRPMetaDataOptionsClientSecret",type:"password"}],id:"oidcRPMetaDataOptionsAuthentication",title:"oidcRPMetaDataOptionsAuthentication",type:"simpleInputContainer"},{_nodes:[{get:b+"s/"+c+"/oidcRPMetaDataOptionsDisplayName",id:b+"s/"+c+"/oidcRPMetaDataOptionsDisplayName",title:"oidcRPMetaDataOptionsDisplayName"},{get:b+"s/"+c+"/oidcRPMetaDataOptionsIcon",id:b+"s/"+c+"/oidcRPMetaDataOptionsIcon",title:"oidcRPMetaDataOptionsIcon"}],id:"oidcRPMetaDataOptionsDisplay",title:"oidcRPMetaDataOptionsDisplay",type:"simpleInputContainer"},{get:b+"s/"+c+"/oidcRPMetaDataOptionsUserIDAttr",id:b+"s/"+c+"/oidcRPMetaDataOptionsUserIDAttr",title:"oidcRPMetaDataOptionsUserIDAttr"},{"default":"HS512",get:b+"s/"+c+"/oidcRPMetaDataOptionsIDTokenSignAlg",id:b+"s/"+c+"/oidcRPMetaDataOptionsIDTokenSignAlg",select:[{k:"none",v:"None"},{k:"HS256",v:"HS256"},{k:"HS384",v:"HS384"},{k:"HS512",v:"HS512"},{k:"RS256",v:"RS256"},{k:"RS384",v:"RS384"},{k:"RS512",v:"RS512"}],title:"oidcRPMetaDataOptionsIDTokenSignAlg",type:"select"},{"default":3600,get:b+"s/"+c+"/oidcRPMetaDataOptionsIDTokenExpiration",id:b+"s/"+c+"/oidcRPMetaDataOptionsIDTokenExpiration",title:"oidcRPMetaDataOptionsIDTokenExpiration",type:"int"},{"default":3600,get:b+"s/"+c+"/oidcRPMetaDataOptionsAccessTokenExpiration",id:b+"s/"+c+"/oidcRPMetaDataOptionsAccessTokenExpiration",title:"oidcRPMetaDataOptionsAccessTokenExpiration",type:"int"},{get:b+"s/"+c+"/oidcRPMetaDataOptionsRedirectUris",id:b+"s/"+c+"/oidcRPMetaDataOptionsRedirectUris",title:"oidcRPMetaDataOptionsRedirectUris"},{"default":0,get:b+"s/"+c+"/oidcRPMetaDataOptionsBypassConsent",help:"openidconnectclaims.html",id:b+"s/"+c+"/oidcRPMetaDataOptionsBypassConsent",title:"oidcRPMetaDataOptionsBypassConsent",type:"bool"},{_nodes:[{get:b+"s/"+c+"/oidcRPMetaDataOptionsLogoutUrl",id:b+"s/"+c+"/oidcRPMetaDataOptionsLogoutUrl",title:"oidcRPMetaDataOptionsLogoutUrl"},{"default":"front",get:b+"s/"+c+"/oidcRPMetaDataOptionsLogoutType",id:b+"s/"+c+"/oidcRPMetaDataOptionsLogoutType",select:[{k:"front",v:"Front Channel"},{k:"back",v:"Back Channel"}],title:"oidcRPMetaDataOptionsLogoutType",type:"select"},{get:b+"s/"+c+"/oidcRPMetaDataOptionsLogoutSessionRequired",id:b+"s/"+c+"/oidcRPMetaDataOptionsLogoutSessionRequired",title:"oidcRPMetaDataOptionsLogoutSessionRequired",type:"bool"}],id:"logout",title:"logout",type:"simpleInputContainer"},{get:b+"s/"+c+"/oidcRPMetaDataOptionsRule",id:b+"s/"+c+"/oidcRPMetaDataOptionsRule",title:"oidcRPMetaDataOptionsRule"}],id:"oidcRPMetaDataOptions",title:"oidcRPMetaDataOptions"},{cnodes:b+"s/"+c+"/oidcRPMetaDataOptionsExtraClaims","default":[],id:b+"s/"+c+"/oidcRPMetaDataOptionsExtraClaims",title:"oidcRPMetaDataOptionsExtraClaims",type:"keyTextContainer"}];case"samlIDPMetaDataNode":return[{get:b+"s/"+c+"/samlIDPMetaDataXML",id:b+"s/"+c+"/samlIDPMetaDataXML",title:"samlIDPMetaDataXML",type:"file"},{cnodes:b+"s/"+c+"/samlIDPMetaDataExportedAttributes","default":[],help:"authsaml.html#exported_attributes",id:b+"s/"+c+"/samlIDPMetaDataExportedAttributes",title:"samlIDPMetaDataExportedAttributes",type:"samlAttributeContainer"},{_nodes:[{"default":"",get:b+"s/"+c+"/samlIDPMetaDataOptionsResolutionRule",id:b+"s/"+c+"/samlIDPMetaDataOptionsResolutionRule",title:"samlIDPMetaDataOptionsResolutionRule",type:"longtext"},{"default":"",get:b+"s/"+c+"/samlIDPMetaDataOptionsNameIDFormat",id:b+"s/"+c+"/samlIDPMetaDataOptionsNameIDFormat",select:[{k:"",v:""},{k:"unspecified",v:"Unspecified"},{k:"email",v:"Email"},{k:"x509",v:"X509 certificate"},{k:"windows",v:"Windows"},{k:"kerberos",v:"Kerberos"},{k:"entity",v:"Entity"},{k:"persistent",v:"Persistent"},{k:"transient",v:"Transient"},{k:"encrypted",v:"Encrypted"}],title:"samlIDPMetaDataOptionsNameIDFormat",type:"select"},{"default":0,get:b+"s/"+c+"/samlIDPMetaDataOptionsForceAuthn",id:b+"s/"+c+"/samlIDPMetaDataOptionsForceAuthn",title:"samlIDPMetaDataOptionsForceAuthn",type:"bool"},{"default":0,get:b+"s/"+c+"/samlIDPMetaDataOptionsIsPassive",id:b+"s/"+c+"/samlIDPMetaDataOptionsIsPassive",title:"samlIDPMetaDataOptionsIsPassive",type:"bool"},{"default":0,get:b+"s/"+c+"/samlIDPMetaDataOptionsAllowProxiedAuthn",id:b+"s/"+c+"/samlIDPMetaDataOptionsAllowProxiedAuthn",title:"samlIDPMetaDataOptionsAllowProxiedAuthn",type:"bool"},{"default":0,get:b+"s/"+c+"/samlIDPMetaDataOptionsAllowLoginFromIDP",id:b+"s/"+c+"/samlIDPMetaDataOptionsAllowLoginFromIDP",title:"samlIDPMetaDataOptionsAllowLoginFromIDP",type:"bool"},{"default":"",get:b+"s/"+c+"/samlIDPMetaDataOptionsRequestedAuthnContext",id:b+"s/"+c+"/samlIDPMetaDataOptionsRequestedAuthnContext",select:[{k:"",v:""},{k:"kerberos",v:"Kerberos"},{k:"password-protected-transport",v:"Password protected transport"},{k:"password",v:"Password"},{k:"tls-client",v:"TLS client certificate"}],title:"samlIDPMetaDataOptionsRequestedAuthnContext",type:"select"},{"default":0,get:b+"s/"+c+"/samlIDPMetaDataOptionsRelayStateURL",id:b+"s/"+c+"/samlIDPMetaDataOptionsRelayStateURL",title:"samlIDPMetaDataOptionsRelayStateURL",type:"bool"}],help:"authsaml.html#options",id:"samlIDPMetaDataOptions",title:"samlIDPMetaDataOptions",type:"simpleInputContainer"},{_nodes:[{"default":0,get:b+"s/"+c+"/samlIDPMetaDataOptionsAdaptSessionUtime",id:b+"s/"+c+"/samlIDPMetaDataOptionsAdaptSessionUtime",title:"samlIDPMetaDataOptionsAdaptSessionUtime",type:"bool"},{"default":0,get:b+"s/"+c+"/samlIDPMetaDataOptionsForceUTF8",id:b+"s/"+c+"/samlIDPMetaDataOptionsForceUTF8",title:"samlIDPMetaDataOptionsForceUTF8",type:"bool"},{"default":0,get:b+"s/"+c+"/samlIDPMetaDataOptionsStoreSAMLToken",id:b+"s/"+c+"/samlIDPMetaDataOptionsStoreSAMLToken",title:"samlIDPMetaDataOptionsStoreSAMLToken",type:"bool"}],id:"samlIDPMetaDataOptionsSession",title:"samlIDPMetaDataOptionsSession",type:"simpleInputContainer"},{_nodes:[{"default":-1,get:b+"s/"+c+"/samlIDPMetaDataOptionsSignSSOMessage",id:b+"s/"+c+"/samlIDPMetaDataOptionsSignSSOMessage",title:"samlIDPMetaDataOptionsSignSSOMessage",type:"trool"},{"default":1,get:b+"s/"+c+"/samlIDPMetaDataOptionsCheckSSOMessageSignature",id:b+"s/"+c+"/samlIDPMetaDataOptionsCheckSSOMessageSignature",title:"samlIDPMetaDataOptionsCheckSSOMessageSignature",type:"bool"},{"default":-1,get:b+"s/"+c+"/samlIDPMetaDataOptionsSignSLOMessage",id:b+"s/"+c+"/samlIDPMetaDataOptionsSignSLOMessage",title:"samlIDPMetaDataOptionsSignSLOMessage",type:"trool"},{"default":1,get:b+"s/"+c+"/samlIDPMetaDataOptionsCheckSLOMessageSignature",id:b+"s/"+c+"/samlIDPMetaDataOptionsCheckSLOMessageSignature",title:"samlIDPMetaDataOptionsCheckSLOMessageSignature",type:"bool"}],id:"samlIDPMetaDataOptionsSignature",title:"samlIDPMetaDataOptionsSignature",type:"simpleInputContainer"},{_nodes:[{"default":"",get:b+"s/"+c+"/samlIDPMetaDataOptionsSSOBinding",id:b+"s/"+c+"/samlIDPMetaDataOptionsSSOBinding",select:[{k:"",v:""},{k:"http-post",v:"POST"},{k:"http-redirect",v:"Redirect"},{k:"artifact-get",v:"Artifact GET"}],title:"samlIDPMetaDataOptionsSSOBinding",type:"select"},{"default":"",get:b+"s/"+c+"/samlIDPMetaDataOptionsSLOBinding",id:b+"s/"+c+"/samlIDPMetaDataOptionsSLOBinding",select:[{k:"",v:""},{k:"http-post",v:"POST"},{k:"http-redirect",v:"Redirect"},{k:"http-soap",v:"SOAP"}],title:"samlIDPMetaDataOptionsSLOBinding",type:"select"}],id:"samlIDPMetaDataOptionsBinding",title:"samlIDPMetaDataOptionsBinding",type:"simpleInputContainer"},{_nodes:[{"default":"none",get:b+"s/"+c+"/samlIDPMetaDataOptionsEncryptionMode",id:b+"s/"+c+"/samlIDPMetaDataOptionsEncryptionMode",select:[{k:"none",v:"None"},{k:"nameid",v:"Name ID"},{k:"assertion",v:"Assertion"}],title:"samlIDPMetaDataOptionsEncryptionMode",type:"select"},{"default":1,get:b+"s/"+c+"/samlIDPMetaDataOptionsCheckTime",id:b+"s/"+c+"/samlIDPMetaDataOptionsCheckTime",title:"samlIDPMetaDataOptionsCheckTime",type:"bool"},{"default":1,get:b+"s/"+c+"/samlIDPMetaDataOptionsCheckAudience",id:b+"s/"+c+"/samlIDPMetaDataOptionsCheckAudience",title:"samlIDPMetaDataOptionsCheckAudience",type:"bool"}],id:"samlIDPMetaDataOptionsSecurity",title:"samlIDPMetaDataOptionsSecurity",type:"simpleInputContainer"}];case"samlSPMetaDataNode":return[{get:b+"s/"+c+"/samlSPMetaDataXML",id:b+"s/"+c+"/samlSPMetaDataXML",title:"samlSPMetaDataXML",type:"file"},{cnodes:b+"s/"+c+"/samlSPMetaDataExportedAttributes","default":[],help:"idpsaml.html#exported_attributes",id:b+"s/"+c+"/samlSPMetaDataExportedAttributes",title:"samlSPMetaDataExportedAttributes",type:"samlAttributeContainer"},{_nodes:[{_nodes:[{"default":"",get:b+"s/"+c+"/samlSPMetaDataOptionsNameIDFormat",id:b+"s/"+c+"/samlSPMetaDataOptionsNameIDFormat",select:[{k:"",v:""},{k:"unspecified",v:"Unspecified"},{k:"email",v:"Email"},{k:"x509",v:"X509 certificate"},{k:"windows",v:"Windows"},{k:"kerberos",v:"Kerberos"},{k:"entity",v:"Entity"},{k:"persistent",v:"Persistent"},{k:"transient",v:"Transient"},{k:"encrypted",v:"Encrypted"}],title:"samlSPMetaDataOptionsNameIDFormat",type:"select"},{get:b+"s/"+c+"/samlSPMetaDataOptionsNameIDSessionKey",id:b+"s/"+c+"/samlSPMetaDataOptionsNameIDSessionKey",title:"samlSPMetaDataOptionsNameIDSessionKey"},{"default":0,get:b+"s/"+c+"/samlSPMetaDataOptionsOneTimeUse",id:b+"s/"+c+"/samlSPMetaDataOptionsOneTimeUse",title:"samlSPMetaDataOptionsOneTimeUse",type:"bool"},{"default":72000,get:b+"s/"+c+"/samlSPMetaDataOptionsSessionNotOnOrAfterTimeout",id:b+"s/"+c+"/samlSPMetaDataOptionsSessionNotOnOrAfterTimeout",title:"samlSPMetaDataOptionsSessionNotOnOrAfterTimeout",type:"int"},{"default":72000,get:b+"s/"+c+"/samlSPMetaDataOptionsNotOnOrAfterTimeout",id:b+"s/"+c+"/samlSPMetaDataOptionsNotOnOrAfterTimeout",title:"samlSPMetaDataOptionsNotOnOrAfterTimeout",type:"int"},{"default":1,get:b+"s/"+c+"/samlSPMetaDataOptionsForceUTF8",id:b+"s/"+c+"/samlSPMetaDataOptionsForceUTF8",title:"samlSPMetaDataOptionsForceUTF8",type:"bool"}],id:"samlSPMetaDataOptionsAuthnResponse",title:"samlSPMetaDataOptionsAuthnResponse",type:"simpleInputContainer"},{_nodes:[{"default":-1,get:b+"s/"+c+"/samlSPMetaDataOptionsSignSSOMessage",id:b+"s/"+c+"/samlSPMetaDataOptionsSignSSOMessage",title:"samlSPMetaDataOptionsSignSSOMessage",type:"trool"},{"default":1,get:b+"s/"+c+"/samlSPMetaDataOptionsCheckSSOMessageSignature",id:b+"s/"+c+"/samlSPMetaDataOptionsCheckSSOMessageSignature",title:"samlSPMetaDataOptionsCheckSSOMessageSignature",type:"bool"},{"default":-1,get:b+"s/"+c+"/samlSPMetaDataOptionsSignSLOMessage",id:b+"s/"+c+"/samlSPMetaDataOptionsSignSLOMessage",title:"samlSPMetaDataOptionsSignSLOMessage",type:"trool"},{"default":1,get:b+"s/"+c+"/samlSPMetaDataOptionsCheckSLOMessageSignature",id:b+"s/"+c+"/samlSPMetaDataOptionsCheckSLOMessageSignature",title:"samlSPMetaDataOptionsCheckSLOMessageSignature",type:"bool"}],id:"samlSPMetaDataOptionsSignature",title:"samlSPMetaDataOptionsSignature",type:"simpleInputContainer"},{_nodes:[{"default":"none",get:b+"s/"+c+"/samlSPMetaDataOptionsEncryptionMode",id:b+"s/"+c+"/samlSPMetaDataOptionsEncryptionMode",select:[{k:"none",v:"None"},{k:"nameid",v:"Name ID"},{k:"assertion",v:"Assertion"}],title:"samlSPMetaDataOptionsEncryptionMode",type:"select"},{"default":0,get:b+"s/"+c+"/samlSPMetaDataOptionsEnableIDPInitiatedURL",id:b+"s/"+c+"/samlSPMetaDataOptionsEnableIDPInitiatedURL",title:"samlSPMetaDataOptionsEnableIDPInitiatedURL",type:"bool"},{get:b+"s/"+c+"/samlSPMetaDataOptionsRule",id:b+"s/"+c+"/samlSPMetaDataOptionsRule",title:"samlSPMetaDataOptionsRule"}],id:"samlSPMetaDataOptionsSecurity",title:"samlSPMetaDataOptionsSecurity",type:"simpleInputContainer"}],help:"idpsaml.html#options",id:"samlSPMetaDataOptions",title:"samlSPMetaDataOptions"}];case"virtualHost":return[{cnodes:b+"s/"+c+"/locationRules","default":[{data:"deny",id:b+"s/"+c+"/locationRules/default",re:"default",title:"default",type:"rule"}],help:"writingrulesand_headers.html#rules",id:b+"s/"+c+"/locationRules",title:"locationRules",type:"ruleContainer"},{cnodes:b+"s/"+c+"/exportedHeaders",help:"writingrulesand_headers.html#headers",id:b+"s/"+c+"/exportedHeaders",title:"exportedHeaders",type:"keyTextContainer"},{cnodes:b+"s/"+c+"/post",help:"formreplay.html",id:b+"s/"+c+"/post",title:"post",type:"postContainer"},{_nodes:[{"default":-1,get:b+"s/"+c+"/vhostPort",id:b+"s/"+c+"/vhostPort",title:"vhostPort",type:"int"},{"default":-1,get:b+"s/"+c+"/vhostHttps",id:b+"s/"+c+"/vhostHttps",title:"vhostHttps",type:"trool"},{"default":0,get:b+"s/"+c+"/vhostMaintenance",id:b+"s/"+c+"/vhostMaintenance",title:"vhostMaintenance",type:"bool"},{get:b+"s/"+c+"/vhostAliases",id:b+"s/"+c+"/vhostAliases",title:"vhostAliases"},{"default":"Main",get:b+"s/"+c+"/vhostType",id:b+"s/"+c+"/vhostType",select:[{k:"Main",v:"Main"},{k:"Zimbra",v:"ZimbraPreAuth"},{k:"AuthBasic",v:"AuthBasic"},{k:"SecureToken",v:"SecureToken"},{k:"CDA",v:"CDA"},{k:"DevOps",v:"DevOps"},{k:"ServiceToken",v:"ServiceToken"}],title:"vhostType",type:"select"},{get:b+"s/"+c+"/vhostAuthnLevel",id:b+"s/"+c+"/vhostAuthnLevel",title:"vhostAuthnLevel",type:"int"}],help:"configvhost.html#options",id:"vhostOptions",title:"vhostOptions"}];default:return[]}}function setScopeVars(a){a.portal=a.data[0]._nodes[0]._nodes[0];a.getKey(a.portal);a.domain=a.data[0]._nodes[4]._nodes[1];a.getKey(a.domain)}; \ No newline at end of file diff --git a/lemonldap-ng-manager/site/htdocs/static/js/manager.js b/lemonldap-ng-manager/site/htdocs/static/js/manager.js index 172185da6..5691abec1 100644 --- a/lemonldap-ng-manager/site/htdocs/static/js/manager.js +++ b/lemonldap-ng-manager/site/htdocs/static/js/manager.js @@ -446,6 +446,12 @@ This file contains: $scope.addOidcRp = function() { return $scope.newTemplateNode('oidcRPMetaDataNode', 'oidcRPName', 'rp-example'); }; + $scope.addCasSrv = function() { + return $scope.newTemplateNode('casSrvMetaDataNode', 'casPartnerName', 'srv-example'); + }; + $scope.addCasApp = function() { + return $scope.newTemplateNode('casAppMetaDataNode', 'casPartnerName', 'app-example'); + }; $scope.newTemplateNode = function(type, title, init) { $scope.message = { title: title, diff --git a/lemonldap-ng-manager/site/htdocs/static/js/manager.min.js b/lemonldap-ng-manager/site/htdocs/static/js/manager.min.js index 028ff6219..364e41b02 100644 --- a/lemonldap-ng-manager/site/htdocs/static/js/manager.min.js +++ b/lemonldap-ng-manager/site/htdocs/static/js/manager.min.js @@ -1 +1 @@ -(function(){var a;a=angular.module("llngManager",["ui.tree","ui.bootstrap","llApp","ngCookies"]);a.controller("TreeCtrl",["$scope","$http","$location","$q","$uibModal","$translator","$cookies","$htmlParams",function(q,m,i,j,f,e,g,r){var h,d,p,o,l,b,k,s,n;q.links=window.links;q.menu=r.menu;q.menulinks=window.menulinks;q.staticPrefix=window.staticPrefix;q.formPrefix=window.formPrefix;q.availableLanguages=window.availableLanguages;q.waiting=true;q.showM=false;q.showT=false;q.form="home";q.currentCfg={};q.confPrefix=window.confPrefix;q.message={};q.result="";q.translateTitle=function(c){return e.translateField(c,"title")};q.translateP=e.translateP;q.translate=e.translate;q.helpUrl="start.html#configuration";q.setShowHelp=function(t){var c;if(t==null){t=!q.showH}q.showH=t;c=new Date(Date.now());c.setFullYear(c.getFullYear()+1);return g.put("showhelp",(t?"true":"false"),{expires:c})};q.showH=g.get("showhelp")==="false"?false:true;if(q.showH==null){q.setShowHelp(true)}s=function(c){var u,t;u=c.status;t=c.statusLine;q.waiting=false;if(u===403){q.message={title:"forbidden",message:"",items:[]}}else{if(u===401){console.log("Authentication needed");q.message={title:"authenticationNeeded",message:"__waitOrF5__",items:[]}}else{if(u===400){q.message={title:"badRequest",message:t,items:[]}}else{if(u>0){q.message={title:"badRequest",message:t,items:[]}}else{q.message={title:"networkProblem",message:"",items:[]}}}}}return q.showModal("message.html")};q.showModal=function(t,v){var u,c;c=f.open({templateUrl:t,controller:"ModalInstanceCtrl",size:"lg",resolve:{elem:function(){return function(w){return q[w]}},set:function(){return function(x,w){return q[x]=w}},init:function(){return v}}});u=j.defer();c.result.then(function(w){q.message={title:"",message:"",items:[]};return u.resolve(w)},function(w){q.message={title:"",message:"",items:[]};return u.reject(w)});return u.promise};q.menuClick=function(c){if(c.popup){window.open(c.popup)}else{if(!c.action){c.action=c.title}switch(typeof c.action){case"function":c.action(q.currentNode,q);break;case"string":q[c.action]();break;default:console.log(typeof c.action)}}return q.showM=false};q.home=function(){q.form="home";return q.showM=false};h=function(t){var c;q.message={title:"",message:"",items:[]};if(t.message==="__needConfirmation__"){q.confirmNeeded=true}if(t.message){q.message.message=t.message}if(t.details){for(c in t.details){if(c!=="__changes__"){q.message.items.push({message:c,items:t.details[c]})}}}q.waiting=false;if(t.result===1){i.path("/confs/");q.message.title="successfullySaved"}else{q.message.title="saveReport"}return q.showModal("message.html")};q.downloadConf=function(){return window.open(q.confPrefix+q.currentCfg.cfgNum+"?full=1")};q.save=function(){q.showModal("save.html").then(function(){q.waiting=true;q.data.push({id:"cfgLog",title:"cfgLog",data:q.result?q.result:""});return m.post(window.confPrefix+"?cfgNum="+q.currentCfg.cfgNum+(q.forceSave?"&force=1":""),q.data).then(function(c){q.data.pop();return h(c.data)},function(c){s(c);return q.data.pop()})},function(){return console.log("Saving canceled")});return q.showM=false};q.saveRawConf=function(c){q.waiting=true;return m.post(window.confPrefix+"/raw",c).then(function(t){return h(t.data)},s)};q.restore=function(){q.currentNode=null;return q.form="restore"};q.cancel=function(){q.currentNode.data=null;return q.getKey(q.currentNode)};b=1;q._findContainer=function(){return q._findScopeContainer().$modelValue};q._findScopeContainer=function(){var c;c=q.currentScope;while(!c.$modelValue.type.match(/Container$/)){c=c.$parentNodeScope}return c};q._findScopeByKey=function(c){var t;t=q.currentScope;while(!(t.$modelValue.title===c)){t=t.$parentNodeScope}return t};q.newGrantRule=function(){var c,u,t;t=q._findContainer();c=t.nodes.length;u=c>0?c-1:0;return t.nodes.splice(u,0,{id:t.id+"/n"+(b++),title:"New rule",re:"1",comment:"New rule",data:"Message",type:"grant"})};q.newRule=function(){var c,u,t;t=q._findContainer();c=t.nodes.length;u=c>0?c-1:0;return t.nodes.splice(u,0,{id:t.id+"/n"+(b++),title:"New rule",re:"^/new",comment:"New rule",data:"accept",type:"rule"})};q.newPost=function(){var c;c=q._findContainer();return c.nodes.push({id:c.id+"/n"+(b++),title:"/absolute/path/to/form",data:{},type:"post"})};q.newPostVar=function(){if(q.currentNode.data.vars==null){q.currentNode.data.vars=[]}return q.currentNode.data.vars.push(["var1","$uid"])};q.newAuthChoice=function(){var c;c=q._findContainer();c.nodes.push({id:c.id+"/n"+(b++),title:"1_Key",data:["Null","Null","Null"],type:"authChoice"});return q.execFilters(q._findScopeByKey("authParams"))};q.newHashEntry=function(){var c;c=q._findContainer();return c.nodes.push({id:c.id+"/n"+(b++),title:"new",data:"",type:"keyText"})};q.newCat=function(){var c;c=q.currentScope;if(c.$modelValue.type==="menuApp"){c=c.$parentNodeScope}return c.$modelValue.nodes.push({id:c.$modelValue.id+"/n"+(b++),title:"New category",type:"menuCat",nodes:[]})};q.newApp=function(){var c;c=q.currentScope;if(c.$modelValue.type==="menuApp"){c=c.$parentNodeScope}return c.$modelValue.nodes.push({id:c.$modelValue.id+"/n"+(b++),title:"New application",type:"menuApp",data:{description:"New app description",uri:"https://test.example.com/",logo:"network.png",display:"auto"}})};q.newCmbMod=function(){var c;c=q._findContainer();c.nodes.push({id:c.id+"/n"+(b++),title:"new",type:"cmbModule",data:{type:"LDAP","for":0,over:[]}});return q.execFilters(q._findScopeByKey("authParams"))};q.newCmbOver=function(){var c;c=q.currentNode.data;if(!c.over){c.over=[]}return c.over.push(["new"+(b++),""])};q.addHost=function(t,c){if(!t.data){t.data=[]}return t.data.push({k:"newHost",h:[{k:"key",v:"uid"}]})};q.addSamlAttribute=function(){var c;c=q._findContainer();return c.nodes.push({id:c.id+"/n"+(b++),title:"new",type:"samlAttribute",data:[0,"New","",""]})};q.addVhost=function(){var c;c=q.domain?"."+q.domain.data:".example.com";q.message={title:"virtualHostName",field:"hostname"};return q.showModal("prompt.html",c).then(function(){var u,t;u=q.result;if(u){t=q.addTemplateNode(u,"virtualHost");delete t.nodes[0].cnodes;return t.nodes[0].nodes=[{id:"virtualHosts/new__"+u+"/locationRules/default",type:"rule",title:"default",comment:"",re:"default",data:"deny"}]}})};q.duplicateVhost=function(){var c;c=q.domain?"."+q.domain.data:".example.com";q.message={title:"virtualHostName",field:"hostname"};return q.showModal("prompt.html",c).then(function(){var t;t=q.result;return q.duplicateNode(t,"virtualHost",q.currentNode.title)})};q.addSamlIDP=function(){return q.newTemplateNode("samlIDPMetaDataNode","samlPartnerName","idp-example")};q.addSamlSP=function(){return q.newTemplateNode("samlSPMetaDataNode","samlPartnerName","sp-example")};q.addOidcOp=function(){return q.newTemplateNode("oidcOPMetaDataNode","oidcOPName","op-example")};q.addOidcRp=function(){return q.newTemplateNode("oidcRPMetaDataNode","oidcRPName","rp-example")};q.newTemplateNode=function(c,u,t){q.message={title:u,field:"name"};return q.showModal("prompt.html",t).then(function(){var v;v=q.result;if(v){return q.addTemplateNode(v,c)}})};q.addTemplateNode=function(c,w){var v,u;v=q.currentScope;while(v.$modelValue.title!==(w+"s")){v=v.$parentNodeScope}u={id:w+"s/new__"+c,title:c,type:w,nodes:templates(w,"new__"+c)};v.$modelValue.nodes.push(u);v.expand();return u};p=function(t){var u,c;u=j.defer();c=j.defer();if(t._nodes){o(t);u.resolve()}else{if(t.cnodes){d(t).then(function(){return u.resolve()})}else{if(t.nodes||t.data){u.resolve()}else{q.getKey(t).then(function(){return u.resolve()})}}}u.promise.then(function(){var v,z,y,x,w;w=[];if(t.nodes){x=t.nodes;for(y=0,v=x.length;y0){t=x.nodes[w];x.nodes[w]=x.nodes[w-1];x.nodes[w-1]=t}return w};q.inSelect=function(u){var c,w,v,t;t=q.currentNode.select;for(v=0,c=t.length;v0?c.comment:c.re};q.filters={};q.execFilters=function(t){var c,v,u;t=t?t:q;u=q.filters;for(c in u){v=u[c];if(q.filters.hasOwnProperty(c)){return filterFunctions[c](t,j,v)}}return false};q.stoggle=function(c){var t;t=c.$modelValue;o(t);return c.toggle()};o=function(x){var D,B,z,y,w,u,t,c,v,C,A;v=["nodes","nodes_cond"];for(u=0,B=v.length;u0){q.message={title:"badRequest",message:t,items:[]}}else{q.message={title:"networkProblem",message:"",items:[]}}}}}return q.showModal("message.html")};q.showModal=function(t,v){var u,c;c=f.open({templateUrl:t,controller:"ModalInstanceCtrl",size:"lg",resolve:{elem:function(){return function(w){return q[w]}},set:function(){return function(x,w){return q[x]=w}},init:function(){return v}}});u=j.defer();c.result.then(function(w){q.message={title:"",message:"",items:[]};return u.resolve(w)},function(w){q.message={title:"",message:"",items:[]};return u.reject(w)});return u.promise};q.menuClick=function(c){if(c.popup){window.open(c.popup)}else{if(!c.action){c.action=c.title}switch(typeof c.action){case"function":c.action(q.currentNode,q);break;case"string":q[c.action]();break;default:console.log(typeof c.action)}}return q.showM=false};q.home=function(){q.form="home";return q.showM=false};h=function(t){var c;q.message={title:"",message:"",items:[]};if(t.message==="__needConfirmation__"){q.confirmNeeded=true}if(t.message){q.message.message=t.message}if(t.details){for(c in t.details){if(c!=="__changes__"){q.message.items.push({message:c,items:t.details[c]})}}}q.waiting=false;if(t.result===1){i.path("/confs/");q.message.title="successfullySaved"}else{q.message.title="saveReport"}return q.showModal("message.html")};q.downloadConf=function(){return window.open(q.confPrefix+q.currentCfg.cfgNum+"?full=1")};q.save=function(){q.showModal("save.html").then(function(){q.waiting=true;q.data.push({id:"cfgLog",title:"cfgLog",data:q.result?q.result:""});return m.post(window.confPrefix+"?cfgNum="+q.currentCfg.cfgNum+(q.forceSave?"&force=1":""),q.data).then(function(c){q.data.pop();return h(c.data)},function(c){s(c);return q.data.pop()})},function(){return console.log("Saving canceled")});return q.showM=false};q.saveRawConf=function(c){q.waiting=true;return m.post(window.confPrefix+"/raw",c).then(function(t){return h(t.data)},s)};q.restore=function(){q.currentNode=null;return q.form="restore"};q.cancel=function(){q.currentNode.data=null;return q.getKey(q.currentNode)};b=1;q._findContainer=function(){return q._findScopeContainer().$modelValue};q._findScopeContainer=function(){var c;c=q.currentScope;while(!c.$modelValue.type.match(/Container$/)){c=c.$parentNodeScope}return c};q._findScopeByKey=function(c){var t;t=q.currentScope;while(!(t.$modelValue.title===c)){t=t.$parentNodeScope}return t};q.newGrantRule=function(){var c,u,t;t=q._findContainer();c=t.nodes.length;u=c>0?c-1:0;return t.nodes.splice(u,0,{id:t.id+"/n"+(b++),title:"New rule",re:"1",comment:"New rule",data:"Message",type:"grant"})};q.newRule=function(){var c,u,t;t=q._findContainer();c=t.nodes.length;u=c>0?c-1:0;return t.nodes.splice(u,0,{id:t.id+"/n"+(b++),title:"New rule",re:"^/new",comment:"New rule",data:"accept",type:"rule"})};q.newPost=function(){var c;c=q._findContainer();return c.nodes.push({id:c.id+"/n"+(b++),title:"/absolute/path/to/form",data:{},type:"post"})};q.newPostVar=function(){if(q.currentNode.data.vars==null){q.currentNode.data.vars=[]}return q.currentNode.data.vars.push(["var1","$uid"])};q.newAuthChoice=function(){var c;c=q._findContainer();c.nodes.push({id:c.id+"/n"+(b++),title:"1_Key",data:["Null","Null","Null"],type:"authChoice"});return q.execFilters(q._findScopeByKey("authParams"))};q.newHashEntry=function(){var c;c=q._findContainer();return c.nodes.push({id:c.id+"/n"+(b++),title:"new",data:"",type:"keyText"})};q.newCat=function(){var c;c=q.currentScope;if(c.$modelValue.type==="menuApp"){c=c.$parentNodeScope}return c.$modelValue.nodes.push({id:c.$modelValue.id+"/n"+(b++),title:"New category",type:"menuCat",nodes:[]})};q.newApp=function(){var c;c=q.currentScope;if(c.$modelValue.type==="menuApp"){c=c.$parentNodeScope}return c.$modelValue.nodes.push({id:c.$modelValue.id+"/n"+(b++),title:"New application",type:"menuApp",data:{description:"New app description",uri:"https://test.example.com/",logo:"network.png",display:"auto"}})};q.newCmbMod=function(){var c;c=q._findContainer();c.nodes.push({id:c.id+"/n"+(b++),title:"new",type:"cmbModule",data:{type:"LDAP","for":0,over:[]}});return q.execFilters(q._findScopeByKey("authParams"))};q.newCmbOver=function(){var c;c=q.currentNode.data;if(!c.over){c.over=[]}return c.over.push(["new"+(b++),""])};q.addHost=function(t,c){if(!t.data){t.data=[]}return t.data.push({k:"newHost",h:[{k:"key",v:"uid"}]})};q.addSamlAttribute=function(){var c;c=q._findContainer();return c.nodes.push({id:c.id+"/n"+(b++),title:"new",type:"samlAttribute",data:[0,"New","",""]})};q.addVhost=function(){var c;c=q.domain?"."+q.domain.data:".example.com";q.message={title:"virtualHostName",field:"hostname"};return q.showModal("prompt.html",c).then(function(){var u,t;u=q.result;if(u){t=q.addTemplateNode(u,"virtualHost");delete t.nodes[0].cnodes;return t.nodes[0].nodes=[{id:"virtualHosts/new__"+u+"/locationRules/default",type:"rule",title:"default",comment:"",re:"default",data:"deny"}]}})};q.duplicateVhost=function(){var c;c=q.domain?"."+q.domain.data:".example.com";q.message={title:"virtualHostName",field:"hostname"};return q.showModal("prompt.html",c).then(function(){var t;t=q.result;return q.duplicateNode(t,"virtualHost",q.currentNode.title)})};q.addSamlIDP=function(){return q.newTemplateNode("samlIDPMetaDataNode","samlPartnerName","idp-example")};q.addSamlSP=function(){return q.newTemplateNode("samlSPMetaDataNode","samlPartnerName","sp-example")};q.addOidcOp=function(){return q.newTemplateNode("oidcOPMetaDataNode","oidcOPName","op-example")};q.addOidcRp=function(){return q.newTemplateNode("oidcRPMetaDataNode","oidcRPName","rp-example")};q.addCasSrv=function(){return q.newTemplateNode("casSrvMetaDataNode","casPartnerName","srv-example")};q.addCasApp=function(){return q.newTemplateNode("casAppMetaDataNode","casPartnerName","app-example")};q.newTemplateNode=function(c,u,t){q.message={title:u,field:"name"};return q.showModal("prompt.html",t).then(function(){var v;v=q.result;if(v){return q.addTemplateNode(v,c)}})};q.addTemplateNode=function(c,w){var v,u;v=q.currentScope;while(v.$modelValue.title!==(w+"s")){v=v.$parentNodeScope}u={id:w+"s/new__"+c,title:c,type:w,nodes:templates(w,"new__"+c)};v.$modelValue.nodes.push(u);v.expand();return u};p=function(t){var u,c;u=j.defer();c=j.defer();if(t._nodes){o(t);u.resolve()}else{if(t.cnodes){d(t).then(function(){return u.resolve()})}else{if(t.nodes||t.data){u.resolve()}else{q.getKey(t).then(function(){return u.resolve()})}}}u.promise.then(function(){var v,z,y,x,w;w=[];if(t.nodes){x=t.nodes;for(y=0,v=x.length;y0){t=x.nodes[w];x.nodes[w]=x.nodes[w-1];x.nodes[w-1]=t}return w};q.inSelect=function(u){var c,w,v,t;t=q.currentNode.select;for(v=0,c=t.length;v0?c.comment:c.re};q.filters={};q.execFilters=function(t){var c,v,u;t=t?t:q;u=q.filters;for(c in u){v=u[c];if(q.filters.hasOwnProperty(c)){return filterFunctions[c](t,j,v)}}return false};q.stoggle=function(c){var t;t=c.$modelValue;o(t);return c.toggle()};o=function(x){var D,B,z,y,w,u,t,c,v,C,A;v=["nodes","nodes_cond"];for(u=0,B=v.length;u