AmazonS3に自分の組織用のバケットがあります。mydev.orgname
クレデンシャルを使用してAmazonS3に接続し、S3に接続してファイルを作成、読み取りできるJavaアプリケーションがあります。
アプリケーションが同じバケットからPythonからデータを読み取るという要件があります。だから私はこれにボトを使っています。
私はバケツを手に入れるために次のことをします
>>> import boto
>>> from boto.s3.connection import S3Connection
>>> from boto.s3.key import Key
>>>
>>> conn = S3Connection('xxxxxxxxxxx', 'yyyyyyyyyyyyyyyyyyyyyy')
>>> conn
S3Connection:s3.amazonaws.com
バケットを取得しようとすると、エラーが表示されます
>>> b = conn.get_bucket('mydev.myorg')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Library/Python/2.7/site-packages/boto/s3/connection.py", line 389, in get_bucket
bucket.get_all_keys(headers, maxkeys=0)
File "/Library/Python/2.7/site-packages/boto/s3/bucket.py", line 367, in get_all_keys
'', headers, **params)
File "/Library/Python/2.7/site-packages/boto/s3/bucket.py", line 334, in _get_all
response.status, response.reason, body)
boto.exception.S3ResponseError: S3ResponseError: 403 Forbidden
<?xml version="1.0" encoding="UTF-8"?>
<Error><Code>AccessDenied</Code><Message>Access Denied</Message><RequestId>EEC05E43AF3E00F3</RequestId><HostId>v7HHmhJaLLQJZYkZ7sL4nqvJDS9yfrhfKQCgh4i8Tx+QsxKaub50OPiYrh3JjQbJ</HostId></Error>
しかし、Javaアプリケーションからは、すべてが機能しているようです。
私はここで何か間違ったことをしていますか?