AWS-SSM 自动化文档:是否可以将 StringList 输出作为负载发送到 Lambda?
AWS-SSM Automation Documents: Is it possible to send a StringList output to a Lambda as payload?
在 SSM 自动化文档中,我试图将一个步骤的 StringList 输出作为输入负载发送到另一个步骤中的 Lambda。我已经确保输出实际上是一个 StringList,但是当它作为 Lambda 的输入接收时,它仅作为列表中的一项(第一项)接收。知道为什么会这样吗?
mainSteps:
- name: GetUserInlinePolicies
action: 'aws:executeAwsApi'
inputs:
Service: iam
Api: list_user_policies
UserName: '{{UserName}}'
outputs:
- Name: InlinePolicies
Selector: $.PolicyNames
Type: StringList
- name: RemoveUserPolicies
action: 'aws:invokeLambdaFunction'
maxAttempts: 1
timeoutSeconds: 500
inputs:
FunctionName: remove-user-inline-policies
Payload: '{"userName":"{{UserName}}", "policies":"{{GetUserInlinePolicies.InlinePolicies}}}"'
isEnd: true
我仍然无法将字符串列表作为 JSON 有效负载输入中的参数发送。但是,我能够在 Input Payload 下成功发送它,如下所示:
inputs:
FunctionName: remove-user-inline-policies
InputPayload:
userName: '{{UserName}}'
policies: '{{GetUserInlinePolicies.InlinePolicies}}'
在 SSM 自动化文档中,我试图将一个步骤的 StringList 输出作为输入负载发送到另一个步骤中的 Lambda。我已经确保输出实际上是一个 StringList,但是当它作为 Lambda 的输入接收时,它仅作为列表中的一项(第一项)接收。知道为什么会这样吗?
mainSteps:
- name: GetUserInlinePolicies
action: 'aws:executeAwsApi'
inputs:
Service: iam
Api: list_user_policies
UserName: '{{UserName}}'
outputs:
- Name: InlinePolicies
Selector: $.PolicyNames
Type: StringList
- name: RemoveUserPolicies
action: 'aws:invokeLambdaFunction'
maxAttempts: 1
timeoutSeconds: 500
inputs:
FunctionName: remove-user-inline-policies
Payload: '{"userName":"{{UserName}}", "policies":"{{GetUserInlinePolicies.InlinePolicies}}}"'
isEnd: true
我仍然无法将字符串列表作为 JSON 有效负载输入中的参数发送。但是,我能够在 Input Payload 下成功发送它,如下所示:
inputs:
FunctionName: remove-user-inline-policies
InputPayload:
userName: '{{UserName}}'
policies: '{{GetUserInlinePolicies.InlinePolicies}}'