diff options
author | Vijay Venkatesh Kumar <vv770d@att.com> | 2019-04-15 19:36:07 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@onap.org> | 2019-04-15 19:36:07 +0000 |
commit | ff4bf8d97be17232187dfdbb5fc913d015b3b213 (patch) | |
tree | 7623c7de4b4d14eb21fae2ff7c5a9b34722f1571 /src/main/java/org/onap/dcae/common/configuration/CertAuth.java | |
parent | 4d4540de666c02754b4c35bb4a27a6c99c437f83 (diff) | |
parent | a6ffdd5cb52d61792dfe8e233620b34098a5fb37 (diff) |
Merge "Collector authentication enhancement"
Diffstat (limited to 'src/main/java/org/onap/dcae/common/configuration/CertAuth.java')
-rw-r--r-- | src/main/java/org/onap/dcae/common/configuration/CertAuth.java | 31 |
1 files changed, 30 insertions, 1 deletions
diff --git a/src/main/java/org/onap/dcae/common/configuration/CertAuth.java b/src/main/java/org/onap/dcae/common/configuration/CertAuth.java index 3c4fb62c..481fb5ec 100644 --- a/src/main/java/org/onap/dcae/common/configuration/CertAuth.java +++ b/src/main/java/org/onap/dcae/common/configuration/CertAuth.java @@ -21,13 +21,24 @@ package org.onap.dcae.common.configuration; +import org.onap.dcae.ApplicationException; import org.onap.dcae.ApplicationSettings; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.boot.web.server.Ssl.ClientAuth; import org.springframework.boot.web.servlet.server.ConfigurableServletWebServerFactory; +import org.springframework.context.annotation.Configuration; +import org.springframework.core.annotation.Order; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.annotation.web.builders.WebSecurity; +import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; +import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; +import org.springframework.security.web.access.intercept.FilterSecurityInterceptor; -public class CertAuth implements AuthMethod { +@Configuration +@Order(0) +@EnableWebSecurity +public class CertAuth extends WebSecurityConfigurerAdapter implements AuthMethod { private static final Logger log = LoggerFactory.getLogger(CertAuth.class); private final ConfigurableServletWebServerFactory container; @@ -39,6 +50,24 @@ public class CertAuth implements AuthMethod { } @Override + public void configure(WebSecurity web) { + web.ignoring().anyRequest(); + } + + @Override + protected void configure(HttpSecurity http) { + try { + http.authorizeRequests() + .anyRequest().authenticated().and() + .addFilterBefore(new CustomFilter(properties), FilterSecurityInterceptor.class); + + } catch (Exception ex) { + log.error("Cannot authorize request cause: ",ex); + throw new ApplicationException(ex); + } + } + + @Override public void configure() { SslContextCreator sslContextCreator = new SslContextCreator(properties); container.setSsl(sslContextCreator.httpsContextWithTlsAuthentication(ClientAuth.NEED)); |