// Version of the KMS plugin API. Must match the configured .resources[].providers[].kms.apiVersion
stringversion=1;
// Any value other than "ok" is failing healthz. On failure, the associated API server healthz endpoint will contain this value as part of the error message.
stringhealthz=2;
// the current write key, used to determine staleness of data updated via value.Transformer.TransformFromStorage.
stringkey_id=3;
}
messageDecryptRequest{
// The data to be decrypted.
bytesciphertext=1;
// UID is a unique identifier for the request.
stringuid=2;
// The keyID that was provided to the apiserver during encryption.
// This represents the KMS KEK that was used to encrypt the data.
stringkey_id=3;
// Additional metadata that was sent by the KMS plugin during encryption.
map<string,bytes>annotations=4;
}
messageDecryptResponse{
// The decrypted data.
bytesplaintext=1;
}
messageEncryptRequest{
// The data to be encrypted.
bytesplaintext=1;
// UID is a unique identifier for the request.
stringuid=2;
}
messageEncryptResponse{
// The encrypted data.
bytesciphertext=1;
// The KMS key ID used to encrypt the data. This must always refer to the KMS KEK and not any local KEKs that may be in use.
// This can be used to inform staleness of data updated via value.Transformer.TransformFromStorage.
stringkey_id=2;
// Additional metadata to be stored with the encrypted data.
// This data is stored in plaintext in etcd. KMS plugin implementations are responsible for pre-encrypting any sensitive data.