Amazon s3 使用不同的IAM';跨S3存储桶复制文件;s

Amazon s3 使用不同的IAM';跨S3存储桶复制文件;s,amazon-s3,boto3,Amazon S3,Boto3,我正在使用2个boto会话跨具有不同IAM的帐户复制文件。每个会话都按预期运行。我希望使用SourceClient参数复制操作可以正常工作,但事实并非如此。代码如下,IAM和路径已编辑 import boto3 as boto session_aero = boto.session.Session(aws_access_key_id='AMI_1', aws_secret_access_key='SEC_1') s3_aero = session_aero.client('s3') s3

我正在使用2个boto会话跨具有不同IAM的帐户复制文件。每个会话都按预期运行。我希望使用SourceClient参数复制操作可以正常工作,但事实并非如此。代码如下,IAM和路径已编辑

import boto3 as boto


session_aero =   boto.session.Session(aws_access_key_id='AMI_1',
aws_secret_access_key='SEC_1')
s3_aero = session_aero.client('s3')
s3_aero_resource = session_aero.resource('s3')
src = s3_aero_resource.Bucket('bucket-1')




session_cube = boto.session.Session("AMI_2","SEC_2")
s3_cube = session_cube.client('s3')

for tif in src.objects.filter(Prefix='file/prefix/'):
     copy_source = {'Bucket':'bucket-1','Key':tif.key}
     s3_cube.copy(copy_source,'bucket-2',tif.key,SourceClient=s3_aero)

仅供参考,
SourceClient
在中提到。它说“要在源bucket的区域与最终bucket的区域不同的情况下进行托管复制,请提供一个与源bucket共享同一区域的SourceClient。”因此,问题是SourceClient是否可以具有不同的凭据以及不同的区域。仅供参考,
SourceClient
在中提到。它说“要在源bucket的区域与最终bucket的区域不同的情况下进行托管复制,请提供一个与源bucket共享同一区域的SourceClient。”因此,问题在于SourceClient是否可以具有不同的凭据以及不同的区域。