繁体   English   中英

assume_role不返回,lambda超时(关键字:aws boto3 sts lambda python3.6)

[英]assume_role does not return and lambda times out (keywords: aws boto3 sts lambda python3.6)

我正在尝试创建一个 python3.6 AWS lambda function,它在另一个帐户中担任角色以访问另一个帐户中的 S3 存储桶。 我正在本地测试这个确切的 lambda function(使用 aws 配置文件集)以测试我的跨账户角色和策略是否已设置并且在本地是否完美运行。 但是,当从 lambda 中运行相同的代码时,assume_role 似乎没有返回并且 lambda 超时。 将不胜感激任何提示如何处理调试这个或任何想法可能是什么问题?

我的代码:

print ("==== before_assume_role")
assumed_role_object = sts_client.assume_role( 
    RoleArn=FOREIGN_ROLE_TO_ASSUME, RoleSessionName='cross-account-session')
print ("==== after_assume_role")

“==== after_assume_role”没有被打印出来,错误处理程序(即except (Exception) as error )没有被调用并且 lambda 超时。

任何想法将不胜感激!

谢谢你,康斯坦丁

我也遇到了这个问题,原因是我将它部署在私有 VPC 中。 我的修复是明确指定 sts 客户端。

sts_client = boto3.client('sts',region_name="ap-southeast-1",endpoint_url="https://sts.ap-southeast-1.amazonaws.com")

相应地更改区域名称和端点 url。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM