lemonldap-ng/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Build/Tree.pm

1128 lines
51 KiB
Perl
Raw Normal View History

# This file describes the manager tree.
# You can only use the following keys:
# * title: the name of the node
# * nodes: the subnodes of the node
# * group: grouped subnodes (see RSAKey form for example)
# * form: only for nodes, the form to display when selected
#
# Conf parameters are just strings in the `nodes` array
#
2017-11-05 19:57:56 +01:00
# Important point: fields preceded by '*' are downloaded during manager
# initialization and available directly in $scope array. Example: '*portal'
# implies that portal value is available in $scope.portal
#
# All other ideas have to be set in Manager/Build/Attributes.pm !
2017-11-05 19:57:54 +01:00
# DON'T FORGET TO RUN "make json" AFTER EACH CHANGE
package Lemonldap::NG::Manager::Build::Tree;
2019-06-29 21:48:52 +02:00
our $VERSION = '2.0.6';
2015-12-28 23:09:22 +01:00
# TODO: Missing:
# * activeTimer
# * confirmFormMethod
# * redirectFormMethod
sub tree {
2019-02-07 09:27:56 +01:00
return [ {
2019-02-05 11:51:39 +01:00
title => 'generalParameters',
2019-02-07 09:27:56 +01:00
nodes => [ {
2019-02-05 11:51:39 +01:00
title => 'portalParams',
help => 'portal.html',
nodes => [
2016-03-03 21:59:22 +01:00
'*portal',
2019-02-05 11:51:39 +01:00
{
title => 'portalMenu',
help => 'portalmenu.html',
2019-02-07 09:27:56 +01:00
nodes => [ {
2019-02-05 11:51:39 +01:00
title => 'portalModules',
form => 'simpleInputContainer',
nodes => [
'portalDisplayLogout',
'portalDisplayChangePassword',
'portalDisplayAppslist',
2017-09-15 12:32:15 +02:00
'portalDisplayLoginHistory',
'portalDisplayOidcConsents',
]
},
'applicationList'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'portalCustomization',
help => 'portalcustom.html',
nodes => [
2018-10-11 22:06:35 +02:00
'portalMainLogo',
'showLanguages',
'portalSkin',
'portalSkinBackground',
'portalSkinRules',
2019-02-05 11:51:39 +01:00
{
title => 'portalButtons',
2018-10-12 22:31:12 +02:00
help => 'portalcustom.html#buttons',
form => 'simpleInputContainer',
nodes => [
'portalCheckLogins',
'portalDisplayResetPassword',
'passwordResetAllowedRetries',
'portalDisplayRegister'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'passwordManagement',
help =>
2019-02-05 11:51:39 +01:00
'portalcustom.html#password_management',
form => 'simpleInputContainer',
nodes => [
'portalRequireOldPassword',
'hideOldPassword',
'mailOnPasswordChange'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'portalOther',
help =>
2019-02-05 11:51:39 +01:00
'portalcustom.html#other_parameters',
form => 'simpleInputContainer',
nodes => [
'portalUserAttr',
'portalOpenLinkInNewWindow',
'portalAntiFrame',
2017-04-27 12:21:46 +02:00
'portalPingInterval',
'portalErrorOnExpiredSession',
'portalErrorOnMailNotFound'
]
}
]
},
2019-02-05 11:51:39 +01:00
{
title => 'portalCaptcha',
help => 'captcha.html',
2018-07-22 23:43:06 +02:00
form => 'simpleInputContainer',
nodes => [
'captcha_login_enabled',
'captcha_mail_enabled',
'captcha_register_enabled',
'captcha_size',
]
}
]
},
2019-02-05 11:51:39 +01:00
{
title => 'authParams',
help =>
2019-02-05 11:51:39 +01:00
'start.html#authentication_users_and_password_databases',
form => 'authParams',
nodes => [
2019-02-05 11:51:39 +01:00
'authentication', 'userDB', 'passwordDB', 'registerDB'
],
2019-02-07 09:27:56 +01:00
nodes_cond => [ {
2019-02-05 11:51:39 +01:00
title => 'adParams',
help => 'authad.html',
2019-01-22 22:35:57 +01:00
form => 'simpleInputContainer',
nodes => [ 'ADPwdMaxAge', 'ADPwdExpireWarning' ]
},
2019-02-05 11:51:39 +01:00
{
title => 'choiceParams',
help => 'authchoice.html',
2019-02-05 11:51:39 +01:00
nodes => [ 'authChoiceParam', 'authChoiceModules' ]
},
2019-02-05 11:51:39 +01:00
{
title => 'apacheParams',
help => 'authapache.html',
form => 'simpleInputContainer',
nodes => ['apacheAuthnLevel']
},
2019-02-05 11:51:39 +01:00
{
title => 'casParams',
help => 'authcas.html',
2018-11-07 21:58:21 +01:00
form => 'simpleInputContainer',
2017-04-15 15:21:33 +02:00
nodes => ['casAuthnLevel']
},
2019-02-05 11:51:39 +01:00
{
title => 'dbiParams',
help => 'authdbi.html',
nodes => [
'dbiAuthnLevel',
'dbiExportedVars',
2019-02-05 11:51:39 +01:00
{
title => 'dbiConnection',
help => 'authdbi.html#connection',
2019-02-07 09:27:56 +01:00
nodes => [ {
2019-02-05 11:51:39 +01:00
title => 'dbiConnectionAuth',
2016-12-29 07:25:07 +01:00
form => 'simpleInputContainer',
nodes => [
'dbiAuthChain',
'dbiAuthUser',
'dbiAuthPassword'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'dbiConnectionUser',
2016-12-29 07:25:07 +01:00
form => 'simpleInputContainer',
nodes => [
'dbiUserChain',
'dbiUserUser',
'dbiUserPassword'
]
}
]
},
2019-02-05 11:51:39 +01:00
{
title => 'dbiSchema',
help => 'authdbi.html#schema',
form => 'simpleInputContainer',
nodes => [
'dbiAuthTable',
'dbiUserTable',
'dbiAuthLoginCol',
'dbiAuthPasswordCol',
'dbiPasswordMailCol',
'userPivot'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'dbiPassword',
help => 'authdbi.html#password',
2017-06-23 11:57:07 +02:00
nodes => [
'dbiAuthPasswordHash',
2019-02-05 11:51:39 +01:00
{
title => 'dbiDynamicHash',
2017-06-23 11:57:07 +02:00
help => 'authdbi.html#password',
form => 'simpleInputContainer',
nodes => [
'dbiDynamicHashEnabled',
'dbiDynamicHashValidSchemes',
2019-02-05 11:51:39 +01:00
'dbiDynamicHashValidSaltedSchemes',
'dbiDynamicHashNewPasswordScheme'
2017-06-23 11:57:07 +02:00
]
}
]
}
]
},
2019-02-05 11:51:39 +01:00
{
title => 'demoParams',
help => 'authdemo.html',
nodes => ['demoExportedVars']
},
2019-02-05 11:51:39 +01:00
{
title => 'facebookParams',
help => 'authfacebook.html',
nodes => [
2019-02-05 11:51:39 +01:00
'facebookAuthnLevel', 'facebookExportedVars',
'facebookAppId', 'facebookAppSecret',
2018-06-22 18:16:24 +02:00
'facebookUserField'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'kerberosParams',
2019-01-22 22:35:57 +01:00
form => 'simpleInputContainer',
2017-04-19 12:52:18 +02:00
help => 'authkerberos.html',
2018-02-21 06:48:06 +01:00
nodes => [
2019-04-05 22:39:58 +02:00
'krbAuthnLevel', 'krbKeytab',
'krbByJs', 'krbRemoveDomain'
2018-02-21 06:48:06 +01:00
]
},
2019-02-05 11:51:39 +01:00
{
title => 'ldapParams',
help => 'authldap.html',
nodes => [
'ldapAuthnLevel',
'ldapExportedVars',
2019-02-05 11:51:39 +01:00
{
title => 'ldapConnection',
help => 'authldap.html#connection',
form => 'simpleInputContainer',
nodes => [
'ldapServer', 'ldapPort',
'ldapBase', 'managerDn',
'managerPassword', 'ldapTimeout',
'ldapVersion', 'ldapRaw'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'ldapFilters',
help => 'authldap.html#filters',
form => 'simpleInputContainer',
nodes => [
'LDAPFilter', 'AuthLDAPFilter',
'mailLDAPFilter', 'ldapSearchDeref',
]
},
2019-02-05 11:51:39 +01:00
{
title => 'ldapGroups',
help => 'authldap.html#groups',
form => 'simpleInputContainer',
nodes => [
'ldapGroupBase',
'ldapGroupObjectClass',
'ldapGroupAttributeName',
'ldapGroupAttributeNameUser',
'ldapGroupAttributeNameSearch',
'ldapGroupDecodeSearchedValue',
'ldapGroupRecursive',
'ldapGroupAttributeNameGroup'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'ldapPassword',
help => 'authldap.html#password',
form => 'simpleInputContainer',
nodes => [
'ldapPpolicyControl',
'ldapSetPassword',
'ldapChangePasswordAsUser',
'ldapPwdEnc',
'ldapUsePasswordResetAttribute',
'ldapPasswordResetAttribute',
'ldapPasswordResetAttributeValue',
'ldapAllowResetExpiredPassword'
]
},
]
},
2019-02-05 11:51:39 +01:00
{
title => 'linkedinParams',
help => 'authlinkedin.html',
2018-11-07 21:58:21 +01:00
form => 'simpleInputContainer',
nodes => [
'linkedInAuthnLevel', 'linkedInClientID',
'linkedInClientSecret', 'linkedInFields',
'linkedInUserField', 'linkedInScope'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'combinationParams',
help => 'authcombination.html',
2017-02-15 07:41:50 +01:00
nodes => [ 'combination', 'combModules' ]
},
2019-02-05 11:51:39 +01:00
{
title => 'nullParams',
help => 'authnull.html',
form => 'simpleInputContainer',
nodes => ['nullAuthnLevel']
},
2019-02-05 11:51:39 +01:00
{
title => 'openidParams',
help => 'authopenid.html',
nodes => [
'openIdAuthnLevel', 'openIdExportedVars',
'openIdSecret', 'openIdIDPList'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'oidcParams',
help => 'authopenidconnect.html',
2018-11-07 21:58:21 +01:00
form => 'simpleInputContainer',
nodes => [
'oidcAuthnLevel',
'oidcRPCallbackGetParam',
'oidcRPStateTimeout'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'gpgParams',
help => 'authgpg.html',
form => 'simpleInputContainer',
2019-04-05 22:39:58 +02:00
nodes => [ 'gpgAuthnLevel', 'gpgDb' ],
2019-02-05 11:51:39 +01:00
},
{
title => 'proxyParams',
help => 'authproxy.html',
form => 'simpleInputContainer',
nodes => [
2019-04-05 22:39:58 +02:00
'proxyAuthnLevel', 'proxyAuthService',
'proxySessionService', 'remoteCookieName',
2017-01-10 13:36:11 +01:00
'proxyUseSoap'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'pamParams',
2017-03-14 16:34:10 +01:00
help => 'authpam.html',
form => 'simpleInputContainer',
2019-04-05 22:39:58 +02:00
nodes => [ 'pamAuthnLevel', 'pamService' ]
2017-03-14 16:34:10 +01:00
},
2019-02-05 11:51:39 +01:00
{
title => 'radiusParams',
help => 'authradius.html',
form => 'simpleInputContainer',
nodes => [
'radiusAuthnLevel', 'radiusSecret',
'radiusServer'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'restParams',
help => 'authrest.html',
form => 'simpleInputContainer',
nodes => [
2019-04-05 22:39:58 +02:00
'restAuthnLevel', 'restAuthUrl',
'restUserDBUrl', 'restPwdConfirmUrl',
'restPwdModifyUrl'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'remoteParams',
help => 'authremote.html',
nodes => [
'remotePortal',
'remoteCookieName',
'remoteGlobalStorage',
'remoteGlobalStorageOptions'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'slaveParams',
help => 'authslave.html',
nodes => [
'slaveAuthnLevel', 'slaveExportedVars',
'slaveUserHeader', 'slaveMasterIP',
'slaveHeaderName', 'slaveHeaderContent'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'sslParams',
help => 'authssl.html',
2017-04-11 21:19:59 +02:00
nodes => [
'SSLAuthnLevel', 'SSLVar',
'SSLVarIf', 'sslByAjax',
'sslHost',
]
},
2019-02-05 11:51:39 +01:00
{
title => 'twitterParams',
help => 'authtwitter.html',
form => 'simpleInputContainer',
nodes => [
'twitterAuthnLevel', 'twitterKey',
2018-06-22 18:16:24 +02:00
'twitterSecret', 'twitterAppName',
'twitterUserField'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'webidParams',
help => 'authwebid.html',
nodes => [
'webIDAuthnLevel', 'webIDExportedVars',
'webIDWhitelist'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'customParams',
help => 'authcustom.html',
nodes => [
'customAuth', 'customUserDB',
'customPassword', 'customRegister',
'customAddParams',
]
},
],
'nodes_filter' => 'authParams'
},
2019-02-05 11:51:39 +01:00
{
title => 'issuerParams',
help => 'start.html#identity_provider',
2019-02-07 09:27:56 +01:00
nodes => [ {
2019-02-05 11:51:39 +01:00
title => 'issuerDBSAML',
help => 'idpsaml.html',
form => 'simpleInputContainer',
nodes => [
2019-02-05 11:51:39 +01:00
'issuerDBSAMLActivation', 'issuerDBSAMLPath',
'issuerDBSAMLRule'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'issuerDBCAS',
help => 'idpcas.html#enabling_cas',
2018-07-22 23:43:06 +02:00
form => 'simpleInputContainer',
nodes => [
'issuerDBCASActivation', 'issuerDBCASPath',
'issuerDBCASRule',
]
},
2019-02-05 11:51:39 +01:00
{
title => 'issuerDBOpenID',
help => 'idpopenid.html',
nodes => [
'issuerDBOpenIDActivation',
'issuerDBOpenIDPath',
'issuerDBOpenIDRule',
2019-02-05 11:51:39 +01:00
{
title => 'issuerDBOpenIDOptions',
nodes => [
'openIdIssuerSecret',
'openIdAttr',
'openIdSPList',
2019-02-05 11:51:39 +01:00
{
title => 'openIdSreg',
form => 'simpleInputContainer',
nodes => [
'openIdSreg_fullname',
'openIdSreg_nickname',
'openIdSreg_language',
'openIdSreg_postcode',
'openIdSreg_timezone',
'openIdSreg_country',
'openIdSreg_gender',
'openIdSreg_email',
'openIdSreg_dob'
]
}
]
}
]
},
2019-02-05 11:51:39 +01:00
{
title => 'issuerDBOpenIDConnect',
help => 'idpopenidconnect.html',
2018-07-22 23:43:06 +02:00
form => 'simpleInputContainer',
nodes => [
'issuerDBOpenIDConnectActivation',
'issuerDBOpenIDConnectPath',
'issuerDBOpenIDConnectRule',
]
2016-06-03 13:34:14 +02:00
},
2019-02-05 11:51:39 +01:00
{
title => 'issuerDBGet',
2017-03-04 16:03:53 +01:00
help => 'issuerdbget.html',
2016-06-03 13:34:14 +02:00
nodes => [
'issuerDBGetActivation',
'issuerDBGetPath',
'issuerDBGetRule',
'issuerDBGetParameters'
]
},
]
},
2019-02-05 11:51:39 +01:00
{
title => 'logParams',
help => 'logs.html',
form => 'simpleInputContainer',
2019-03-07 18:22:16 +01:00
nodes => [ 'whatToTrace', 'hiddenAttributes' ]
},
2019-02-05 11:51:39 +01:00
{
title => 'cookieParams',
help => 'ssocookie.html',
form => 'simpleInputContainer',
nodes => [
'cookieName', '*domain',
'cda', 'securedCookie',
'httpOnly', 'cookieExpiration'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'sessionParams',
help => 'sessions.html',
nodes => [
'storePassword',
'timeout',
'timeoutActivity',
'timeoutActivityInterval',
'grantSessionRules',
2019-02-05 11:51:39 +01:00
{
title => 'sessionStorage',
help => 'start.html#sessions_database',
nodes => [
'globalStorage',
'globalStorageOptions',
'localSessionStorage',
'localSessionStorageOptions'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'multipleSessions',
form => 'simpleInputContainer',
nodes => [
'singleSession', 'singleIP',
'singleUserByIP', 'singleSessionUserByIP',
'notifyDeleted', 'notifyOther'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'persistentSessions',
nodes => [
2019-07-01 13:28:01 +02:00
'disablePersistentStorage',
'persistentStorage',
'persistentStorageOptions'
]
},
]
},
2019-02-05 11:51:39 +01:00
{
title => 'reloadParams',
help => 'configlocation.html#configuration_reload',
nodes => [ 'reloadUrls', 'reloadTimeout', ]
},
2019-02-05 11:51:39 +01:00
{
title => 'plugins',
2018-10-12 22:31:12 +02:00
help => 'start.html#plugins',
nodes => [
'stayConnected',
2017-01-16 22:00:50 +01:00
'portalStatus',
2018-11-29 23:06:10 +01:00
'upgradeSession',
2019-02-05 11:51:39 +01:00
{
title => 'portalServers',
2017-08-30 18:47:28 +02:00
help => 'portalservers.html',
2019-02-01 19:55:10 +01:00
form => 'simpleInputContainer',
nodes => [
'wsdlServer', 'restSessionServer',
'restExportSecretKeys', 'restConfigServer',
'soapSessionServer', 'soapConfigServer',
'exportedAttr',
]
},
2019-02-05 11:51:39 +01:00
{
title => 'loginHistory',
help => 'loginhistory.html',
nodes => [
'loginHistoryEnabled',
'successLoginNumber',
'failedLoginNumber',
'sessionDataToRemember'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'notifications',
help => 'notifications.html',
nodes => [
'notification',
2017-02-19 18:04:49 +01:00
'notificationServer',
'oldNotifFormat',
'notificationStorage',
'notificationStorageOptions',
'notificationWildcard',
'notificationXSLTfile'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'passwordManagement',
help => 'resetpassword.html',
2019-02-07 09:27:56 +01:00
nodes => [ {
2019-02-05 11:51:39 +01:00
title => 'mailContent',
form => 'simpleInputContainer',
nodes => [
'mailSubject',
'mailBody',
'mailConfirmSubject',
'mailConfirmBody'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'mailOther',
form => 'simpleInputContainer',
nodes => [
2019-02-05 11:51:39 +01:00
'mailUrl', 'mailTimeout',
2019-01-18 23:33:34 +01:00
'randomPasswordRegexp',
]
}
]
},
2019-02-05 11:51:39 +01:00
{
title => 'register',
help => 'register.html',
form => 'simpleInputContainer',
nodes => [
2017-11-02 17:16:21 +01:00
'registerUrl',
'registerTimeout',
'registerConfirmSubject',
'registerDoneSubject'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'autoSignin',
2018-07-20 23:09:07 +02:00
help => 'autosignin.html',
2018-07-22 22:35:30 +02:00
nodes => ['autoSigninRules'],
2017-10-27 15:11:30 +02:00
},
2019-02-05 11:51:39 +01:00
{
title => 'stateCheck',
2018-05-15 21:20:31 +02:00
help => 'checkstate.html',
2018-08-09 08:21:09 +02:00
form => 'simpleInputContainer',
2018-07-22 22:35:30 +02:00
nodes => [ 'checkState', 'checkStateSecret', ],
2018-05-15 21:20:31 +02:00
},
{
title => 'checkUsers',
help => 'checkuser.html',
form => 'simpleInputContainer',
nodes => [
'checkUser',
2019-03-09 23:29:10 +01:00
'checkUserIdRule',
'checkUserHiddenAttributes',
'checkUserDisplayPersistentInfo',
'checkUserDisplayEmptyValues',
]
},
2019-03-03 20:50:21 +01:00
{
title => 'impersonation',
help => 'impersonation.html',
2019-03-03 20:50:21 +01:00
form => 'simpleInputContainer',
2019-03-07 18:22:16 +01:00
nodes => [
'impersonationRule',
'impersonationIdRule',
'impersonationHiddenAttributes',
'impersonationSkipEmptyValues',
'impersonationMergeSSOgroups',
2019-03-03 20:50:21 +01:00
]
},
2019-06-21 14:49:38 +02:00
{
title => 'contextSwitching',
help => 'contextswitching.html',
form => 'simpleInputContainer',
nodes => [
'contextSwitchingRule',
'contextSwitchingIdRule',
'contextSwitchingStopWithLogout',
2019-07-02 20:03:40 +02:00
2019-06-23 22:55:10 +02:00
#'contextSwitchingHiddenAttributes',
2019-06-21 14:49:38 +02:00
]
},
2018-02-21 06:48:06 +01:00
]
},
2019-02-05 11:51:39 +01:00
{
title => 'secondFactors',
2018-10-12 22:31:12 +02:00
help => 'secondfactor.html',
2019-02-07 09:27:56 +01:00
nodes => [ {
2019-02-05 11:51:39 +01:00
title => 'utotp2f',
help => 'utotp2f.html',
form => 'simpleInputContainer',
nodes =>
2019-02-05 11:51:39 +01:00
[ 'utotp2fActivation', 'utotp2fAuthnLevel' ]
},
2019-02-05 11:51:39 +01:00
{
title => 'totp',
2018-02-21 06:57:51 +01:00
help => 'totp2f.html',
2018-02-21 06:48:06 +01:00
form => 'simpleInputContainer',
nodes => [
2018-03-18 14:26:45 +01:00
'totp2fActivation',
'totp2fSelfRegistration',
'totp2fAuthnLevel',
'totp2fIssuer',
'totp2fInterval',
'totp2fRange',
2018-02-21 22:07:12 +01:00
'totp2fDigits',
2018-03-18 14:26:45 +01:00
'totp2fDisplayExistingSecret',
'totp2fUserCanChangeKey',
'totp2fUserCanRemoveKey',
2019-06-07 19:25:40 +02:00
'totp2fTTL',
2018-02-21 06:48:06 +01:00
]
},
2019-02-05 11:51:39 +01:00
{
title => 'u2f',
2018-07-10 23:02:47 +02:00
help => 'u2f.html',
form => 'simpleInputContainer',
nodes => [
2019-02-05 11:51:39 +01:00
'u2fActivation', 'u2fSelfRegistration',
'u2fAuthnLevel', 'u2fUserCanRemoveKey',
2019-06-07 19:25:40 +02:00
'u2fTTL',
2018-07-10 23:02:47 +02:00
]
},
2019-02-05 11:51:39 +01:00
{
title => 'mail2f',
2019-02-03 14:43:44 +01:00
help => 'mail2f.html',
form => 'simpleInputContainer',
nodes => [
2019-02-05 11:51:39 +01:00
'mail2fActivation', 'mail2fCodeRegex',
'mail2fTimeout', 'mail2fSubject',
'mail2fBody', 'mail2fAuthnLevel',
2019-02-03 14:43:44 +01:00
'mail2fLogo',
]
},
2019-02-05 11:51:39 +01:00
{
title => 'external2f',
2017-03-22 23:18:28 +01:00
help => 'external2f.html',
form => 'simpleInputContainer',
nodes => [
2019-02-14 22:10:48 +01:00
'ext2fActivation', 'ext2fCodeActivation',
'ext2FSendCommand', 'ext2FValidateCommand',
'ext2fAuthnLevel', 'ext2fLogo',
2017-03-22 23:18:28 +01:00
]
2018-02-23 09:38:33 +01:00
},
2019-02-05 11:51:39 +01:00
{
title => 'rest2f',
2018-02-23 09:38:33 +01:00
help => 'rest2f.html',
nodes => [
2019-02-05 11:51:39 +01:00
'rest2fActivation', 'rest2fInitUrl',
'rest2fInitArgs', 'rest2fVerifyUrl',
'rest2fVerifyArgs', 'rest2fAuthnLevel',
2018-03-15 22:22:20 +01:00
'rest2fLogo',
2018-02-23 09:38:33 +01:00
]
2017-03-22 23:18:28 +01:00
},
2019-02-05 11:51:39 +01:00
{
title => 'yubikey2f',
2018-03-20 18:19:53 +01:00
help => 'yubikey2f.html',
form => 'simpleInputContainer',
nodes => [
'yubikey2fActivation',
'yubikey2fSelfRegistration',
'yubikey2fAuthnLevel',
'yubikey2fClientID',
'yubikey2fSecretKey',
'yubikey2fNonce',
'yubikey2fUrl',
'yubikey2fPublicIDSize',
'yubikey2fUserCanRemoveKey',
2019-06-07 19:25:40 +02:00
'yubikey2fTTL',
2018-03-20 18:19:53 +01:00
],
},
2019-06-16 15:57:31 +02:00
{
title => 'sfRemovedNotification',
help => 'secondfactor.html',
form => 'simpleInputContainer',
nodes => [
'sfRemovedMsgRule', 'sfRemovedUseNotif',
'sfRemovedNotifRef', 'sfRemovedNotifTitle',
2019-06-16 15:57:31 +02:00
'sfRemovedNotifMsg',
],
},
'sfRequired',
2017-03-01 07:41:42 +01:00
]
},
2019-02-05 11:51:39 +01:00
{
title => 'advancedParams',
2017-03-01 07:41:42 +01:00
help => 'start.html#advanced_features',
nodes => [
'customFunctions',
2018-11-28 22:24:10 +01:00
'multiValuesSeparator',
2019-02-05 11:51:39 +01:00
{
title => 'SMTP',
help => 'smtp.html',
nodes => [
'mailSessionKey',
'SMTPServer',
'SMTPPort',
'SMTPAuthUser',
'SMTPAuthPass',
'SMTPTLS',
'SMTPTLSOpts',
{
title => 'mailHeaders',
form => 'simpleInputContainer',
2019-01-19 16:04:03 +01:00
nodes => [
2019-02-05 11:51:39 +01:00
'mailFrom', 'mailReplyTo',
'mailCharset'
2019-01-19 16:04:03 +01:00
]
2019-02-05 11:51:39 +01:00
},
]
2019-01-19 16:04:03 +01:00
},
2019-02-05 11:51:39 +01:00
{
title => 'security',
help => 'security.html#configure_security_settings',
nodes => [
'userControl',
'portalForceAuthn',
'portalForceAuthnInterval',
'key',
'trustedDomains',
'useSafeJail',
2016-12-29 07:25:07 +01:00
'checkXSS',
'bruteForceProtection',
2018-11-29 23:06:10 +01:00
'requireToken',
'formTimeout',
'tokenUseGlobalStorage',
2017-02-15 16:08:23 +01:00
'lwpOpts',
'lwpSslOpts',
2019-02-05 11:51:39 +01:00
{
title => 'contentSecurityPolicy',
help => 'security.html#portal',
form => 'simpleInputContainer',
nodes => [
'cspDefault', 'cspImg',
'cspScript', 'cspStyle',
'cspFont', 'cspFormAction',
'cspConnect',
]
2017-01-24 23:05:07 +01:00
},
2019-05-31 17:00:39 +02:00
{
title => 'crossOrigineResourceSharing',
help => 'security.html#portal',
form => 'simpleInputContainer',
nodes => [
'corsEnabled',
'corsAllow_Credentials',
'corsAllow_Headers',
'corsAllow_Methods',
'corsAllow_Origin',
'corsExpose_Headers',
2019-05-31 17:00:39 +02:00
'corsMax_Age',
]
},
]
},
2019-02-05 11:51:39 +01:00
{
title => 'redirection',
help => 'redirections.html',
form => 'simpleInputContainer',
nodes => [
'https',
'port',
'useRedirectOnForbidden',
'useRedirectOnError',
2016-02-01 11:18:37 +01:00
'maintenance'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'portalRedirection',
help => 'redirections.html#portal_redirections',
form => 'simpleInputContainer',
nodes => [
2019-02-05 11:51:39 +01:00
'jsRedirect', 'noAjaxHook',
'skipRenewConfirmation',
]
},
2016-12-29 07:25:07 +01:00
'nginxCustomHandlers',
'logoutServices',
2019-02-05 11:51:39 +01:00
{
title => 'forms',
2018-10-17 23:06:50 +02:00
form => 'simpleInputContainer',
nodes => [
2019-02-05 11:51:39 +01:00
'infoFormMethod', 'confirmFormMethod',
'redirectFormMethod', 'activeTimer',
]
},
]
}
]
},
2019-02-05 11:51:39 +01:00
{
title => 'variables',
2017-03-04 16:03:53 +01:00
help => 'variables.html',
nodes => [ 'exportedVars', 'macros', 'groups' ]
},
'virtualHosts',
2019-02-05 11:51:39 +01:00
{
title => 'samlServiceMetaData',
help => 'samlservice.html',
nodes => [
'samlEntityID',
2019-02-05 11:51:39 +01:00
{
title => 'samlServiceSecurity',
help => 'samlservice.html#security_parameters',
2019-02-07 09:27:56 +01:00
nodes => [ {
2019-02-05 11:51:39 +01:00
title => 'samlServiceSecuritySig',
form => 'RSAKey',
group => [
'samlServicePrivateKeySig',
'samlServicePrivateKeySigPwd',
'samlServicePublicKeySig'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'samlServiceSecurityEnc',
form => 'RSAKey',
group => [
'samlServicePrivateKeyEnc',
'samlServicePrivateKeyEncPwd',
'samlServicePublicKeyEnc'
]
},
'samlServiceUseCertificateInResponse',
'samlServiceSignatureMethod'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'samlNameIDFormatMap',
help => 'samlservice.html#nameid_formats',
form => 'simpleInputContainer',
nodes => [
'samlNameIDFormatMapEmail',
'samlNameIDFormatMapX509',
'samlNameIDFormatMapWindows',
'samlNameIDFormatMapKerberos'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'samlAuthnContextMap',
help => 'samlservice.html#authentication_contexts',
form => 'simpleInputContainer',
nodes => [
'samlAuthnContextMapPassword',
'samlAuthnContextMapPasswordProtectedTransport',
'samlAuthnContextMapTLSClient',
'samlAuthnContextMapKerberos'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'samlOrganization',
help => 'samlservice.html#organization',
form => 'simpleInputContainer',
nodes => [
2019-07-02 20:03:40 +02:00
'samlOrganizationDisplayName',
'samlOrganizationName',
'samlOrganizationURL'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'samlSPSSODescriptor',
help => 'samlservice.html#service_provider',
nodes => [
'samlSPSSODescriptorAuthnRequestsSigned',
'samlSPSSODescriptorWantAssertionsSigned',
2019-02-05 11:51:39 +01:00
{
title => 'samlSPSSODescriptorSingleLogoutService',
nodes => [
2019-02-05 11:51:39 +01:00
'samlSPSSODescriptorSingleLogoutServiceHTTPRedirect',
'samlSPSSODescriptorSingleLogoutServiceHTTPPost',
'samlSPSSODescriptorSingleLogoutServiceSOAP'
]
},
2019-02-05 11:51:39 +01:00
{
title =>
'samlSPSSODescriptorAssertionConsumerService',
nodes => [
2019-02-05 11:51:39 +01:00
'samlSPSSODescriptorAssertionConsumerServiceHTTPArtifact',
'samlSPSSODescriptorAssertionConsumerServiceHTTPPost'
]
},
2019-02-05 11:51:39 +01:00
{
title =>
'samlSPSSODescriptorArtifactResolutionService',
nodes => [
2019-02-05 11:51:39 +01:00
'samlSPSSODescriptorArtifactResolutionServiceArtifact'
]
}
]
},
2019-02-05 11:51:39 +01:00
{
title => 'samlIDPSSODescriptor',
help => 'samlservice.html#identity_provider',
nodes => [
'samlIDPSSODescriptorWantAuthnRequestsSigned',
2019-02-05 11:51:39 +01:00
{
title => 'samlIDPSSODescriptorSingleSignOnService',
nodes => [
2019-02-05 11:51:39 +01:00
'samlIDPSSODescriptorSingleSignOnServiceHTTPRedirect',
'samlIDPSSODescriptorSingleSignOnServiceHTTPPost',
'samlIDPSSODescriptorSingleSignOnServiceHTTPArtifact',
]
},
2019-02-05 11:51:39 +01:00
{
title => 'samlIDPSSODescriptorSingleLogoutService',
nodes => [
2019-02-05 11:51:39 +01:00
'samlIDPSSODescriptorSingleLogoutServiceHTTPRedirect',
'samlIDPSSODescriptorSingleLogoutServiceHTTPPost',
'samlIDPSSODescriptorSingleLogoutServiceSOAP'
]
},
2019-02-05 11:51:39 +01:00
{
title =>
'samlIDPSSODescriptorArtifactResolutionService',
nodes => [
2019-02-05 11:51:39 +01:00
'samlIDPSSODescriptorArtifactResolutionServiceArtifact'
]
}
]
},
2019-02-05 11:51:39 +01:00
{
title => 'samlAttributeAuthorityDescriptor',
help => 'samlservice.html#attribute_authority',
2019-02-07 09:27:56 +01:00
nodes => [ {
2019-02-05 11:51:39 +01:00
title =>
'samlAttributeAuthorityDescriptorAttributeService',
nodes => [
2019-02-05 11:51:39 +01:00
'samlAttributeAuthorityDescriptorAttributeServiceSOAP'
]
}
]
},
2019-02-05 11:51:39 +01:00
{
title => 'samlAdvanced',
help => 'samlservice.html#advanced',
nodes => [
'samlIdPResolveCookie',
'samlMetadataForceUTF8',
'samlStorage',
'samlStorageOptions',
'samlRelayStateTimeout',
'samlUseQueryStringSpecific',
2019-02-05 11:51:39 +01:00
{
title => 'samlCommonDomainCookie',
form => 'simpleInputContainer',
nodes => [
'samlCommonDomainCookieActivation',
'samlCommonDomainCookieDomain',
'samlCommonDomainCookieReader',
'samlCommonDomainCookieWriter'
]
},
2019-02-05 11:51:39 +01:00
{
title => 'samlDiscoveryProtocol',
form => 'simpleInputContainer',
nodes => [
'samlDiscoveryProtocolActivation',
'samlDiscoveryProtocolURL',
'samlDiscoveryProtocolPolicy',
'samlDiscoveryProtocolIsPassive'
]
},
'samlOverrideIDPEntityID',
]
}
]
},
'samlIDPMetaDataNodes',
'samlSPMetaDataNodes',
2019-02-05 11:51:39 +01:00
{
title => 'oidcServiceMetaData',
help => 'openidconnectservice.html#service_configuration',
nodes => [
'oidcServiceMetaDataIssuer',
2019-02-05 11:51:39 +01:00
{
title => 'oidcServiceMetaDataEndPoints',
form => 'simpleInputContainer',
nodes => [
'oidcServiceMetaDataAuthorizeURI',
'oidcServiceMetaDataTokenURI',
'oidcServiceMetaDataUserInfoURI',
'oidcServiceMetaDataJWKSURI',
'oidcServiceMetaDataRegistrationURI',
'oidcServiceMetaDataEndSessionURI',
'oidcServiceMetaDataCheckSessionURI',
2017-03-10 12:39:19 +01:00
'oidcServiceMetaDataFrontChannelURI',
'oidcServiceMetaDataBackChannelURI',
]
},
'oidcServiceMetaDataAuthnContext',
2019-02-05 11:51:39 +01:00
{
title => 'oidcServiceMetaDataSecurity',
2019-02-07 09:27:56 +01:00
nodes => [ {
2019-02-05 11:51:39 +01:00
title => 'oidcServiceMetaDataKeys',
form => 'RSAKeyNoPassword',
group => [
'oidcServicePrivateKeySig',
'oidcServicePublicKeySig',
],
},
2015-06-05 14:55:06 +02:00
'oidcServiceKeyIdSig',
'oidcServiceAllowDynamicRegistration',
'oidcServiceAllowAuthorizationCodeFlow',
'oidcServiceAllowImplicitFlow',
'oidcServiceAllowHybridFlow',
],
},
2019-02-05 11:51:39 +01:00
{
title => "oidcServiceMetaDataSessions",
nodes => [ 'oidcStorage', 'oidcStorageOptions', ],
},
]
},
'oidcOPMetaDataNodes',
'oidcRPMetaDataNodes',
2019-02-05 11:51:39 +01:00
{
title => 'casServiceMetadata',
help => 'idpcas.html#configuring_the_cas_service',
nodes => [
'casAttr',
'casAccessControlPolicy',
'casStorage',
'casStorageOptions',
'casAttributes',
]
2017-04-15 15:21:33 +02:00
},
2017-04-12 18:45:49 +02:00
'casSrvMetaDataNodes',
'casAppMetaDataNodes',
];
}
1;