web-dev-qa-db-fra.com

Non autorisé à assumer le rôle fourni

Je suis le tutoriel AWS Step Functions . L'ensemble du processus de la machine d'état est comme ça.

enter image description here

J'ai un rôle appelé step_functions_basic_execution avec la politique AWSLambdaRole. La machine d'état de ma fonction Step utilise ce rôle.

Ma fonction de pas est

{
  "Comment": "A simple AWS Step Functions state machine that automates a call center support session.",
  "StartAt": "Open Case",
  "States": {
    "Open Case": {
      "Type": "Task",
      "Resource": "arn:aws:lambda:us-west-2:829495130000:function:OpenCaseFunction",
      "Next": "Assign Case"
    }, 
    ...
}

La fonction Lambda correspondante Open Case est

exports.handler = (event, context, callback) => {
    // Create a support case using the input as the case ID, then return a confirmation message   
   var myCaseID = event.inputCaseID;
   var myMessage = "Case " + myCaseID + ": opened...";   
   var result = {Case: myCaseID, Message: myMessage};
   callback(null, result);    
};

Lorsque j'ai essayé de l'exécuter, il a échoué à la première étape Open Case .

L'entrée est

{
  "inputCaseID": "001"
}

Cela génère une erreur:

States.TaskFailed

Ni le principal du service global states.amazonaws.com, ni le principal régional n'est autorisé à assumer le rôle fourni.

Toute idée de comment résoudre ce problème? Merci

5
Hongbo Miao

Vérifiez tout à partir des étapes 2, 3 et 4 de cette page. Malheureusement, le message d'erreur n'est pas suffisamment détaillé pour que nous sachions exactement ce qui se passe, mais c'est quelque chose avec la configuration d'IAM.

1
Joel Kinzel