Merge "Added support for using oauth token for Kafka"
[nonrtric/plt/ranpm.git] / datafilecollector / src / main / java / org / oran / datafile / commons / SecurityUtil.java
1 /*-
2  * ============LICENSE_START======================================================================
3  * Copyright (C) 2021 Nokia. All rights reserved.
4  * ===============================================================================================
5  * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
6  * in compliance with the License. You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software distributed under the License
11  * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
12  * or implied. See the License for the specific language governing permissions and limitations under
13  * the License.
14  * ============LICENSE_END========================================================================
15  */
16 package org.oran.datafile.commons;
17
18 import java.io.IOException;
19 import java.nio.file.Files;
20 import java.nio.file.Paths;
21
22 import org.slf4j.Logger;
23 import org.slf4j.LoggerFactory;
24
25 /**
26  * Utility class containing functions used for certificates configuration
27  */
28 public final class SecurityUtil {
29     private SecurityUtil() {
30     }
31
32     private static final Logger logger = LoggerFactory.getLogger(SecurityUtil.class);
33
34     public static String getKeystorePasswordFromFile(String passwordPath) {
35         return getPasswordFromFile(passwordPath, "Keystore");
36     }
37
38     public static String getTruststorePasswordFromFile(String passwordPath) {
39         return getPasswordFromFile(passwordPath, "Truststore");
40     }
41
42     public static String getPasswordFromFile(String passwordPath, String element) {
43         try {
44             return new String(Files.readAllBytes(Paths.get(passwordPath)));
45         } catch (IOException e) {
46             logger.error("{} password file at path: {} cannot be opened ", element, passwordPath);
47         }
48         return "";
49     }
50 }