1
1
package no.nav.emottak.crypto
2
2
3
- import kotlinx.serialization.json.Json
4
- import kotlinx.serialization.json.jsonObject
5
- import kotlinx.serialization.json.jsonPrimitive
6
- import no.nav.emottak.vault.VaultUtil
3
+ import no.nav.emottak.utils.vault.VaultUtil
4
+ import no.nav.emottak.utils.vault.parseVaultJsonObject
7
5
import java.io.InputStream
8
6
import kotlin.io.encoding.Base64
9
7
import kotlin.io.encoding.ExperimentalEncodingApi
@@ -14,15 +12,12 @@ class VaultKeyStoreConfig(
14
12
keyStoreFileResource : String ,
15
13
keyStorePassResource : String
16
14
) : KeyStoreConfig {
17
- override val keyStoreFile: InputStream = getDecodedVaultKeyStoreFile(keyStoreVaultPath, keyStoreFileResource)
18
- override val keyStorePass: CharArray = VaultUtil .readVaultPathResource(keyStoreVaultPath, keyStorePassResource).parseVaultJsonObject(" password" ).toCharArray()
19
- override val keyStoreType: String = VaultUtil .readVaultPathResource(keyStoreVaultPath, keyStorePassResource).parseVaultJsonObject(" type" )
15
+ private val keystoreVaultMap: Map <String , String > = VaultUtil .readVaultPathData(keyStoreVaultPath)
16
+ override val keyStoreFile: InputStream = keystoreVaultMap.getDecodedVaultKeyStoreFile(keyStoreFileResource)
17
+ override val keyStorePass: CharArray = keystoreVaultMap[keyStorePassResource]!! .parseVaultJsonObject(" password" ).toCharArray()
18
+ override val keyStoreType: String = keystoreVaultMap[keyStorePassResource]!! .parseVaultJsonObject(" type" )
20
19
21
20
@OptIn(ExperimentalEncodingApi ::class )
22
- private fun getDecodedVaultKeyStoreFile ( keyStoreVaultPath : String , keyStoreFileResource : String ): InputStream =
23
- VaultUtil .readVaultPathResource(keyStoreVaultPath, keyStoreFileResource) .byteInputStream().decodingWith(Base64 .Mime )
21
+ private fun Map < String , String >. getDecodedVaultKeyStoreFile ( keyStoreFileResource : String ): InputStream =
22
+ this [ keyStoreFileResource] !! .byteInputStream().decodingWith(Base64 .Mime )
24
23
}
25
-
26
- fun String.parseVaultJsonObject (field : String ) = Json .parseToJsonElement(
27
- this
28
- ).jsonObject[field]!! .jsonPrimitive.content
0 commit comments