SecretsKeyManager
Uses the Commons Secrets API to manage keys that authenticate a TLS connection to a peer. The configuration references the keystore that holds the keys.
Usage
{
"name": string,
"type": "SecretsKeyManager",
"config": {
"signingSecretId": configuration expression<secret-id>,
"secretsProvider": SecretsProvider reference
}
}
Properties
"signingSecretId"
: configuration expression<secret-id>, required-
The secret ID used to retrieve private signing keys.
This secret ID must point to a CryptoKey.
"secretsProvider"
: SecretsProvider reference, required-
The SecretsProvider to query for secrets to resolve the private signing key.
Example
The following example uses a private key found from a keystore for TLS handshake.
{
"type": "SecretsKeyManager",
"config": {
"signingSecretId": "key.manager.secret.id",
"secretsProvider": {
"type": "KeyStoreSecretStore",
"config": {
"file": "path/to/certs/ig.example.com.p12",
"storePasswordSecretId": "keystore.pass",
"secretsProvider": "SecretsPasswords",
"mappings": [{
"secretId": "key.manager.secret.id",
"aliases": [ "ig.example.com" ]
}]
}
}
}
}