Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Suddenly getting 403's? #642

Closed
EwanValentine opened this issue Jun 19, 2015 · 5 comments
Closed

Suddenly getting 403's? #642

EwanValentine opened this issue Jun 19, 2015 · 5 comments
Labels
guidance Question that needs advice or information.

Comments

@EwanValentine
Copy link

I'm getting:

Error executing "ReceiveMessage" on "https://sqs.us-east-1.amazonaws.com/your-queue-url"; AWS HTTP error: Client error: 403 SignatureDoesNotMatch

Errors in my error log. I wasn't getting this before, I hadn't changed anything in my AWS settings, or changed my secret/token or anything like that. I'm also confused as to why I'm getting SQS errors as I'm not using SQS?

@EwanValentine
Copy link
Author

Full stack trace

exception 'GuzzleHttp\Exception\ClientException' with message 'Client error: 403' in /home/vagrant/65Contrib/vendor/guzzlehttp/guzzle/src/Middleware.php:68
Stack trace:
#0 /home/vagrant/65Contrib/vendor/guzzlehttp/promises/src/Promise.php(199): GuzzleHttp\Middleware::GuzzleHttp\{closure}(Object(GuzzleHttp\Psr7\Response))
#1 /home/vagrant/65Contrib/vendor/guzzlehttp/promises/src/Promise.php(165): GuzzleHttp\Promise\Promise::callHandler(1, Object(GuzzleHttp\Psr7\Response), Array)
#2 /home/vagrant/65Contrib/vendor/guzzlehttp/promises/src/FulfilledPromise.php(39): GuzzleHttp\Promise\Promise::GuzzleHttp\Promise\{closure}(Object(GuzzleHttp\Psr7\Response))
#3 /home/vagrant/65Contrib/vendor/guzzlehttp/promises/src/TaskQueue.php(60): GuzzleHttp\Promise\FulfilledPromise::GuzzleHttp\Promise\{closure}()
#4 /home/vagrant/65Contrib/vendor/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php(96): GuzzleHttp\Promise\TaskQueue->run()
#5 /home/vagrant/65Contrib/vendor/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php(123): GuzzleHttp\Handler\CurlMultiHandler->tick()
#6 /home/vagrant/65Contrib/vendor/guzzlehttp/promises/src/Promise.php(240): GuzzleHttp\Handler\CurlMultiHandler->execute(true)
#7 /home/vagrant/65Contrib/vendor/guzzlehttp/promises/src/Promise.php(217): GuzzleHttp\Promise\Promise->invokeWaitFn()
#8 /home/vagrant/65Contrib/vendor/guzzlehttp/promises/src/Promise.php(261): GuzzleHttp\Promise\Promise->waitIfPending()
#9 /home/vagrant/65Contrib/vendor/guzzlehttp/promises/src/Promise.php(219): GuzzleHttp\Promise\Promise->invokeWaitList()
#10 /home/vagrant/65Contrib/vendor/guzzlehttp/promises/src/Promise.php(261): GuzzleHttp\Promise\Promise->waitIfPending()
#11 /home/vagrant/65Contrib/vendor/guzzlehttp/promises/src/Promise.php(219): GuzzleHttp\Promise\Promise->invokeWaitList()
#12 /home/vagrant/65Contrib/vendor/guzzlehttp/promises/src/Promise.php(62): GuzzleHttp\Promise\Promise->waitIfPending()
#13 /home/vagrant/65Contrib/vendor/aws/aws-sdk-php/src/AwsClient.php(201): GuzzleHttp\Promise\Promise->wait()
#14 /home/vagrant/65Contrib/vendor/aws/aws-sdk-php/src/AwsClient.php(166): Aws\AwsClient->execute(Object(Aws\Command))
#15 /home/vagrant/65Contrib/vendor/laravel/framework/src/Illuminate/Queue/SqsQueue.php(100): Aws\AwsClient->__call('receiveMessage', Array)
#16 /home/vagrant/65Contrib/vendor/laravel/framework/src/Illuminate/Queue/SqsQueue.php(100): Aws\Sqs\SqsClient->receiveMessage(Array)
#17 /home/vagrant/65Contrib/vendor/laravel/framework/src/Illuminate/Queue/Worker.php(171): Illuminate\Queue\SqsQueue->pop()
#18 /home/vagrant/65Contrib/vendor/laravel/framework/src/Illuminate/Queue/Worker.php(145): Illuminate\Queue\Worker->getNextJob(Object(Illuminate\Queue\SqsQueue), NULL)
#19 /home/vagrant/65Contrib/vendor/laravel/framework/src/Illuminate/Queue/Worker.php(109): Illuminate\Queue\Worker->pop('sqs', NULL, 0, '3', '3')
#20 /home/vagrant/65Contrib/vendor/laravel/framework/src/Illuminate/Queue/Worker.php(85): Illuminate\Queue\Worker->runNextJobForDaemon('sqs', NULL, 0, '3', '3')
#21 /home/vagrant/65Contrib/vendor/laravel/framework/src/Illuminate/Queue/Console/WorkCommand.php(103): Illuminate\Queue\Worker->daemon('sqs', NULL, 0, 128, '3', '3')
#22 /home/vagrant/65Contrib/vendor/laravel/framework/src/Illuminate/Queue/Console/WorkCommand.php(71): Illuminate\Queue\Console\WorkCommand->runWorker('sqs', NULL, 0, 128, true)
#23 [internal function]: Illuminate\Queue\Console\WorkCommand->fire()
#24 /home/vagrant/65Contrib/vendor/laravel/framework/src/Illuminate/Container/Container.php(502): call_user_func_array(Array, Array)
#25 /home/vagrant/65Contrib/vendor/laravel/framework/src/Illuminate/Console/Command.php(150): Illuminate\Container\Container->call(Array)
#26 /home/vagrant/65Contrib/vendor/symfony/console/Command/Command.php(259): Illuminate\Console\Command->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#27 /home/vagrant/65Contrib/vendor/laravel/framework/src/Illuminate/Console/Command.php(136): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#28 /home/vagrant/65Contrib/vendor/symfony/console/Application.php(878): Illuminate\Console\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#29 /home/vagrant/65Contrib/vendor/symfony/console/Application.php(195): Symfony\Component\Console\Application->doRunCommand(Object(Illuminate\Queue\Console\WorkCommand), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#30 /home/vagrant/65Contrib/vendor/symfony/console/Application.php(126): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#31 /home/vagrant/65Contrib/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(94): Symfony\Component\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#32 /home/vagrant/65Contrib/artisan(36): Illuminate\Foundation\Console\Kernel->handle(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#33 {main}

Next exception 'Aws\Sqs\Exception\SqsException' with message 'Error executing "ReceiveMessage" on "https://sqs.us-east-1.amazonaws.com/your-queue-url"; AWS HTTP error: Client error: 403 SignatureDoesNotMatch (client): Signature expired: 20150619T100249Z is now earlier than 20150619T100713Z (20150619T102213Z - 15 min.) - <?xml version="1.0"?><ErrorResponse xmlns="http://queue.amazonaws.com/doc/2012-11-05/"><Error><Type>Sender</Type><Code>SignatureDoesNotMatch</Code><Message>Signature expired: 20150619T100249Z is now earlier than 20150619T100713Z (20150619T102213Z - 15 min.)</Message><Detail/></Error><RequestId>c0040c63-5c2f-55a9-8be0-419eb3ba4217</RequestId></ErrorResponse>' in /home/vagrant/65Contrib/vendor/aws/aws-sdk-php/src/WrappedHttpHandler.php:152
Stack trace:
#0 /home/vagrant/65Contrib/vendor/aws/aws-sdk-php/src/WrappedHttpHandler.php(76): Aws\WrappedHttpHandler->parseError(Array, Object(GuzzleHttp\Psr7\Request), Object(Aws\Command))
#1 /home/vagrant/65Contrib/vendor/guzzlehttp/promises/src/Promise.php(199): Aws\WrappedHttpHandler->Aws\{closure}(Array)
#2 /home/vagrant/65Contrib/vendor/guzzlehttp/promises/src/Promise.php(170): GuzzleHttp\Promise\Promise::callHandler(2, Array, Array)
#3 /home/vagrant/65Contrib/vendor/guzzlehttp/promises/src/RejectedPromise.php(40): GuzzleHttp\Promise\Promise::GuzzleHttp\Promise\{closure}(Array)
#4 /home/vagrant/65Contrib/vendor/guzzlehttp/promises/src/TaskQueue.php(60): GuzzleHttp\Promise\RejectedPromise::GuzzleHttp\Promise\{closure}()
#5 /home/vagrant/65Contrib/vendor/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php(96): GuzzleHttp\Promise\TaskQueue->run()
#6 /home/vagrant/65Contrib/vendor/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php(123): GuzzleHttp\Handler\CurlMultiHandler->tick()
#7 /home/vagrant/65Contrib/vendor/guzzlehttp/promises/src/Promise.php(240): GuzzleHttp\Handler\CurlMultiHandler->execute(true)
#8 /home/vagrant/65Contrib/vendor/guzzlehttp/promises/src/Promise.php(217): GuzzleHttp\Promise\Promise->invokeWaitFn()
#9 /home/vagrant/65Contrib/vendor/guzzlehttp/promises/src/Promise.php(261): GuzzleHttp\Promise\Promise->waitIfPending()
#10 /home/vagrant/65Contrib/vendor/guzzlehttp/promises/src/Promise.php(219): GuzzleHttp\Promise\Promise->invokeWaitList()
#11 /home/vagrant/65Contrib/vendor/guzzlehttp/promises/src/Promise.php(261): GuzzleHttp\Promise\Promise->waitIfPending()
#12 /home/vagrant/65Contrib/vendor/guzzlehttp/promises/src/Promise.php(219): GuzzleHttp\Promise\Promise->invokeWaitList()
#13 /home/vagrant/65Contrib/vendor/guzzlehttp/promises/src/Promise.php(62): GuzzleHttp\Promise\Promise->waitIfPending()
#14 /home/vagrant/65Contrib/vendor/aws/aws-sdk-php/src/AwsClient.php(201): GuzzleHttp\Promise\Promise->wait()
#15 /home/vagrant/65Contrib/vendor/aws/aws-sdk-php/src/AwsClient.php(166): Aws\AwsClient->execute(Object(Aws\Command))
#16 /home/vagrant/65Contrib/vendor/laravel/framework/src/Illuminate/Queue/SqsQueue.php(100): Aws\AwsClient->__call('receiveMessage', Array)
#17 /home/vagrant/65Contrib/vendor/laravel/framework/src/Illuminate/Queue/SqsQueue.php(100): Aws\Sqs\SqsClient->receiveMessage(Array)
#18 /home/vagrant/65Contrib/vendor/laravel/framework/src/Illuminate/Queue/Worker.php(171): Illuminate\Queue\SqsQueue->pop()
#19 /home/vagrant/65Contrib/vendor/laravel/framework/src/Illuminate/Queue/Worker.php(145): Illuminate\Queue\Worker->getNextJob(Object(Illuminate\Queue\SqsQueue), NULL)
#20 /home/vagrant/65Contrib/vendor/laravel/framework/src/Illuminate/Queue/Worker.php(109): Illuminate\Queue\Worker->pop('sqs', NULL, 0, '3', '3')
#21 /home/vagrant/65Contrib/vendor/laravel/framework/src/Illuminate/Queue/Worker.php(85): Illuminate\Queue\Worker->runNextJobForDaemon('sqs', NULL, 0, '3', '3')
#22 /home/vagrant/65Contrib/vendor/laravel/framework/src/Illuminate/Queue/Console/WorkCommand.php(103): Illuminate\Queue\Worker->daemon('sqs', NULL, 0, 128, '3', '3')
#23 /home/vagrant/65Contrib/vendor/laravel/framework/src/Illuminate/Queue/Console/WorkCommand.php(71): Illuminate\Queue\Console\WorkCommand->runWorker('sqs', NULL, 0, 128, true)
#24 [internal function]: Illuminate\Queue\Console\WorkCommand->fire()
#25 /home/vagrant/65Contrib/vendor/laravel/framework/src/Illuminate/Container/Container.php(502): call_user_func_array(Array, Array)
#26 /home/vagrant/65Contrib/vendor/laravel/framework/src/Illuminate/Console/Command.php(150): Illuminate\Container\Container->call(Array)
#27 /home/vagrant/65Contrib/vendor/symfony/console/Command/Command.php(259): Illuminate\Console\Command->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#28 /home/vagrant/65Contrib/vendor/laravel/framework/src/Illuminate/Console/Command.php(136): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#29 /home/vagrant/65Contrib/vendor/symfony/console/Application.php(878): Illuminate\Console\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#30 /home/vagrant/65Contrib/vendor/symfony/console/Application.php(195): Symfony\Component\Console\Application->doRunCommand(Object(Illuminate\Queue\Console\WorkCommand), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#31 /home/vagrant/65Contrib/vendor/symfony/console/Application.php(126): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#32 /home/vagrant/65Contrib/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(94): Symfony\Component\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#33 /home/vagrant/65Contrib/artisan(36): Illuminate\Foundation\Console\Kernel->handle(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#34 {main}
^Z

@jeskew jeskew added the guidance Question that needs advice or information. label Jun 19, 2015
@jeskew
Copy link
Contributor

jeskew commented Jun 19, 2015

It looks like the connection to SQS is happening during Laravel's queue:work command. Did you mean to use a different queue driver?

@EwanValentine
Copy link
Author

Apologies, this suddenly started working again! I suspect it wasn't this library, but something Laravel related as you suggested. Thanks!

@titolendable
Copy link

I faced this problem today, I adjusted the time on my machine and now everything works. Is there a way to disable this check?

@jeskew
Copy link
Contributor

jeskew commented Jan 27, 2016

This error described is not a client-side check, but an authentication error thrown by SQS. Credentials are scoped to a calendar day, so it is not possible to disable including date information in the signing process.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
guidance Question that needs advice or information.
Projects
None yet
Development

No branches or pull requests

3 participants