From 8daac07f7a45e38702901252972039cf8d46fe53 Mon Sep 17 00:00:00 2001 From: Izabela Zawadzka Date: Tue, 9 Apr 2019 08:24:18 +0200 Subject: Get rid of deprecated SslFactory Change-Id: I928d6911a2516ffbfc05e9193e5d2d8467ec2545 Signed-off-by: Izabela Zawadzka Issue-ID: DCAEGEN2-1408 --- .../services/sdk/rest/services/ssl/SslFactory.java | 116 --------------------- 1 file changed, 116 deletions(-) delete mode 100644 rest-services/common-dependency/src/main/java/org/onap/dcaegen2/services/sdk/rest/services/ssl/SslFactory.java (limited to 'rest-services/common-dependency') diff --git a/rest-services/common-dependency/src/main/java/org/onap/dcaegen2/services/sdk/rest/services/ssl/SslFactory.java b/rest-services/common-dependency/src/main/java/org/onap/dcaegen2/services/sdk/rest/services/ssl/SslFactory.java deleted file mode 100644 index 92de6608..00000000 --- a/rest-services/common-dependency/src/main/java/org/onap/dcaegen2/services/sdk/rest/services/ssl/SslFactory.java +++ /dev/null @@ -1,116 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * DCAEGEN2-SERVICES-SDK - * ================================================================================ - * Copyright (C) 2018 NOKIA Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.onap.dcaegen2.services.sdk.rest.services.ssl; - -import io.netty.handler.ssl.SslContext; -import io.netty.handler.ssl.SslContextBuilder; -import io.netty.handler.ssl.util.InsecureTrustManagerFactory; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import javax.net.ssl.KeyManagerFactory; -import javax.net.ssl.SSLException; -import javax.net.ssl.TrustManagerFactory; -import java.io.FileInputStream; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.io.InputStream; -import java.nio.file.Files; -import java.nio.file.Paths; -import java.security.GeneralSecurityException; -import java.security.KeyStore; - -/** - * @deprecated org.onap.dcaegen2.services.sdk.security.ssl.SslFactory should be used instead - */ -@Deprecated -public class SslFactory { - - private static final Logger LOGGER = LoggerFactory.getLogger(SslFactory.class); - - /** - * Function for creating secure ssl context. - * - * @param keyStorePath - path to file with keystore - * @param keyStorePasswordPath - path to file with keystore password - * @param trustStorePath - path to file with truststore - * @param trustStorePasswordPath - path to file with truststore password - * @return configured ssl context - */ - public SslContext createSecureContext(String keyStorePath, - String keyStorePasswordPath, - String trustStorePath, - String trustStorePasswordPath) throws SSLException { - LOGGER.info("Creating secure ssl context for: {} {}", keyStorePath, trustStorePath); - try { - return SslContextBuilder - .forClient() - .keyManager(keyManagerFactory(keyStorePath, loadPasswordFromFile(keyStorePasswordPath))) - .trustManager(trustManagerFactory(trustStorePath, loadPasswordFromFile(trustStorePasswordPath))) - .build(); - } catch (GeneralSecurityException | IOException ex) { - throw new SSLException(ex); - } - } - - /** - * Function for creating insecure ssl context. - * - * @return configured insecure ssl context - */ - public SslContext createInsecureContext() throws SSLException { - LOGGER.info("Creating insecure ssl context"); - return SslContextBuilder - .forClient() - .trustManager(InsecureTrustManagerFactory.INSTANCE) - .build(); - } - - private KeyManagerFactory keyManagerFactory(String path, String password) - throws GeneralSecurityException, IOException { - KeyManagerFactory kmf = KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm()); - kmf.init(loadKeyStoreFromFile(path, password), - password.toCharArray()); - return kmf; - } - - private TrustManagerFactory trustManagerFactory(String path, String password) - throws GeneralSecurityException, IOException { - TrustManagerFactory tmf = TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm()); - tmf.init(loadKeyStoreFromFile(path, password)); - return tmf; - } - - private KeyStore loadKeyStoreFromFile(String path, String keyStorePassword) - throws GeneralSecurityException, IOException { - KeyStore ks = KeyStore.getInstance("jks"); - ks.load(getResource(path), keyStorePassword.toCharArray()); - return ks; - } - - private InputStream getResource(String path) throws FileNotFoundException { - return new FileInputStream(path); - } - - private String loadPasswordFromFile(String path) throws IOException { - return new String(Files.readAllBytes(Paths.get(path))); - } -} -- cgit 1.2.3-korg