小编Mat*_*att的帖子

Step Function 中的嵌套 Step Function:未知错误:“...无权创建托管规则”

我在 SAM/CloudFormation 模板中创建了一个 Step Function(父),它调用另一个 Step Function(子)。我正在按照使用服务集成模式从 Parent 调用 Child 的说明进行操作。但是我遇到了一个与 IAM 相关的(我认为)错误,我在通过 CLI 部署时无法解决。(错误显示在 CLI 输出中,因此它从未真正进入 AWS。之前有很多部署,因此changeset只是尝试使用此部署修改 Step Function。)

'arn:aws:iam::{Account-Number}:role/{Parent-Step-Function-Role-Name}' is not authorized to create managed-rule. (Service: AWSStepFunctions; Status Code: 400; Error Code: AccessDeniedException; Request ID: {Long-Id-Number})

为了获得我想要的同步行为(父调用子,等待子的执行完成,然后移动到下一个状态)我使用建议(来自上面的服务集成模式链接)创建一个任务(在我的 SAM 模板中)如下所示:

...More States...

"Call Child State": {
  "Type": "Task",
  "Next": "The Next State",
  "Resource": "arn:aws:states:::states:startExecution.sync",
  "Parameters": {  
    "Input": {
      "comment": "Hello World!"
    },
    "StateMachineArn": "${ChildStepFunction}",
    "Name": "ChildExecutionFromParent"
  }
},

...More States...
Run Code Online (Sandbox Code Playgroud)

我已经为 Parent 定义了 IAM …

amazon-web-services aws-cloudformation amazon-iam aws-step-functions aws-sam

18
推荐指数
2
解决办法
7229
查看次数