AWS S3授权机制 - 签名4

时间:2017-08-14 07:28:33

标签: php amazon-web-services amazon-s3

我目前正努力让S3下载链接正常工作。我一直在使用this code作为参考,但当我尝试打开文件时,我收到错误:

  

不支持您提供的授权机制。请   使用AWS4-HMAC-SHA256。

我尝试了一些其他脚本,但所有脚本都以其他错误消息结束。 是否有一种简单的方法来迁移我正在使用的脚本以使其与Signature v4一起使用?

更新:根据hjpotter92的建议,我使用了AWS-SDK并提出了这个有效的代码:

$client = S3Client::factory([
  'version' => 'latest',
  'region'  => 'eu-central-1',
  'signature'    => 'v4',
  'credentials' => [
    'key'    => '12345',
    'secret' => 'ABCDE'
  ]
]);

$cmd = $client->getCommand('GetObject', [
  'Bucket' => '###name###',
  'Key'    => $fileName
]);

$request = $client->createPresignedRequest($cmd, '+2 minutes');
$presignedUrl = (string) $request->getUri();
return $presignedUrl;

0 个答案:

没有答案