diff options
author | Michael Reece <michaere@amdocs.com> | 2018-08-23 15:53:04 +0100 |
---|---|---|
committer | Michael Reece <michaere@amdocs.com> | 2018-08-23 15:53:04 +0100 |
commit | 4a9171d7b444042e78cacd558dac5413c478d8a2 (patch) | |
tree | 73f937e090bd7161820b1f46b52d0178aff98ac0 /champ-service/src | |
parent | efea6a331525b6b1a1ef21eeca3ccd8fa86a36c5 (diff) |
Update application class to handle https
Provide a secure connection to the event client for async flow
Issue-ID: AAI-1527
Change-Id: Iddbf87f78c3712688dff54fa796df72fee950ac5
Signed-off-by: Michael Reece <michaere@amdocs.com>
Diffstat (limited to 'champ-service/src')
-rw-r--r-- | champ-service/src/main/java/org/onap/champ/ChampApplication.java | 24 | ||||
-rw-r--r-- | champ-service/src/main/resources/application.properties | 1 |
2 files changed, 24 insertions, 1 deletions
diff --git a/champ-service/src/main/java/org/onap/champ/ChampApplication.java b/champ-service/src/main/java/org/onap/champ/ChampApplication.java index bc74469..06f3ec7 100644 --- a/champ-service/src/main/java/org/onap/champ/ChampApplication.java +++ b/champ-service/src/main/java/org/onap/champ/ChampApplication.java @@ -22,16 +22,22 @@ package org.onap.champ; import java.util.HashMap; import java.util.Map; +import javax.annotation.PostConstruct; import org.eclipse.jetty.util.security.Password; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.web.support.SpringBootServletInitializer; import org.springframework.context.annotation.ImportResource; +import org.springframework.core.env.Environment; @SpringBootApplication @ImportResource({"file:${SERVICE_BEANS}/*.xml"}) public class ChampApplication extends SpringBootServletInitializer { + @Autowired + private Environment env; + public static void main(String[] args) { String keyStorePassword = System.getProperty("KEY_STORE_PASSWORD"); if (keyStorePassword == null || keyStorePassword.isEmpty()) { @@ -43,4 +49,22 @@ public class ChampApplication extends SpringBootServletInitializer { new ChampApplication().configure(new SpringApplicationBuilder(ChampApplication.class).properties(props)) .run(args); } + + /** + * Set required trust store system properties using values from application.properties + */ + @PostConstruct + public void setSystemProperties() { + String trustStorePath = env.getProperty("server.ssl.key-store"); + if (trustStorePath != null) { + String trustStorePassword = env.getProperty("server.ssl.key-store-password"); + + if (trustStorePassword != null) { + System.setProperty("javax.net.ssl.trustStore", trustStorePath); + System.setProperty("javax.net.ssl.trustStorePassword", trustStorePassword); + } else { + throw new IllegalArgumentException("Env property server.ssl.key-store-password not set"); + } + } + } } diff --git a/champ-service/src/main/resources/application.properties b/champ-service/src/main/resources/application.properties index 07d7e08..e08e249 100644 --- a/champ-service/src/main/resources/application.properties +++ b/champ-service/src/main/resources/application.properties @@ -6,6 +6,5 @@ server.ssl.key-store=${CONFIG_HOME}/auth/tomcat_keystore server.ssl.key-store-type=JKS server.ssl.enabled=true server.ssl.client-auth=need -server.ssl.key-store-password=${KEY_STORE_PASSWORD} logging.config=classpath:logback.xml |