fix(s3): support SSE-C headers for the MultipartCopy call

Signed-off-by: Tobias Zimmerer <3228193+ir0nhide@users.noreply.github.com>
pull/41366/head
Tobias Zimmerer 2023-11-09 19:03:30 +07:00
parent 138ce5303a
commit cdf96fab92
1 changed files with 7 additions and 1 deletions

@ -191,6 +191,11 @@ trait S3ObjectTrait {
}
public function copyObject($from, $to, array $options = []) {
$sourceMetadata = $this->getConnection()->headObject([
'Bucket' => $this->getBucket(),
'Key' => $from,
] + $this->getSSECParameters());
$copy = new MultipartCopy($this->getConnection(), [
"source_bucket" => $this->getBucket(),
"source_key" => $from
@ -198,7 +203,8 @@ trait S3ObjectTrait {
"bucket" => $this->getBucket(),
"key" => $to,
"acl" => "private",
"params" => $this->getSSECParameters() + $this->getSSECParameters(true)
"params" => $this->getSSECParameters() + $this->getSSECParameters(true),
"source_metadata" => $sourceMetadata
], $options));
$copy->copy();
}