Насколько я понимаю, ETag должен соответствовать MD5 га sh при условии, что вы не использовали многочастную загрузку и не используете шифрование KMS.
Я только начал использовать эту функцию в приложение и обнаружили, что это не работает.
Я загрузил большой sh файл powerpoint (110 МБ) через cli, и ETag не MD5 га sh.
Используется точно такая же команда cli с меньшим файлом powerpoint, и ETag представляет собой MD5 га sh.
Такое же поведение наблюдается через консоль. Cli и console используют multipart upload под капотом или есть что-то еще, что я пропустил?
jgreenal$ aws s3 cp bigpowerpoint.pptx s3://mybucketname --sse=AES256
jgreenal$ aws s3api head-object --bucket mybucketname --key bigpowerpoint.pptx
{
"AcceptRanges": "bytes",
"LastModified": "Fri, 06 Mar 2020 11:15:47 GMT",
"ContentLength": 113962008,
"ETag": "\"d15e9a175cd9365a6480eab9105c7c86-14\"",
"VersionId": "2JMq2pPyKMk3ZlSco4l.r5ZPip_pp6Oq",
"ContentType": "application/vnd.openxmlformats-officedocument.presentationml.presentation",
"ServerSideEncryption": "AES256",
"Metadata": {},
"ReplicationStatus": "COMPLETED"
}
jgreenal$ aws s3 cp tinypowerpoint.pptx s3://mybucketname --sse=AES256
jgreenal$ aws s3api head-object --bucket mybucketname --key tinypowerpoint.pptx
{
"AcceptRanges": "bytes",
"LastModified": "Fri, 06 Mar 2020 11:20:37 GMT",
"ContentLength": 33878,
"ETag": "\"7a0b3c27805d5f599e5d655b13b4644c\"",
"VersionId": "Tv1WyDSoHo2s.p59IKM_M6iaVGdh6EiF",
"ContentType": "application/vnd.openxmlformats-officedocument.presentationml.presentation",
"ServerSideEncryption": "AES256",
"Metadata": {},
"ReplicationStatus": "COMPLETED"
}