12
4

More than 5 years have passed since last update.

AWS Step Functionsを実行するためのIAM Policy

Posted at

Lambda関数からStep Functionsを実行させたいと思い、IAM Policyを設定しようとしたところ、2016年12月29日現在、Policy GeneratorにStep Functionsが含まれておらず、PolicyのActionの値をどう設定すれば良いかわかりませんでした。

結論としては下記のように、states:StartExecutionActionに設定すればStep Functionsが実行可能になりました。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "states:StartExecution",
            "Resource": "*"
        }
    ]
}

設定すべき値がstates:StartExecutionであることがわかったのは、Step Functionsを実行するためのLambda関数のIAM Roleに、Step Functionsの実行権限をつけていない状態で実行したときのエラーログからでした。

下記のようなログが出ていたので、必要な権限はstates:StartExecutionであると気づけました。

  • エラーログ
[AccessDeniedException: 
  User: arn:aws:sts::<アカウントID>:assumed-role/<Lambda関数名> 
  is not authorized to perform:
  states:StartExecution on resource: 
  arn:aws:states:ap-northeast-1:<アカウントID>:execution:
  <Step FunctionsのState Machine名>:xxxxxxxxxxxx] 
12
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
4