Comment 4 for bug 688773

Revision history for this message
Mitch Garnaat (mitch-garnaat) wrote :

The problem seems to be related to the boto version. Here's a request using Python 2.7.1, boto 1.9b on natty:

>>> import boto
>>> c = boto.connect_ec2('0GN9DKJ90KCX6A32JFR2', 'C6LIffj0F2ekC7u3Ubw9j64lpvOQ6guG66R4dr+0')
>>> c.get_all_instances()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/ubuntu/boto-1.9b/boto/ec2/connection.py", line 376, in get_all_instances
    return self.get_list('DescribeInstances', params, [('item', Reservation)])
  File "/home/ubuntu/boto-1.9b/boto/connection.py", line 615, in get_list
    raise self.ResponseError(response.status, response.reason, body)
boto.exception.EC2ResponseError: EC2ResponseError: 403 Forbidden
<?xml version="1.0" encoding="UTF-8"?>
<Response><Errors><Error><Code>SignatureDoesNotMatch</Code><Message>The request signature we calculated does not match the signature you provided. Check your AWS Secret Access Key and signing method. Consult the service documentation for details.</Message></Error></Errors><RequestID>aa2652b2-98bb-49af-8f06-5946f6cb0896</RequestID></Response>
>>>

Here's the same request on Python 2.7.1, boto 2.0b3 and natty:

>>> import boto
>>> c = boto.connect_ec2('0GN9DKJ90KCX6A32JFR2', 'C6LIffj0F2ekC7u3Ubw9j64lpvOQ6guG66R4dr+0')
>>> c.get_all_instances()
[Reservation:r-f175d599, Reservation:r-c85523a0, Reservation:r-fa384392, Reservation:r-1c396c74, Reservation:r-5e3a6a36, Reservation:r-4cf2af24, Reservation:r-6492bf0c, Reservation:r-cbc9b9a1, Reservation:r-69d5af03]
>>>

I'm still not exactly sure what the problem is but upgrading to the newest version of boto fixes it. I'll track down the exact issue and then we can figure out how we want to fix it in natty.