pull/2565/merge
Stephane Nicoll 10 years ago
parent 205c86f54c
commit fd5d6ef303

@ -1,5 +1,5 @@
/*
* Copyright 2012-2014 the original author or authors.
* Copyright 2012-2015 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -26,6 +26,7 @@ import org.springframework.util.Assert;
* @author Christian Dupuis
* @author Toshiaki Maki
* @author Phillip Webb
* @author Nicolas Lejeune
*/
class Sanitizer {
@ -34,7 +35,7 @@ class Sanitizer {
private Pattern[] keysToSanitize;
public Sanitizer() {
setKeysToSanitize(new String[] { "password", "secret", "key", "vcap_services", ".*credentials.*" });
setKeysToSanitize("password", "secret", "key", ".*credentials.*", "vcap_services");
}
/**

@ -37,6 +37,8 @@ import static org.junit.Assert.assertThat;
*
* @author Phillip Webb
* @author Christian Dupuis
* @author Nicolas Lejeune
* @author Stephane Nicoll
*/
public class EnvironmentEndpointTests extends AbstractEndpointTests<EnvironmentEndpoint> {
@ -69,7 +71,8 @@ public class EnvironmentEndpointTests extends AbstractEndpointTests<EnvironmentE
System.setProperty("dbPassword", "123456");
System.setProperty("apiKey", "123456");
System.setProperty("mySecret", "123456");
System.setProperty("vcap_services", "123456");
System.setProperty("myCredentials", "123456");
System.setProperty("VCAP_SERVICES", "123456");
EnvironmentEndpoint report = getEndpointBean();
Map<String, Object> env = report.invoke();
assertEquals("******",
@ -79,26 +82,28 @@ public class EnvironmentEndpointTests extends AbstractEndpointTests<EnvironmentE
assertEquals("******",
((Map<String, Object>) env.get("systemProperties")).get("mySecret"));
assertEquals("******",
((Map<String, Object>) env.get("systemProperties")).get("vcap_services"));
((Map<String, Object>) env.get("systemProperties")).get("myCredentials"));
assertEquals("******",
((Map<String, Object>) env.get("systemProperties")).get("VCAP_SERVICES"));
}
@SuppressWarnings("unchecked")
@Test
public void testKeySanitizationCredentialsPattern() throws Exception {
System.setProperty("vcap.services.amqp-free.credentials.uri", "123456");
System.setProperty("my.services.amqp-free.credentials.uri", "123456");
System.setProperty("credentials.http_api_uri", "123456");
System.setProperty("vcap.services.cleardb-free.credentials", "123456");
System.setProperty("vcap.mycredentials.uri", "123456");
System.setProperty("my.services.cleardb-free.credentials", "123456");
System.setProperty("foo.mycredentials.uri", "123456");
EnvironmentEndpoint report = getEndpointBean();
Map<String, Object> env = report.invoke();
assertEquals("******",
((Map<String, Object>) env.get("systemProperties")).get("vcap.services.amqp-free.credentials.uri"));
((Map<String, Object>) env.get("systemProperties")).get("my.services.amqp-free.credentials.uri"));
assertEquals("******",
((Map<String, Object>) env.get("systemProperties")).get("credentials.http_api_uri"));
assertEquals("******",
((Map<String, Object>) env.get("systemProperties")).get("vcap.services.cleardb-free.credentials"));
((Map<String, Object>) env.get("systemProperties")).get("my.services.cleardb-free.credentials"));
assertEquals("******",
((Map<String, Object>) env.get("systemProperties")).get("vcap.mycredentials.uri"));
((Map<String, Object>) env.get("systemProperties")).get("foo.mycredentials.uri"));
}

@ -607,7 +607,7 @@ content into your application; rather pick only the properties that you need.
endpoints.configprops.id=configprops
endpoints.configprops.sensitive=true
endpoints.configprops.enabled=true
endpoints.configprops.keys-to-sanitize=password,secret,key # suffix or regex
endpoints.configprops.keys-to-sanitize=password,secret,key,.*credentials.*,vcap_services # suffix or regex
endpoints.dump.id=dump
endpoints.dump.sensitive=true
endpoints.dump.enabled=true
@ -615,7 +615,7 @@ content into your application; rather pick only the properties that you need.
endpoints.env.id=env
endpoints.env.sensitive=true
endpoints.env.enabled=true
endpoints.env.keys-to-sanitize=password,secret,key # suffix or regex
endpoints.env.keys-to-sanitize=password,secret,key,.*credentials.*,vcap_services # suffix or regex
endpoints.health.id=health
endpoints.health.sensitive=true
endpoints.health.enabled=true

Loading…
Cancel
Save