Ошибка InvalidArgument с использованием подписанного URL-адреса Cloudfront

Я создаю подписанный URL-адрес облака, используя следующий код.

$cloudfront = new CloudFrontClient([
'version' => '2014-11-06',
'credentials' => [
'key'=>'MyKey',
'secret'=>'MySecret',
],
'region' => 'us-east-1',
]);

$url = $cloudfront->getSignedUrl([
'url' => 'https://cloudfronturl/path/to/resource',
'expires' => time() + 3600,
'private_key' => '/path/to/key.pem',
'key_pair_id' => 'keyPairID',
]);

Код генерирует URL, который выглядит следующим образом

https://cloudfronturl/path/to/resource?Expires=1534349477&Signature=Gppjq5ZujLaVl0MAz3xJo0whxOYb0ZbgJX9AG9QN-F-mGrwZghJiHoTlietlfm2uKRgWcGuRS14pzcggkgeL-jlOlQl3s66QCJ0ETjKpbpyMNyeXlHMo2cBYDLaB-azBxuQHbzC17SkYHAgYGIpDHvlm5BILkSnpprUNoTSxZlQjXrK6uqFLDFbWEcVJEXhHpmZqtrSLoJRfKwxPk~rGOWn1SOWDBhowMFlxBzmgxGHatUbFkq~EGo0FZpKzdBLu449Uq2WJMIb~V7PCRqc9D2A6cuDHxyYuAd5NrtMkn2qUyQ8-N12bw7JSl6aO50w7~wAJMnVOH1k~7n~Hj~OfVQ__&Key-Pair-Id=keyPairID

Это работало хорошо больше года. Сегодня меня предупредили, что сгенерированные таким образом ссылки больше не работают, как ожидалось. Ссылки теперь выдают эту ошибку:

Only one auth mechanism allowed; only the X-Amz-Algorithm query parameter, Signature query string parameter or the Authorization header should be specified

Я все утро возился с этим, пытаясь понять, почему он так говорит. Насколько я знаю, я не устанавливаю X-Amz-Algorithm параметр и все проверки, которые я сделал, не показали ни одного Authorization заголовок.

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector