@@ -217,18 +217,20 @@ private AuthorizablesConfig getAuthorizableBeans(
217217 final List <Map <String , Object >> currentAuthorizableData = (List <Map <String , Object >>) currentMap .get (currentAuthorizableIdFromYaml );
218218
219219 if ((currentAuthorizableData != null ) && !currentAuthorizableData .isEmpty ()) {
220-
221- for (final Map <String , Object > currentPrincipalDataMap : currentAuthorizableData ) {
222- try {
223- final AuthorizableConfigBean tmpPrincipalConfigBean = getNewAuthorizableConfigBean ();
224- setupAuthorizableBean (tmpPrincipalConfigBean , currentPrincipalDataMap , currentAuthorizableIdFromYaml , isGroupSection );
225- if (authorizableValidator != null ) {
226- authorizableValidator .validate (tmpPrincipalConfigBean );
227- }
228- authorizableBeans .add (tmpPrincipalConfigBean );
229- } catch (AcConfigBeanValidationException e ) {
230- throw new AcConfigBeanValidationException ("Invalid authorizable " + currentAuthorizableIdFromYaml , e );
220+
221+ if (currentAuthorizableData .size () > 1 ) {
222+ throw new AcConfigBeanValidationException ("Invalid authorizable " + currentAuthorizableIdFromYaml +" - configuration needs to contain exactly one yaml list entry" );
223+ }
224+ try {
225+ Map <String , Object > currentPrincipalDataMap = currentAuthorizableData .get (0 );
226+ final AuthorizableConfigBean tmpPrincipalConfigBean = getNewAuthorizableConfigBean ();
227+ setupAuthorizableBean (tmpPrincipalConfigBean , currentPrincipalDataMap , currentAuthorizableIdFromYaml , isGroupSection );
228+ if (authorizableValidator != null ) {
229+ authorizableValidator .validate (tmpPrincipalConfigBean );
231230 }
231+ authorizableBeans .add (tmpPrincipalConfigBean );
232+ } catch (AcConfigBeanValidationException e ) {
233+ throw new AcConfigBeanValidationException ("Invalid authorizable " + currentAuthorizableIdFromYaml , e );
232234 }
233235 }
234236
0 commit comments