AWS boto SQS连接不支持profile_name

时间:2015-03-07 00:22:57

标签: python amazon-web-services boto amazon-sqs

我有一个包含多个配置文件的凭据文件。在我的脚本中,配置文件名称作为参数传递,所有connect_xxx调用都使用该配置文件名称。这一直很好 - 直到我尝试连接到SQS。当我尝试连接到SQS时,我得到:TypeError: init ()得到了一个意外的关键字参数' profile_name'。

例如,下面的代码工作正常 - 直到SQS连接。我错过了什么,或者AWS忘记在SQS connect上实现profile_name吗?

region_name = 'us-east-1'
profile_name = 'my-valid'
iam_conn = boto.connect_iam(profile_name=profile_name)
s3_conn = boto.connect_s3(profile_name=profile_name)
ec2_conn = boto.ec2.connect_to_region( region_name, profile_name=profile_name )
vpc_conn = boto.vpc.connect_to_region( region_name, profile_name=profile_name )
sqs_conn = boto.sqs.connect_to_region( region_name, profile_name=profile_name )

1 个答案:

答案 0 :(得分:0)

Boto能够从AWS元数据(使用角色启动Amazon EC2实例时使用)或本地凭据文件中读取凭据。

这里有很好的例子:

看起来它需要.boto文件中的凭据,而不是通常传递凭据的其他一些文件名。

确保您拥有最新版本的boto。在Linux上,执行:sudo pip install boto --upgrade