Add manager option for #2506

2620-ppolicy-binding
Maxime Besson 4 years ago
parent d4c1c3c7de
commit 6f6239b6c3
  1. 2
      lemonldap-ng-common/lib/Lemonldap/NG/Common/Conf/Constants.pm
  2. 4
      lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Attributes.pm
  3. 5
      lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Build/Attributes.pm
  4. 1
      lemonldap-ng-manager/lib/Lemonldap/NG/Manager/Build/Tree.pm
  5. 1
      lemonldap-ng-manager/site/htdocs/static/languages/ar.json
  6. 1
      lemonldap-ng-manager/site/htdocs/static/languages/de.json
  7. 1
      lemonldap-ng-manager/site/htdocs/static/languages/en.json
  8. 1
      lemonldap-ng-manager/site/htdocs/static/languages/es.json
  9. 1
      lemonldap-ng-manager/site/htdocs/static/languages/fr.json
  10. 1
      lemonldap-ng-manager/site/htdocs/static/languages/it.json
  11. 1
      lemonldap-ng-manager/site/htdocs/static/languages/pl.json
  12. 1
      lemonldap-ng-manager/site/htdocs/static/languages/tr.json
  13. 1
      lemonldap-ng-manager/site/htdocs/static/languages/vi.json
  14. 1
      lemonldap-ng-manager/site/htdocs/static/languages/zh.json
  15. 1
      lemonldap-ng-manager/site/htdocs/static/languages/zh_TW.json
  16. 2
      lemonldap-ng-manager/site/htdocs/static/reverseTree.json
  17. 2
      lemonldap-ng-manager/site/htdocs/static/struct.json

@ -31,7 +31,7 @@ use constant DEFAULTCONFBACKENDOPTIONS => (
);
our $hashParameters = qr/^(?:(?:l(?:o(?:ca(?:lSessionStorageOption|tionRule)|goutService)|dapExportedVar|wp(?:Ssl)?Opt)|(?:(?:d(?:emo|bi)|webID)ExportedVa|exported(?:Heade|Va)|issuerDBGetParamete)r|f(?:indUser(?:Exclud|Search)ingAttribute|acebookExportedVar)|re(?:moteGlobalStorageOption|st2f(?:Verify|Init)Arg|loadUrl)|g(?:r(?:antSessionRule|oup)|lobalStorageOption)|n(?:otificationStorageOption|ginxCustomHandler)|macro)s|o(?:idc(?:S(?:ervice(?:DynamicRegistrationEx(?:portedVar|traClaim)s|MetaDataAuthnContext)|torageOptions)|RPMetaData(?:(?:Option(?:sExtraClaim)?|ExportedVar|ScopeRule|Macro)s|Node)|OPMetaData(?:(?:ExportedVar|Option)s|J(?:SON|WKS)|Node))|penIdExportedVars)|c(?:as(?:A(?:ppMetaData(?:(?:ExportedVar|Option|Macro)s|Node)|ttributes)|S(?:rvMetaData(?:(?:ExportedVar|Option)s|Node)|torageOptions))|(?:ustom(?:Plugins|Add)Param|heckUserHiddenHeader|ombModule)s)|s(?:aml(?:S(?:PMetaData(?:(?:ExportedAttribute|Option|Macro)s|Node|XML)|torageOptions)|IDPMetaData(?:(?:ExportedAttribute|Option)s|Node|XML))|essionDataToRemember|laveExportedVars|fExtra)|a(?:(?:daptativeAuthenticationLevelR|ut(?:hChoiceMod|oSigninR))ules|pplicationList)|p(?:ersistentStorageOptions|o(?:rtalSkinRules|st))|v(?:hostOptions|irtualHost)|S(?:MTPTLSOpts|SLVarIf))$/;
our $arrayParameters = qr/^mySessionAuthorizedRWKeys$/;
our $boolKeys = qr/^(?:s(?:aml(?:IDP(?:MetaDataOptions(?:(?:Check(?:S[LS]OMessageSignatur|Audienc|Tim)|IsPassiv)e|A(?:llow(?:LoginFromIDP|ProxiedAuthn)|daptSessionUtime)|Force(?:Authn|UTF8)|StoreSAMLToken|RelayStateURL)|SSODescriptorWantAuthnRequestsSigned)|S(?:P(?:MetaDataOptions(?:(?:CheckS[LS]OMessageSignatur|OneTimeUs)e|EnableIDPInitiatedURL|ForceUTF8)|SSODescriptor(?:WantAssertion|AuthnRequest)sSigned)|erviceUseCertificateInResponse)|DiscoveryProtocol(?:Activation|IsPassive)|CommonDomainCookieActivation|UseQueryStringSpecific|MetadataForceUTF8)|f(?:RemovedUseNotif|OnlyUpgrade)|kip(?:Upgrade|Renew)Confirmation|oap(?:Session|Config)Server|t(?:ayConnecte|orePasswor)d|laveDisplayLogo|howLanguages|slByAjax)|o(?:idc(?:RPMetaDataOptions(?:A(?:llow(?:(?:ClientCredentials|Password)Grant|Offline)|ccessToken(?:Claims|JWT))|Re(?:freshToken|quirePKCE)|LogoutSessionRequired|IDTokenForceClaims|BypassConsent|Public)|ServiceAllow(?:(?:AuthorizationCode|Implicit|Hybrid)Flow|DynamicRegistration)|OPMetaDataOptions(?:(?:CheckJWTSignatur|UseNonc)e|StoreIDToken))|ldNotifFormat)|p(?:ortal(?:Display(?:Re(?:freshMyRights|setPassword|gister)|CertificateResetByMail|GeneratePassword|PasswordPolicy)|ErrorOn(?:ExpiredSession|MailNotFound)|(?:CheckLogin|Statu)s|OpenLinkInNewWindow|ForceAuthn|AntiFrame)|roxyUseSoap)|c(?:o(?:ntextSwitching(?:Allowed2fModifications|StopWithLogout)|mpactConf|rsEnabled)|a(?:ptcha_(?:register|login|mail)_enabled|sSrvMetaDataOptions(?:Gateway|Renew))|heck(?:DevOps(?:Download)?|State|User|XSS)|rowdsec|da)|l(?:dap(?:(?:G(?:roup(?:DecodeSearchedValu|Recursiv)|etUserBeforePasswordChang)|UsePasswordResetAttribut)e|(?:AllowResetExpired|Set)Password|ChangePasswordAsUser|PpolicyControl|ITDS)|oginHistoryEnabled)|no(?:tif(?:ication(?:Server(?:(?:POS|GE)T|DELETE)?|sExplorer)?|y(?:Deleted|Other))|AjaxHook)|i(?:ssuerDB(?:OpenID(?:Connect)?|SAML|CAS|Get)Activation|mpersonationSkipEmptyValues)|to(?:tp2f(?:UserCan(?:Chang|Remov)eKey|DisplayExistingSecret)|kenUseGlobalStorage)|u(?:se(?:RedirectOn(?:Forbidden|Error)|SafeJail)|2fUserCanRemoveKey|pgradeSession)|re(?:st(?:(?:Password|Session|Config|Auth)Server|ExportSecretKeys)|freshSessions)|br(?:uteForceProtection(?:IncrementalTempo)?|owsersDontStorePassword)|d(?:is(?:ablePersistentStorage|playSessionId)|biDynamicHashEnabled)|(?:mai(?:lOnPasswordChang|ntenanc)|vhostMaintenanc)e|g(?:roupsBeforeMacros|lobalLogoutTimer)|a(?:voidAssignment|ctiveTimer)|h(?:ideOldPassword|ttpOnly)|yubikey2fUserCanRemoveKey|krb(?:RemoveDomain|ByJs)|(?:wsdlServ|findUs)er)$/;
our $boolKeys = qr/^(?:s(?:aml(?:IDP(?:MetaDataOptions(?:(?:Check(?:S[LS]OMessageSignatur|Audienc|Tim)|IsPassiv)e|A(?:llow(?:LoginFromIDP|ProxiedAuthn)|daptSessionUtime)|Force(?:Authn|UTF8)|StoreSAMLToken|RelayStateURL)|SSODescriptorWantAuthnRequestsSigned)|S(?:P(?:MetaDataOptions(?:(?:CheckS[LS]OMessageSignatur|OneTimeUs)e|EnableIDPInitiatedURL|ForceUTF8)|SSODescriptor(?:WantAssertion|AuthnRequest)sSigned)|erviceUseCertificateInResponse)|DiscoveryProtocol(?:Activation|IsPassive)|CommonDomainCookieActivation|UseQueryStringSpecific|MetadataForceUTF8)|f(?:RemovedUseNotif|OnlyUpgrade)|kip(?:Upgrade|Renew)Confirmation|oap(?:Session|Config)Server|t(?:ayConnecte|orePasswor)d|laveDisplayLogo|howLanguages|slByAjax)|o(?:idc(?:RPMetaDataOptions(?:A(?:llow(?:(?:ClientCredentials|Password)Grant|Offline)|ccessToken(?:Claims|JWT))|Re(?:freshToken|quirePKCE)|LogoutSessionRequired|IDTokenForceClaims|BypassConsent|Public)|ServiceAllow(?:(?:AuthorizationCode|Implicit|Hybrid)Flow|DynamicRegistration)|OPMetaDataOptions(?:(?:CheckJWTSignatur|UseNonc)e|StoreIDToken))|ldNotifFormat)|c(?:a(?:sS(?:rvMetaDataOptions(?:Gateway|Renew)|trictMatching)|ptcha_(?:register|login|mail)_enabled)|o(?:ntextSwitching(?:Allowed2fModifications|StopWithLogout)|mpactConf|rsEnabled)|heck(?:DevOps(?:Download)?|State|User|XSS)|rowdsec|da)|p(?:ortal(?:Display(?:Re(?:freshMyRights|setPassword|gister)|CertificateResetByMail|GeneratePassword|PasswordPolicy)|ErrorOn(?:ExpiredSession|MailNotFound)|(?:CheckLogin|Statu)s|OpenLinkInNewWindow|ForceAuthn|AntiFrame)|roxyUseSoap)|l(?:dap(?:(?:G(?:roup(?:DecodeSearchedValu|Recursiv)|etUserBeforePasswordChang)|UsePasswordResetAttribut)e|(?:AllowResetExpired|Set)Password|ChangePasswordAsUser|PpolicyControl|ITDS)|oginHistoryEnabled)|no(?:tif(?:ication(?:Server(?:(?:POS|GE)T|DELETE)?|sExplorer)?|y(?:Deleted|Other))|AjaxHook)|i(?:ssuerDB(?:OpenID(?:Connect)?|SAML|CAS|Get)Activation|mpersonationSkipEmptyValues)|to(?:tp2f(?:UserCan(?:Chang|Remov)eKey|DisplayExistingSecret)|kenUseGlobalStorage)|u(?:se(?:RedirectOn(?:Forbidden|Error)|SafeJail)|2fUserCanRemoveKey|pgradeSession)|re(?:st(?:(?:Password|Session|Config|Auth)Server|ExportSecretKeys)|freshSessions)|br(?:uteForceProtection(?:IncrementalTempo)?|owsersDontStorePassword)|d(?:is(?:ablePersistentStorage|playSessionId)|biDynamicHashEnabled)|(?:mai(?:lOnPasswordChang|ntenanc)|vhostMaintenanc)e|g(?:roupsBeforeMacros|lobalLogoutTimer)|a(?:voidAssignment|ctiveTimer)|h(?:ideOldPassword|ttpOnly)|yubikey2fUserCanRemoveKey|krb(?:RemoveDomain|ByJs)|(?:wsdlServ|findUs)er)$/;
our @sessionTypes = ( 'remoteGlobal', 'global', 'localSession', 'persistent', 'saml', 'oidc', 'cas' );

@ -811,6 +811,10 @@ qr/(?:(?:https?):\/\/(?:(?:(?:(?:(?:(?:[a-zA-Z0-9][-a-zA-Z0-9]*)?[a-zA-Z0-9])[.]
'casStorageOptions' => {
'type' => 'keyTextContainer'
},
'casStrictMatching' => {
'default' => 0,
'type' => 'bool'
},
'cda' => {
'default' => 0,
'type' => 'bool'

@ -2419,6 +2419,11 @@ sub attributes {
type => 'keyTextContainer',
documentation => 'Apache::Session module parameters',
},
casStrictMatching => {
default => 0,
type => 'bool',
documentation => 'Disable host-based matching of CAS services',
},
issuerDBCASActivation => {
default => 0,
type => 'bool',

@ -1354,6 +1354,7 @@ sub tree {
'casStorage',
'casStorageOptions',
'casAttributes',
'casStrictMatching',
]
},

@ -171,6 +171,7 @@
"casSrvName":"اسم خادم كاس",
"casStorage":"اسم وحدة جلسات كاس",
"casStorageOptions":" خيارات وحدة جلسات كاس",
"casStrictMatching":"Use strict URL matching",
"categoryName":"اسم الفئة",
"cda":"نطاقات متعددة",
"certificateMailContent":"محتوى البريد",

@ -171,6 +171,7 @@
"casSrvName":"CAS Servername",
"casStorage":"CAS sessions module name",
"casStorageOptions":"CAS sessions module options",
"casStrictMatching":"Use strict URL matching",
"categoryName":"Category name",
"cda":"Mehrere Domains",
"certificateMailContent":"Mail content",

@ -171,6 +171,7 @@
"casSrvName":"CAS Server Name",
"casStorage":"CAS sessions module name",
"casStorageOptions":"CAS sessions module options",
"casStrictMatching":"Use strict URL matching",
"categoryName":"Category name",
"cda":"Multiple domains",
"certificateMailContent":"Mail content",

@ -171,6 +171,7 @@
"casSrvName":"Nombre de servidor CAS",
"casStorage":"CAS sessions module name",
"casStorageOptions":"CAS sessions module options",
"casStrictMatching":"Use strict URL matching",
"categoryName":"Nombre de categoría",
"cda":"Dominios múltiples",
"certificateMailContent":"Contenido de correo",

@ -171,6 +171,7 @@
"casSrvName":"Nom du serveur CAS",
"casStorage":"Nom du module des sessions CAS",
"casStorageOptions":"Options du module des sessions CAS",
"casStrictMatching":"Filtrage strict des URL",
"categoryName":"Nom de la catégorie",
"cda":"Domaines multiples",
"certificateMailContent":"Contenu du mail",

@ -171,6 +171,7 @@
"casSrvName":"NOme del Server CAS",
"casStorage":"Nome del modulo sessioni CAS",
"casStorageOptions":"Opzioni del modulo sessioni CAS",
"casStrictMatching":"Use strict URL matching",
"categoryName":"Nome della categoria",
"cda":"Domini multipli",
"certificateMailContent":"Contenuto della mail",

@ -171,6 +171,7 @@
"casSrvName":"Nazwa serwera CAS",
"casStorage":"Nazwa modułu sesji CAS",
"casStorageOptions":"Opcje modułu sesji CAS",
"casStrictMatching":"Use strict URL matching",
"categoryName":"Nazwa Kategorii",
"cda":"Wiele domen",
"certificateMailContent":"Treść wiadomości",

@ -171,6 +171,7 @@
"casSrvName":"CAS Sunucu Adı",
"casStorage":"CAS oturumları modül adı",
"casStorageOptions":"CAS oturumları modül seçenekleri",
"casStrictMatching":"Use strict URL matching",
"categoryName":"Kategori ismi",
"cda":"Çoklu alan adları",
"certificateMailContent":"E-posta içeriği",

@ -171,6 +171,7 @@
"casSrvName":"Tên máy chủ CAS",
"casStorage":"Tên mô-đun phiên CAS",
"casStorageOptions":"Các tùy chọn mô-đun phiên CAS",
"casStrictMatching":"Use strict URL matching",
"categoryName":"Tên thể loại",
"cda":"Nhiều tên miền",
"certificateMailContent":"Nội dung thư",

@ -171,6 +171,7 @@
"casSrvName":"CAS 服务器名称",
"casStorage":"CAS 会话模块名称",
"casStorageOptions":"CAS 会话模块选项",
"casStrictMatching":"Use strict URL matching",
"categoryName":"分类名称",
"cda":"Multiple domains",
"certificateMailContent":"Mail content",

@ -171,6 +171,7 @@
"casSrvName":"CAS 伺服器名稱",
"casStorage":"CAS 工作階段模組名稱",
"casStorageOptions":"CAS 工作階段模組選項",
"casStrictMatching":"Use strict URL matching",
"categoryName":"分類名稱",
"cda":"多域名",
"certificateMailContent":"郵件內容",

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long
Loading…
Cancel
Save