Я пытаюсь реализовать POC, включающий шифрование документов с использованием S3 SSE с использованием механизма AWS: KMS.В этом документе https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectPUT.html указывается, что можно указывать как идентификатор ключа KMS, так и контекст шифрования.
Однако в JavaScript функция putObject (https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/S3.html#putObject-property) поддерживает только параметр идентификатора ключа KMS. ВНа самом деле, я просмотрел весь JS AWS-SDK для ссылок на x-amz-server-side-encryption-context
и не могу его нигде найти. Весь SDK не поддерживает этот заголовок.
Вот мой код:
const s3Params = {
Bucket: S3_BUCKET,
Key: objectID,
ContentType: 'application/gzip',
Body: objectString,
Expires: new Date(expire * 1000),
ServerSideEncryption: 'aws:kms',
SSEKMSKeyId: 'My KMS Key ID'
};
await s3.putObject(s3Params).promise();
Использую ли я нужную функцию? Эта функция вообще поддерживается в JavaScript SDK?