Class KeyStoreSecretStoreHeaplet

  • All Implemented Interfaces:
    Heaplet

    public class KeyStoreSecretStoreHeaplet
    extends GenericHeaplet
    This heaplet represents an instance of a KeyStoreSecretStore.
     {
           "type": "KeyStoreSecretStore",
           "config": {
             "file":                 expression                  [ REQUIRED - location of the KeyStore.]
             "storeType":            expression                  [ OPTIONAL - type of the store, default: "PKCS12". ]
             "storePassword":        expression                  [ REQUIRED - password to access the KeyStore.]
             "keyEntryPassword":     expression                  [ OPTIONAL - password to access the entries.
                                                                              default to storePassword. (1)]
             "secretsProvider":      Secrets Provider            [ OPTIONAL - resolve keystore passwords.
                                                                              defaults to route's secret service]
             "leaseExpiry":          expression<duration>        [ OPTIONAL - defaults to 5 minutes.]
             "mappings": [                                       [ REQUIRED - array of object.]
               {
                 "secretId":              expression                 [ REQUIRED - ID of the secret.]
                 "aliases":             [ expression  ]              [ REQUIRED - list of aliases corresponding to the
                                                                      above secret. Order matter here and the first is
                                                                      the active secret.]
               }
             ]
           }
        }
     

    Example:

     {
           "type": "KeyStoreSecretStore",
           "config": {
               "file": "/path/to/keystore.file",
               "storeType": "JCEKS",
               "storePassword": "keystore.pass",
               "keyEntryPassword": "keystore.entries.pass",
               "mappings": [{
                   "secretId": "global.pcookie.crypt",
                   "aliases": [ "rsapair72", "rsapair72-inactive" ]
               }]
            }
        }
     
    (1) Note that if the keyEntryPassword is used, it must be the same for all entries in the keystore. This said, it will not work with JKS having different password for their entries.
    See Also:
    KeyStoreSecretStore
    • Constructor Detail

      • KeyStoreSecretStoreHeaplet

        public KeyStoreSecretStoreHeaplet()
    • Method Detail