From f1904562c583af4368db3b82b7215af835b7e260 Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Tue, 4 Dec 2012 17:41:41 +0000 Subject: [PATCH] Make system authentication more configurable git-svn-id: https://svn.argeo.org/commons/trunk@5894 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc --- ...thenticatedApplicationContextInitialization.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/security/runtime/org.argeo.security.core/src/main/java/org/argeo/security/core/AuthenticatedApplicationContextInitialization.java b/security/runtime/org.argeo.security.core/src/main/java/org/argeo/security/core/AuthenticatedApplicationContextInitialization.java index 7afc3c179..97dd6cae0 100644 --- a/security/runtime/org.argeo.security.core/src/main/java/org/argeo/security/core/AuthenticatedApplicationContextInitialization.java +++ b/security/runtime/org.argeo.security.core/src/main/java/org/argeo/security/core/AuthenticatedApplicationContextInitialization.java @@ -16,6 +16,8 @@ package org.argeo.security.core; import java.beans.PropertyDescriptor; +import java.util.ArrayList; +import java.util.List; import org.springframework.beans.BeansException; import org.springframework.beans.PropertyValues; @@ -33,6 +35,8 @@ public class AuthenticatedApplicationContextInitialization extends ApplicationListener { // private Log log = LogFactory // .getLog(AuthenticatedApplicationContextInitialization.class); + /** If non empty, restricts to these beans */ + private List beanNames = new ArrayList(); @SuppressWarnings("rawtypes") public Object postProcessBeforeInstantiation(Class beanClass, @@ -41,7 +45,10 @@ public class AuthenticatedApplicationContextInitialization extends // we will deauthenticate only when the application context has been // refreshed in order to be able to deal with factory beans has well if (!isAuthenticatedBySelf()) { - authenticateAsSystem(); + if (beanNames.size() == 0) + authenticateAsSystem(); + else if (beanNames.contains(beanName)) + authenticateAsSystem(); } return null; } @@ -81,4 +88,8 @@ public class AuthenticatedApplicationContextInitialization extends } } + public void setBeanNames(List beanNames) { + this.beanNames = beanNames; + } + } -- 2.30.2