Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in / Register
Toggle navigation
S
spring-boot
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
DEMO
spring-boot
Commits
e244d75b
Commit
e244d75b
authored
Sep 06, 2017
by
Stephane Nicoll
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Restore `endpoints.env.keys-to-sanitize` binding
Closes gh-10174
parent
1cf7c32a
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
37 additions
and
0 deletions
+37
-0
EnvironmentEndpoint.java
...gframework/boot/actuate/endpoint/EnvironmentEndpoint.java
+2
-0
EnvironmentEndpointTests.java
...ework/boot/actuate/endpoint/EnvironmentEndpointTests.java
+35
-0
No files found.
spring-boot-actuator/src/main/java/org/springframework/boot/actuate/endpoint/EnvironmentEndpoint.java
View file @
e244d75b
...
@@ -27,6 +27,7 @@ import java.util.stream.Stream;
...
@@ -27,6 +27,7 @@ import java.util.stream.Stream;
import
org.springframework.boot.actuate.endpoint.EnvironmentEndpoint.EnvironmentDescriptor.PropertySourceDescriptor
;
import
org.springframework.boot.actuate.endpoint.EnvironmentEndpoint.EnvironmentDescriptor.PropertySourceDescriptor
;
import
org.springframework.boot.actuate.endpoint.EnvironmentEndpoint.EnvironmentDescriptor.PropertySourceDescriptor.PropertyValueDescriptor
;
import
org.springframework.boot.actuate.endpoint.EnvironmentEndpoint.EnvironmentDescriptor.PropertySourceDescriptor.PropertyValueDescriptor
;
import
org.springframework.boot.context.properties.ConfigurationProperties
;
import
org.springframework.boot.endpoint.Endpoint
;
import
org.springframework.boot.endpoint.Endpoint
;
import
org.springframework.boot.endpoint.ReadOperation
;
import
org.springframework.boot.endpoint.ReadOperation
;
import
org.springframework.boot.endpoint.Selector
;
import
org.springframework.boot.endpoint.Selector
;
...
@@ -54,6 +55,7 @@ import org.springframework.web.bind.annotation.ResponseStatus;
...
@@ -54,6 +55,7 @@ import org.springframework.web.bind.annotation.ResponseStatus;
* @author Madhura Bhave
* @author Madhura Bhave
*/
*/
@Endpoint
(
id
=
"env"
)
@Endpoint
(
id
=
"env"
)
@ConfigurationProperties
(
"endpoints.env"
)
public
class
EnvironmentEndpoint
{
public
class
EnvironmentEndpoint
{
private
final
Sanitizer
sanitizer
=
new
Sanitizer
();
private
final
Sanitizer
sanitizer
=
new
Sanitizer
();
...
...
spring-boot-actuator/src/test/java/org/springframework/boot/actuate/endpoint/EnvironmentEndpointTests.java
View file @
e244d75b
...
@@ -26,8 +26,13 @@ import org.junit.Test;
...
@@ -26,8 +26,13 @@ import org.junit.Test;
import
org.springframework.boot.actuate.endpoint.EnvironmentEndpoint.EnvironmentDescriptor
;
import
org.springframework.boot.actuate.endpoint.EnvironmentEndpoint.EnvironmentDescriptor
;
import
org.springframework.boot.actuate.endpoint.EnvironmentEndpoint.EnvironmentDescriptor.PropertySourceDescriptor
;
import
org.springframework.boot.actuate.endpoint.EnvironmentEndpoint.EnvironmentDescriptor.PropertySourceDescriptor
;
import
org.springframework.boot.actuate.endpoint.EnvironmentEndpoint.EnvironmentDescriptor.PropertySourceDescriptor.PropertyValueDescriptor
;
import
org.springframework.boot.actuate.endpoint.EnvironmentEndpoint.EnvironmentDescriptor.PropertySourceDescriptor.PropertyValueDescriptor
;
import
org.springframework.boot.context.properties.EnableConfigurationProperties
;
import
org.springframework.boot.test.context.runner.ApplicationContextRunner
;
import
org.springframework.boot.test.util.TestPropertyValues
;
import
org.springframework.boot.test.util.TestPropertyValues
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.core.env.CompositePropertySource
;
import
org.springframework.core.env.CompositePropertySource
;
import
org.springframework.core.env.Environment
;
import
org.springframework.core.env.MapPropertySource
;
import
org.springframework.core.env.MapPropertySource
;
import
org.springframework.core.env.MutablePropertySources
;
import
org.springframework.core.env.MutablePropertySources
;
import
org.springframework.core.env.StandardEnvironment
;
import
org.springframework.core.env.StandardEnvironment
;
...
@@ -147,6 +152,23 @@ public class EnvironmentEndpointTests {
...
@@ -147,6 +152,23 @@ public class EnvironmentEndpointTests {
clearSystemProperties
(
"dbPassword"
,
"apiKey"
);
clearSystemProperties
(
"dbPassword"
,
"apiKey"
);
}
}
@Test
public
void
keysToSanitizeCanBeConfiguredViaTheEnvironment
()
throws
Exception
{
ApplicationContextRunner
tester
=
new
ApplicationContextRunner
()
.
withSystemProperties
(
"dbPassword=123456"
,
"apiKey=123456"
)
.
withPropertyValues
(
"endpoints.env.keys-to-sanitize=.*pass.*"
)
.
withUserConfiguration
(
Config
.
class
);
tester
.
run
((
context
)
->
{
EnvironmentEndpoint
endpoint
=
context
.
getBean
(
EnvironmentEndpoint
.
class
);
EnvironmentDescriptor
env
=
endpoint
.
environment
(
null
);
Map
<
String
,
PropertyValueDescriptor
>
systemProperties
=
getSource
(
"systemProperties"
,
env
).
getProperties
();
assertThat
(
systemProperties
.
get
(
"dbPassword"
).
getValue
()).
isEqualTo
(
"******"
);
assertThat
(
systemProperties
.
get
(
"apiKey"
).
getValue
()).
isEqualTo
(
"123456"
);
});
}
@Test
@Test
public
void
propertyWithPlaceholderResolved
()
{
public
void
propertyWithPlaceholderResolved
()
{
StandardEnvironment
environment
=
new
StandardEnvironment
();
StandardEnvironment
environment
=
new
StandardEnvironment
();
...
@@ -220,4 +242,17 @@ public class EnvironmentEndpointTests {
...
@@ -220,4 +242,17 @@ public class EnvironmentEndpointTests {
.
filter
((
source
)
->
name
.
equals
(
source
.
getName
())).
findFirst
().
get
();
.
filter
((
source
)
->
name
.
equals
(
source
.
getName
())).
findFirst
().
get
();
}
}
@Configuration
@EnableConfigurationProperties
static
class
Config
{
@Bean
public
EnvironmentEndpoint
environmentEndpoint
(
Environment
environment
)
{
return
new
EnvironmentEndpoint
(
environment
);
}
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment