io.quarkus.vault.runtime.config.TransitKeyConfig Maven / Gradle / Ivy
package io.quarkus.vault.runtime.config;
import java.util.Optional;
import io.quarkus.runtime.annotations.ConfigGroup;
import io.quarkus.runtime.annotations.ConfigItem;
@ConfigGroup
public class TransitKeyConfig {
/**
* Specifies the name of the key to use. By default this will be the property key alias. Used when
* the same transit key is used with different configurations. Such as in:
* ```
* quarkus.vault.transit.key.my-foo-key.name=foo
*
* quarkus.vault.transit.key.my-foo-key-with-prehashed.name=foo
* quarkus.vault.transit.key.my-foo-key-with-prehashed.prehashed=true
* ...
* transitSecretEngine.sign("my-foo-key", "my raw content");
* or
* transitSecretEngine.sign("my-foo-key-with-prehashed", "my already hashed content");
* ```
*
* @asciidoclet
*/
@ConfigItem
public Optional name;
// sign
/**
* Set to true when the input is already hashed.
* Applies to sign operations.
*
* @see api documentation for prehashed
*/
@ConfigItem
public Optional prehashed;
/**
* When using a RSA key, specifies the RSA signature algorithm.
* Applies to sign operations.
*
* @see api documentation for
* signature_algorithm
*/
@ConfigItem
public Optional signatureAlgorithm;
/**
* Specifies the hash algorithm to use for supporting key types.
* Applies to sign operations.
*
* @see api documentation for
* hash_algorithm
*/
@ConfigItem
public Optional hashAlgorithm;
// encrypt
/**
* Specifies the type of key to create for the encrypt operation.
* Applies to encrypt operations.
*
* @see api documentation for type
*/
@ConfigItem
public Optional type;
/**
* If enabled, the key will support convergent encryption, where the same plaintext creates the same ciphertext.
* Applies to encrypt operations.
*
* @see api documentation for
* convergent_encryption
*/
@ConfigItem
public Optional convergentEncryption;
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy