Author: kwall
Date: Tue Feb 24 13:12:57 2015
New Revision: 1661933

URL: http://svn.apache.org/r1661933
Log:
QPID-6364: [Java Broker] Keystore data url must be a secure attribute

Merged from trunk with command:

svn merge -c 1661165  https://svn.apache.org/repos/asf/qpid/trunk


Modified:
    qpid/branches/0.32/   (props changed)
    qpid/branches/0.32/qpid/   (props changed)
    qpid/branches/0.32/qpid/java/   (props changed)
    
qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java
    
qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectAttribute.java
    
qpid/branches/0.32/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverter.java
    
qpid/branches/0.32/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverterTest.java

Propchange: qpid/branches/0.32/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Feb 24 13:12:57 2015
@@ -3,4 +3,4 @@
 /qpid/branches/java-broker-bdb-ha2:1576683-1583556
 /qpid/branches/java-network-refactor:805429-825319
 /qpid/branches/mcpierce-QPID-4719:1477004-1477093
-/qpid/trunk:1661162,1661530
+/qpid/trunk:1661162,1661165,1661530

Propchange: qpid/branches/0.32/qpid/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Feb 24 13:12:57 2015
@@ -6,4 +6,4 @@
 /qpid/branches/mcpierce-QPID-4719/qpid:1477004-1477093
 /qpid/branches/qpid-2935/qpid:1061302-1072333
 /qpid/branches/qpid-3346/qpid:1144319-1179855
-/qpid/trunk/qpid:1661079,1661142,1661162,1661212,1661364,1661368,1661373,1661530
+/qpid/trunk/qpid:1661079,1661142,1661162,1661165,1661212,1661364,1661368,1661373,1661530

Propchange: qpid/branches/0.32/qpid/java/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Feb 24 13:12:57 2015
@@ -9,4 +9,4 @@
 /qpid/branches/java-network-refactor/qpid/java:805429-821809
 /qpid/branches/qpid-2935/qpid/java:1061302-1072333
 /qpid/trunk/qpid:796646-796653
-/qpid/trunk/qpid/java:1661079,1661142,1661162,1661212,1661364,1661368,1661373,1661530
+/qpid/trunk/qpid/java:1661079,1661142,1661162,1661165,1661212,1661364,1661368,1661373,1661530

Modified: 
qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java
URL: 
http://svn.apache.org/viewvc/qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java?rev=1661933&r1=1661932&r2=1661933&view=diff
==============================================================================
--- 
qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java
 (original)
+++ 
qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java
 Tue Feb 24 13:12:57 2015
@@ -44,7 +44,6 @@ import java.util.UUID;
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.concurrent.CopyOnWriteArrayList;
 import java.util.concurrent.atomic.AtomicReference;
-import java.util.regex.Pattern;
 
 import javax.security.auth.Subject;
 
@@ -1137,9 +1136,7 @@ public abstract class AbstractConfigured
         if(attr != null && (attr.isAutomated() || attr.isDerived()))
         {
             Object value = attr.getValue((X)this);
-            Pattern secureValueFilter = attr.getSecureValueFilter();
-            if(value != null && attr.isSecure() && 
!SecurityManager.isSystemProcess() &&
-                    (secureValueFilter == null || 
secureValueFilter.matcher(value.toString()).matches()))
+            if(value != null && !SecurityManager.isSystemProcess() && 
attr.isSecureValue(value))
             {
                 return SECURE_VALUES.get(value.getClass());
             }

Modified: 
qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectAttribute.java
URL: 
http://svn.apache.org/viewvc/qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectAttribute.java?rev=1661933&r1=1661932&r2=1661933&view=diff
==============================================================================
--- 
qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectAttribute.java
 (original)
+++ 
qpid/branches/0.32/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectAttribute.java
 Tue Feb 24 13:12:57 2015
@@ -52,6 +52,23 @@ public abstract class ConfiguredObjectAt
 
     public abstract Pattern getSecureValueFilter();
 
+    public boolean isSecureValue(Object value)
+    {
+        if (isSecure())
+        {
+            Pattern filter = getSecureValueFilter();
+            if (filter == null)
+            {
+                return  true;
+            }
+            else
+            {
+                return filter.matcher(String.valueOf(value)).matches();
+            }
+        }
+        return false;
+    }
+
     public T convert(final Object value, C object)
     {
         final AttributeValueConverter<T> converter = getConverter();

Modified: 
qpid/branches/0.32/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverter.java
URL: 
http://svn.apache.org/viewvc/qpid/branches/0.32/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverter.java?rev=1661933&r1=1661932&r2=1661933&view=diff
==============================================================================
--- 
qpid/branches/0.32/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverter.java
 (original)
+++ 
qpid/branches/0.32/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverter.java
 Tue Feb 24 13:12:57 2015
@@ -162,7 +162,7 @@ public class ConfiguredObjectToMapConver
                             .getAttributeTypes(confObject.getClass())
                             .get(name);
 
-                    if (attribute.isSecure() && !(isSecureTransport && 
extractAsConfig))
+                    if (attribute.isSecureValue(value) && !(isSecureTransport 
&& extractAsConfig))
                     {
                         // do not expose actual secure attribute value
                         // getAttribute() returns encoded value

Modified: 
qpid/branches/0.32/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverterTest.java
URL: 
http://svn.apache.org/viewvc/qpid/branches/0.32/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverterTest.java?rev=1661933&r1=1661932&r2=1661933&view=diff
==============================================================================
--- 
qpid/branches/0.32/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverterTest.java
 (original)
+++ 
qpid/branches/0.32/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/servlet/rest/ConfiguredObjectToMapConverterTest.java
 Tue Feb 24 13:12:57 2015
@@ -313,6 +313,7 @@ public class ConfiguredObjectToMapConver
         Map<String, ConfiguredObjectAttribute<?, ?>> attributeTypes = 
typeRegistry.getAttributeTypes(TestChild.class);
         ConfiguredObjectAttribute secureAttribute = 
mock(ConfiguredObjectAttribute.class);
         when(secureAttribute.isSecure()).thenReturn(true);
+        when(secureAttribute.isSecureValue(any())).thenReturn(true);
         
when(attributeTypes.get(eq("secureAttribute"))).thenReturn(secureAttribute);
 
         TestChild mockChild = mock(TestChild.class);



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org
For additional commands, e-mail: commits-h...@qpid.apache.org

Reply via email to