Я пытаюсь записать преобразование данных для потока данных Aurora Postgres. Преобразование идентичности дает мне такие объекты:
{
"type": "DatabaseActivityMonitoringRecords",
"version": "1.0",
"databaseActivityEvents": "AYADeLZrKReAa/7tgBmd/d06ybQAXwA...BABVoaWV1Fi8LyA==",
"key": "AADDDVAS ...pztPgaw=="
}
Так что мне кажется, что мне нужно их расшифровать. У меня есть arn
ключа, прикрепленного к рассматриваемой базе данных, но я не могу заставить преобразование данных работать. Вот что у меня есть:
console.log ('Функция загрузки');const zlib = требуется ('zlib');const AWS = require ('aws-sdk');
exports.handler = async (event, context) => {
/* Process the list of records and transform them */
const output = event.records.map((record) => {
const keyId = "arn:aws:kms:us-east-1:501..89:key/1...d7"; // I don't need this?
const CiphertextBlob = record.data;
const kmsClient = new AWS.KMS({region: 'us-east-1'});
const pt = kmsClient.decrypt({ CiphertextBlob }, (err, data) => {
if (err) console.log(err, err.stack); // an error occurred
else {
const { Plaintext } = data;
console.log(data);
return Plaintext;
}
});
return { old_data : record.data,};
});
console.log(`Processing completed. Successful records ${output.length}.`);
return { records: output };
};
Это приводит меня в замешательство ошибка "errorMessage": "Error: Unable to stringify response body"
Я следую приведенному здесь примеру: https://docs.aws.amazon.com/kms/latest/developerguide/programming-encryption.html#decryption
Любая идея, чтоЯ тут не так делаю?