Skip to content

Suddenly getting 403's? #642

Closed
Closed

Description

@EwanValentine

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?

Activity

  1. EwanValentine commented on Jun 19, 2015

    @EwanValentine
    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
    
  2. added
    guidanceQuestion that needs advice or information.
    on Jun 19, 2015
  3. jeskew commented on Jun 19, 2015

    @jeskew
    Contributor

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

  4. EwanValentine commented on Jun 22, 2015

    @EwanValentine
    Author

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

  5. titolendable commented on Jan 27, 2016

    @titolendable

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

  6. jeskew commented on Jan 27, 2016

    @jeskew
    Contributor

    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

Metadata

Metadata

Assignees

No one assigned

    Labels

    guidanceQuestion that needs advice or information.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions