Skip to content

Commit

Permalink
Merge pull request #53 from oslokommune/stotte_p12_filer
Browse files Browse the repository at this point in the history
Mulighet for å støtte p12 versjon på keystore
  • Loading branch information
hegepege authored Oct 10, 2022
2 parents ff4f0dc + 1be2e44 commit d09ad5b
Show file tree
Hide file tree
Showing 4 changed files with 19 additions and 9 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,5 @@

# Ignore Gradle build output directory
build

.idea/
2 changes: 1 addition & 1 deletion lib/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ publishing {
create<MavenPublication>("maven") {
groupId = "no.kommune.oslo.automatiserteprosesser"
artifactId = "maskinporten-klient"
version = "1.2"
version = "1.3"

from(components["java"])
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,8 @@ class MaskinportenKonfigurasjon(val issuer : String,
val keystoreFilepath : String,
val keystorePassword : String,
val keystoreAlias : String,
val keystoreAliasPassword : String
val keystoreAliasPassword : String,
val keystoreType: KeystoreType = KeystoreType.JKS

) {

Expand Down Expand Up @@ -52,7 +53,7 @@ class MaskinportenKonfigurasjon(val issuer : String,
private fun getLoadedKeystore(): KeyStore {
try {
val inputStream: InputStream = File(keystoreFilepath).inputStream()
val keyStore = KeyStore.getInstance("JKS")
val keyStore = KeyStore.getInstance(keystoreType.storeValue)
keyStore.load(inputStream, keystorePassword.toCharArray())
return keyStore
} catch (ex: Exception){
Expand All @@ -76,3 +77,7 @@ class MaskinportenKonfigurasjon(val issuer : String,

}

enum class KeystoreType(val storeValue: String) {
JKS("JKS"),
P12("pkcs12")
}
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,8 @@ class MaskinportenJWTGeneratorTest {
MaskinportenTestUtils.keystoreFilePath,
MaskinportenTestUtils.keystorePassord,
MaskinportenTestUtils.keystoreAlias,
MaskinportenTestUtils.keystoreAliasPassword
MaskinportenTestUtils.keystoreAliasPassword,
KeystoreType.JKS
)
maskinportenJWTGenerator = MaskinportenJWTGenerator(maskinportenKonfigurasjon)
}
Expand All @@ -34,12 +35,12 @@ class MaskinportenJWTGeneratorTest {
maskinportenJWTGenerator.genererMaskinportenJWT(setOf("test", "test1", "test2"))
Assertions.assertNotNull(tokenBase64)
val parsedToken = JWTParser.parse(tokenBase64)
Assertions.assertTrue(parsedToken is SignedJWT,"Forventet SignedJWT")
Assertions.assertTrue(parsedToken is SignedJWT, "Forventet SignedJWT")

}

@Test
fun `MaskinportenJWTGenerator generer token med angitte verdier`(){
fun `MaskinportenJWTGenerator generer token med angitte verdier`() {
//TODO: Legg inn verifisering på claims
val token = maskinportenJWTGenerator.genererMaskinportenJWT(setOf("test", "test1", "test2"))
val parsed = JWTParser.parse(token)
Expand All @@ -61,7 +62,8 @@ class MaskinportenJWTGeneratorTest {
"ingenfilher.txt",
"password",
"selfsigned",
"password"
"password",
KeystoreType.JKS
)
}, "Forventet IllegalArgumentException ved ikke oppfylte paramtre i konfigurasjonen")
}
Expand All @@ -78,8 +80,9 @@ class MaskinportenJWTGeneratorTest {
"ingenfilher.txt",
"password",
"selfsigned",
"password"
"password",
KeystoreType.JKS
)
}, "Forventet FileNotFoundException ved manglende Keystore")
}
}
}

0 comments on commit d09ad5b

Please sign in to comment.