diff --git a/modules/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/_Struct.pm b/modules/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/_Struct.pm index 44bb9e7c3..a8f3b13fa 100644 --- a/modules/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/_Struct.pm +++ b/modules/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/_Struct.pm @@ -47,7 +47,7 @@ sub cstruct { samlIDPMetaDataNode => { $k2 => { _nodes => [ - qw(samlIDPMetaDataExportedAttributes samlIDPMetaDataXML samlIDPMetaDataOptions) + qw(samlIDPMetaDataXML samlIDPMetaDataExportedAttributes samlIDPMetaDataOptions) ], samlIDPMetaDataExportedAttributes => { _nodes => [ @@ -60,10 +60,21 @@ sub cstruct { . ":samlIDPMetaDataXML:textarea", samlIDPMetaDataOptions => { _nodes => [ - "hash:/samlIDPMetaDataOptions/$k2" - . ":samlIDPMetaDataOptions:text" - ] - } + qw(samlIDPMetaDataOptionsNameIDFormat samlIDPMetaDataOptionsForceAuthn samlIDPMetaDataOptionsAllowProxiedAuthn samlIDPMetaDataOptionsSSOBinding samlIDPMetaDataOptionsSLOBinding samlIDPMetaDataOptionsResolutionRule) + ], + samlIDPMetaDataOptionsNameIDFormat => +"text:/samlIDPMetaDataOptions/$k2/samlIDPMetaDataOptionsNameIDFormat", + samlIDPMetaDataOptionsForceAuthn => +"bool:/samlIDPMetaDataOptions/$k2/samlIDPMetaDataOptionsForceAuthn", + samlIDPMetaDataOptionsAllowProxiedAuthn => +"bool:/samlIDPMetaDataOptions/$k2/samlIDPMetaDataOptionsAllowProxiedAuthn", + samlIDPMetaDataOptionsSSOBinding => +"text:/samlIDPMetaDataOptions/$k2/samlIDPMetaDataOptionsSSOBinding", + samlIDPMetaDataOptionsSLOBinding => +"text:/samlIDPMetaDataOptions/$k2/samlIDPMetaDataOptionsSLOBinding", + samlIDPMetaDataOptionsResolutionRule => +"textarea:/samlIDPMetaDataOptions/$k2/samlIDPMetaDataOptionsResolutionRule", + }, } } ); @@ -875,14 +886,14 @@ sub subDefaultConf { locationRules => { default => 'deny' }, exportedHeaders => { 'Auth-User' => '$uid' }, samlIDPMetaDataXML => { {} }, - samlIDPMetaDataExportedAttributes => { 'uid' => ';0;uid;;' }, + samlIDPMetaDataExportedAttributes => { 'uid' => '0;uid;;' }, samlIDPMetaDataOptions => { - 'NameIDFormat' => '', - 'ForceAuthn' => 0, - 'AllowProxiedAuthn' => 1, - 'SSOMethod' => '', - 'SLOMethod' => '', - 'resolutionRule' => '', + 'samlIDPMetaDataOptionsNameIDFormat' => '', + 'samlIDPMetaDataOptionsForceAuthn' => '0', + 'samlIDPMetaDataOptionsAllowProxiedAuthn' => '1', + 'samlIDPMetaDataOptionsSSOBinding' => '', + 'samlIDPMetaDataOptionsSLOBinding' => '', + 'samlIDPMetaDataOptionsResolutionRule' => '', }, }; } diff --git a/modules/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/_i18n.pm b/modules/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/_i18n.pm index 254a96f90..f0933e3f3 100644 --- a/modules/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/_i18n.pm +++ b/modules/lemonldap-ng-manager/lib/Lemonldap/NG/Manager/_i18n.pm @@ -131,6 +131,13 @@ sub en { samlIDPMetaDataXML => 'Metadata XML', samlIDPMetaDataExportedAttributes => 'Exported attributes', samlIDPMetaDataOptions => 'Options', + samlIDPMetaDataOptionsNameIDFormat => 'NameID format', + samlIDPMetaDataOptionsForceAuthn => 'Force authentication', + samlIDPMetaDataOptionsAllowProxiedAuthn => + 'Allow proxied authentication', + samlIDPMetaDataOptionsSSOBinding => 'SSO binding', + samlIDPMetaDataOptionsSLOBinding => 'SLO binding', + samlIDPMetaDataOptionsResolutionRule => 'Resolution rule', samlServiceMetaData => 'SAML 2 Service', samlEntityID => 'Entity Identifier', samlOrganization => 'Organization', @@ -269,6 +276,13 @@ sub fr { samlIDPMetaDataXML => 'XML Metadata', samlIDPMetaDataExportedAttributes => 'Attributs exportés', samlIDPMetaDataOptions => 'Options', + samlIDPMetaDataOptionsNameIDFormat => 'Format NameID', + samlIDPMetaDataOptionsForceAuthn => 'Authentification forcée', + samlIDPMetaDataOptionsAllowProxiedAuthn => + 'Authentification proxy autorisée', + samlIDPMetaDataOptionsSSOBinding => 'Méthode SSO', + samlIDPMetaDataOptionsSLOBinding => 'Méthode SLO', + samlIDPMetaDataOptionsResolutionRule => 'Règle de résolution', samlServiceMetaData => 'Service SAML 2', samlEntityID => 'Identifiant d\'entité', samlOrganization => 'Organisation',