AWS Lambda可以从其他地区访问S3存储桶吗?

时间:2018-01-19 14:59:30

标签: amazon-web-services amazon-s3 aws-lambda

我目前尝试使用AWS Lambda。 lambda函数应该从S3 Bucket加载zip文件(> 10 MB)。 S3存储桶位于eu-central-1,而lambda函数位于lambda:us-east-1

当我尝试保存lambda函数时,我得到:

  

GetObject时发生错误。 S3错误代码:AuthorizationHeaderMalformed。 S3错误消息:授权标头格式错误;该地区'us-east-1'错了;期待'eu-central-1'

这真的是问题吗?是否可以移动lambda函数?

执行Lambda函数的IAM角色具有AmazonS3FullAccess策略。

2 个答案:

答案 0 :(得分:4)

lambda函数必须与您在" S3链接URL *"指定的S3存储桶位于同一区域:

enter image description here

答案 1 :(得分:2)

您可以访问与Lambda不同的区域中的S3存储桶。如果您使用的是Python boto3库,以下代码将对您有所帮助:

import boto3

client = boto3.client('s3', region_name='eu-central-1')

实际上,您可以从AWS Lambda访问不同区域中的任何资源。