AWS ssm create_activation api因正则表达式错误而失败

时间:2019-08-12 07:16:33

标签: python amazon-web-services boto3 ssm

我试图使用boto3 api调用在ssm Manager上激活AWS ec2实例,但是它失败并出现正则表达式错误。

问题已经在https://github.com/aws/aws-sdk-js/issues/2748提出,但找不到适当的解决方案

=QUERY(SORTN(SORT(A2:E, 1, 0), ROWS(A:A), 2, 2, 1), "select Col5,Col3", 0)
  

回溯(最近一次通话最后一次):文件“”,第1行,在      文件   “ /usr/local/lib/python2.7/dist-packages/botocore/client.py”,第320行,   在_api_call中       返回self._make_api_call(operation_name,kwargs)文件“ /usr/local/lib/python2.7/dist-packages/botocore/client.py”,第623行,   在_make_api_call中       引发error_class(parsed_response,operation_name)botocore.exceptions.ClientError:发生错误   (ValidationException)调用CreateActivation操作时:1   检测到验证错误:值   'iamRole'中的'arn:aws:iam :: xxxxxxxx:role / my-role-name'失败   满足约束:成员必须满足正则表达式模式:   ^ [\ p {L} \ p {N} + =,。@ -_ /] * $

尽管我已经复制了IAM角色ARN。

如果有人对此有解决方案,我真的很感激。

1 个答案:

答案 0 :(得分:0)

IamRole参数需要角色名称,而不是ARN。您应将arn:aws:iam::xxxxxxx:role/my-role-name替换为my-role-name

response = client.create_activation(DefaultInstanceName='my-instance-name',
                                    IamRole='my-role-name')