Python S3权限问题

Python S3权限问题,python,amazon-s3,Python,Amazon S3,当我运行此代码时: conn = S3Connection('xyz','zyx') conn2 = S3Connection('xxx','xyz') srcBucketName = 'name1' dstBucketName = 'name2' srcBucket = conn.get_bucket(srcBucketName); dstBucket = conn2.get_bucket(dstBucketName); keys = srcBucket.get_all_keys(max_

当我运行此代码时:

conn = S3Connection('xyz','zyx')
conn2 = S3Connection('xxx','xyz')

srcBucketName = 'name1'
dstBucketName = 'name2'
srcBucket = conn.get_bucket(srcBucketName);
dstBucket = conn2.get_bucket(dstBucketName);

keys = srcBucket.get_all_keys(max_keys = 5, prefix='path/to/file')

for k in keys:
  print 'Copying ' + k.key + ' from ' + srcBucketName + ' to ' + dstBucketName

  t0 = time.clock()
  dstBucket.copy_key(k.key, srcBucketName, k.key)
  print time.clock() - t0, ' seconds'
我被返回此错误:

3ResponseError: S3ResponseError: 403 Forbidden
<Error><Code>AccessDenied</Code><Message>Access Denied</Message><RequestId>734BB799C0FA1C7A</RequestId><HostId>y9WRn7lb3BDqbLurW5q1EsKz+FptqXgVxeIgNbWrEBshew7CQ0w6Lg+yjjd1Lqfe</HostId></Error>
(来自另一个问题)

我可以使用输入到python中的键从srcBucket下载这些文件。我有对DSTBack的写入权限

srcBucket和dstBucket是通过我拥有的不同的保管器访问的


有人知道我为什么要从一个存储桶复制文件到另一个存储桶吗?

是否连接到正确的区域终结点?你的水桶位于哪个地区?如果您在创建连接时没有指定区域,那么我相信它默认为us-east-1,如果您的bucket不在该区域,那么当您尝试对其执行任何操作时,它可能会抛出一个错误。我的区域是us-east-1,如果我更改我的bucket,上面的脚本会起作用。因此,我认为这可能是我要复制的bucket的权限问题。生成复制请求的帐户必须具有读取源bucket和写入目标bucket的权限。