The following demo shows how to inject the Spring Security
username/password credentials from a User Provided service on PCF,
hence using the VCAP_SERVICES env variable to inject the values required
to protect the application using HTTP Basic Authentication
while running in PCF. Spring Boot automatically converts this data into a
flat set of properties so you can easily get to the data
as shown below.
The demo application can be found as follows
https://github.com/papicella/springsecurity-cf-cups
The application.yml would access the VCAP_SERVICES CF env variable using the the Spring Boot flat set of properties as shown below.
eg:
VCAP_SERVICES
System-Provided:
{
"VCAP_SERVICES": {
"user-provided": [
{
"credentials": {
"password": "myadminpassword",
"username": "myadminuser"
},
"label": "user-provided",
"name": "my-cfcups-service",
"syslog_drain_url": "",
"tags": [],
"volume_mounts": []
}
]
}
}
...
application.yml
spring:
application:
name: security-cf-cups-demo
security:
user:
name: ${vcap.services.my-cfcups-service.credentials.username:admin}
password: ${vcap.services.my-cfcups-service.credentials.password:password}
No comments:
Post a Comment