Problème d'autorisation de rôle AWS IAM

Sep 16 2020

Nous venons de créer un nouveau serveur Things Enterprise hébergé chez AWS sur une instance EC2 et de créer une application pour utiliser AWS IOT. Nous obtenons l'erreur suivante

"Message": "Utilisateur: arn: aws: sts :: 446971925991: assume-role / Things-Enterprise-Stack-Srv-StackIAMRole-DBHBSMSY05AQ / i-095895d605fab3fa4 n'est pas autorisé à effectuer: sts: AssumeRole sur la ressource: arn: aws : iam :: 446971925991: role / Bosh-Parking-IOT-Stack-TheThingsStackRoleCD9FBAD2-C44RRJJ53M93 "

On m'a dit

Quel est le rôle d'exécution de l'instance TTES qui tente d'assumer le rôle? Le rôle TTES doit pouvoir assumer ce rôle. Cela donnera les bonnes autorisations.

Mais je ne suis pas sûr de ce que cela signifie, je suppose que je dois ajouter / modifier certaines autorisations dans un rôle IAM. Quelqu'un peut-il me diriger dans la bonne direction Pls.

Réponses

1 Marcin Sep 16 2020 at 15:22

D'après le message d'erreur, il semble que votre rôle IAM pour Amazon EC2 ne dispose d' aucune autorisation pour assumer un rôleBosh-Parking-IOT-Stack-TheThingsStackRoleCD9FBAD2-C44RRJJ53M93 .

Pour ajouter manuellement ces autorisations, vous pouvez effectuer les opérations suivantes:

  1. Allez à IAM Console->Roles.
  2. Dans la Rolesfenêtre, vous pouvez utiliser la Searchbarre pour localiser le Things-Enterprise-Stack-Srv-StackIAMRole-DBHBSMSY05AQrôle.
  3. Une fois que vous avez trouvé le rôle, vous cliquez sur Ajouter une stratégie en ligne .
  4. Une fois la Create policyfenêtre affichée, vous pouvez accéder à JSON tabet ajouter la stratégie JSON suivante:
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "AllowAssumeRole",
            "Effect": "Allow",
            "Action": "sts:AssumeRole",
            "Resource": "arn:aws:iam::446971925991:role/Bosh-Parking-IOT-Stack-TheThingsStackRoleCD9FBAD2-C44RRJJ53M93"
        }
    ]
}
  1. Cliquez ensuite sur Review Policy, nommez la stratégie (par exemple PolicyToAssumeRole) etCreate policy

Cependant, en fonction des noms de vos stratégies (par exemple Stack-Srv-StackIAMRole), il est possible qu'elles aient été créées par CloudFormation . Si tel est le cas, changer manuellement les rôles comme décrit ci-dessus est une mauvaise pratique et entraînera une dérive . Toute modification des ressources créées par CloudFormation doit être effectuée à l'aide de CloudFormation . Malheureusement, votre question ne fournit aucun détail sur les modèles CloudFormation utilisés, il est donc difficile de commenter davantage.