From: Zlatko Murgoski Date: Thu, 13 Dec 2018 13:08:41 +0000 (+0100) Subject: Remove clear text password X-Git-Tag: 1.4.4~19^2 X-Git-Url: https://gerrit.onap.org/r/gitweb?a=commitdiff_plain;h=039595ca28f6dee552bab00bd1df167c0ea97ae3;p=dcaegen2%2Fcollectors%2Fves.git Remove clear text password Add common library to hash Issue-ID: DCAEGEN2-978 Change-Id: Ieb20f6a28aea3b9e8322df7b65b6441e12d4627a Signed-off-by: Zlatko Murgoski --- diff --git a/README.md b/README.md index f77ca227..64664faa 100644 --- a/README.md +++ b/README.md @@ -31,10 +31,15 @@ docker-compose up ### Generate auth credential -Util "crypt_password.py" to generate new cryptographic password is stored in dcaegen2/sdk +Library to generate new cryptographic password is stored in dcaegen2/sdk -"security/crypt-password" +or download artifact from: + +https://nexus.onap.org/#nexus-search;quick~crypt-password + +How to use: ``` -python crypt_password.py -p TestPassword +java -jar crypt-password-.jar password_to_crypt ``` ### Environment variables in Docker Container diff --git a/pom.xml b/pom.xml index eeaa6b9d..d1132c7b 100644 --- a/pom.xml +++ b/pom.xml @@ -462,6 +462,11 @@ limitations under the License. 2.1.0.RELEASE test + + org.onap.dcaegen2.services.sdk.security.crypt + crypt-password + 1.0.0-SNAPSHOT + diff --git a/src/main/java/org/onap/dcae/restapi/ApiAuthInterceptor.java b/src/main/java/org/onap/dcae/restapi/ApiAuthInterceptor.java index 6b5a64aa..3b76ae46 100644 --- a/src/main/java/org/onap/dcae/restapi/ApiAuthInterceptor.java +++ b/src/main/java/org/onap/dcae/restapi/ApiAuthInterceptor.java @@ -25,15 +25,15 @@ import java.util.Base64; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.onap.dcae.ApplicationSettings; +import org.onap.dcaegen2.services.sdk.security.CryptPassword; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.web.servlet.handler.HandlerInterceptorAdapter; final class ApiAuthInterceptor extends HandlerInterceptorAdapter { private static final Logger LOG = LoggerFactory.getLogger(ApiAuthInterceptor.class); - private final BCryptPasswordEncoder passwordEncoder = new BCryptPasswordEncoder(); + private final CryptPassword cryptPassword = new CryptPassword(); private final ApplicationSettings applicationSettings; private Logger errorLog; @@ -66,7 +66,7 @@ final class ApiAuthInterceptor extends HandlerInterceptorAdapter { String providedPassword = decodedData.split(":")[1].trim(); Option maybeSavedPassword = applicationSettings.validAuthorizationCredentials().get(providedUser); boolean userRegistered = maybeSavedPassword.isDefined(); - return userRegistered && passwordEncoder.matches(providedPassword,maybeSavedPassword.get()); + return userRegistered && cryptPassword.matches(providedPassword,maybeSavedPassword.get()); } catch (Exception e) { LOG.warn(String.format("Could not check if user is authorized (header: '%s')), probably malformed header.", authorizationHeader), e);