2017-08-21 34 views
0

私はPythonでLambdaを使って書いた簡単なステップ関数を呼び出そうとしています。私は、この目的PythonのLambdaからAWSステップ関数を呼び出す

client = boto3.client('stepfunctions') 
    response = client.start_execution(
     stateMachineArn='aws:states:.......', 
     name='dev-hassan-pipeline-sf', 
     input= json.dumps(returnVal) 
    ) 

ためboto3使用していると私は私が私のラムダにこの役割を割り当てる

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

「AWSStepFunctionsFullAccess」ポリシーを持っているIAMロールを作成しましたが、私は、ラムダを実行したときに私が取得します次のエラー

An error occurred (AccessDeniedException) when calling the StartExecution operation: User: arn:aws:sts::xxxxxxxx:assumed-role/dev-hassan-role1/dev-hassan-pipeline-lambda is not authorized to access this resource: ClientError 

DEV-ハッサン・パイプライン・ラムダ私のラムダの名前とDEV-ハッサンROLE1が

私の役割名です

ここで助けてもらえますか?間違っているのは何ですか?Lambdaのステップ関数を呼び出す際に、必要な権限を与えてもらえない理由を教えてください。

答えて

1

私は間違いを発見した、私は間違ったARNを使用していた。私が使っていたARNを使用するステップ関数 正しいARNの特定の実行のためだった私は、Web UIのステート・マシンのためのARNを見つけるcouldntのこと、

arn:aws:states:us-east-1:xxxxxxxx:stateMachine:dev-hassan-pipeline-sf 

その実際には驚くべきことです。私はいくつかのサンプルコードを見ると私の間違いを理解しました。私はARNがステートマシンではなく実行されていることに気付きました。

私はちょうど実現

は、私も、私はすでに必要な権限を持つロールを作成し、それを割り当てられているこの質問

0

AWSのIAMで権限を修正できます。必要な権限を持つロールを作成し、ラムダ関数を作成する際に、上記の作成されたIAMロールを参照することができます。

あなたのアクセス権の問題を解決する希望:

乾杯!

+0

全体ARNを投稿しませんでした。私は質問の役割を述べました –

関連する問題