diff options
Diffstat (limited to 'hv-collector-domain')
-rw-r--r-- | hv-collector-domain/src/main/kotlin/org/onap/dcae/collectors/veshv/domain/SecurityConfiguration.kt | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/hv-collector-domain/src/main/kotlin/org/onap/dcae/collectors/veshv/domain/SecurityConfiguration.kt b/hv-collector-domain/src/main/kotlin/org/onap/dcae/collectors/veshv/domain/SecurityConfiguration.kt index e409eb7a..7f566a6d 100644 --- a/hv-collector-domain/src/main/kotlin/org/onap/dcae/collectors/veshv/domain/SecurityConfiguration.kt +++ b/hv-collector-domain/src/main/kotlin/org/onap/dcae/collectors/veshv/domain/SecurityConfiguration.kt @@ -19,6 +19,8 @@ */ package org.onap.dcae.collectors.veshv.domain +import arrow.core.Option +import java.io.InputStream import java.nio.file.Path /** @@ -27,6 +29,22 @@ import java.nio.file.Path */ data class SecurityConfiguration( val sslDisable: Boolean = false, - val privateKey: Path, - val cert: Path, - val trustedCert: Path) + val keys: Option<SslKeys>) + +sealed class SslKeys + +data class OpenSslKeys(val privateKey: Path, + val cert: Path, + val trustedCert: Path) : SslKeys() + +data class JdkKeys(val keyStore: StreamProvider, + val keyStorePassword: CharArray, + val trustStore: StreamProvider, + val trustStorePassword: CharArray) : SslKeys() { + fun forgetPasswords() { + keyStorePassword.fill('x') + trustStorePassword.fill('x') + } +} + +typealias StreamProvider = () -> InputStream |