From 3202951f48898f83d315e8ecab50c171e6ed71df Mon Sep 17 00:00:00 2001 From: OZGCloud <ozgcloud@mgm-tp.com> Date: Fri, 26 May 2023 12:51:07 +0200 Subject: [PATCH] OZG-3322 load cert file only if exists --- .../kop/user/MongodbCertificateLoader.java | 24 +++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/user-manager-server/src/main/java/de/itvsh/kop/user/MongodbCertificateLoader.java b/user-manager-server/src/main/java/de/itvsh/kop/user/MongodbCertificateLoader.java index 6ae4f5ce..e19bfa17 100644 --- a/user-manager-server/src/main/java/de/itvsh/kop/user/MongodbCertificateLoader.java +++ b/user-manager-server/src/main/java/de/itvsh/kop/user/MongodbCertificateLoader.java @@ -1,7 +1,10 @@ package de.itvsh.kop.user; import java.io.IOException; +import java.io.InputStream; import java.nio.charset.Charset; +import java.nio.file.Files; +import java.nio.file.Paths; import java.security.KeyStore; import java.security.KeyStoreException; import java.security.NoSuchAlgorithmException; @@ -13,6 +16,7 @@ import javax.enterprise.event.Observes; import org.apache.commons.io.IOUtils; import org.eclipse.microprofile.config.inject.ConfigProperty; +import de.itvsh.kop.common.errorhandling.TechnicalException; import io.quarkus.runtime.StartupEvent; @ApplicationScoped @@ -22,9 +26,21 @@ class MongodbCertificateLoader { String mongoDbCaCert; void onStart(@Observes StartupEvent ev) throws KeyStoreException, CertificateException, IOException, NoSuchAlgorithmException { - System.out.println("loading cert..."); - KeyStore keystore = KeyStore.getInstance("pkcs12"); - keystore.load(IOUtils.toInputStream(mongoDbCaCert, Charset.defaultCharset()), null); - System.out.println("cert loaded"); + if(Files.exists(Paths.get(mongoDbCaCert))) { + System.out.println("loading cert..."); + KeyStore keystore = KeyStore.getInstance("pkcs12"); + keystore.load(loadCaCrt(), null); + System.out.println("cert loaded"); + } else { + System.out.println("cert file does not exists"); + } + } + + InputStream loadCaCrt() { + try { + return Files.newInputStream(Paths.get(mongoDbCaCert)); + } catch (IOException e) { + throw new TechnicalException("Error loading caCert", e); + } } } -- GitLab