The PKIJKS-Type is the same as the PKI-Type. The only difference is that it converts the issued certificate into a Java Key Store.
How to generate a PKI is documented by HashiCorp in their Secrets Engine documentation. For a short simple example please see the How To section of PKi-Type.
After you have generated a PKI create the Vault resource in Kubernetes:
apiVersion: "koudingspawn.de/v1"kind: Vaultmetadata:name: test-pkijksspec:path: "testpki/issue/testrole"type: "PKIJKS"pkiConfiguration:commonName: "localhost"ttl: "7m"jksConfiguration:password: "changeit"
Now you should see the Vault resource in Kubernetes and the newly generated secret:
$ kubectl get vault test-pkijksNAME AGEtest-pkijks 8d
$ kubectl get secret test-pkijksNAME TYPE DATA AGEtest-pkijks Opaque 1 8d
The Java Key Store is saved by default in the key.jks field. It's possible to change the field via the jksConfiguration Object:
jksConfiguration:password: "changeit"alias: "main"keyName: "key.jks"
The field password defines the password that's used to secure the Key Store. The alias is for defining the name of the TLS-Certificate in the Key store and the key name is for specifying the save path in the secret.
For more details please see Change Detection!