web-dev-qa-db-fra.com

Créer un rôle IAM uniquement avec une stratégie de cloudformation gérée

J'essaie de créer un rôle IAM avec la stratégie gérée existante:

"SomeRole": 
        {
            "Type": "AWS::IAM::Role",
            "Properties": 
            {
                "AssumeRolePolicyDocument": {},
                "ManagedPolicyArns": 
                [
                    "arn:aws:iam::aws:policy/AmazonKinesisReadOnlyAccess",
                    "arn:aws:iam::aws:policy/AmazonDynamoDBFullAccess",
                    "arn:aws:iam::aws:policy/CloudWatchFullAccess"
                ],

                "RoleName": "SomeRole"
            }
        },

Mais il échoue avec erreur: erreur de syntaxe à la position (1,3)

10
Vivek Goel

Il semble que vous devez avoir une certaine valeur dans le AssumeRolePolicyDocument.

Essayez avec celui-ci.

{
  "Resources": {
    "NewRole": {
      "Type": "AWS::IAM::Role",
      "Properties": {
        "AssumeRolePolicyDocument": {
          "Version": "2012-10-17",
          "Statement": [
            {
              "Effect": "Allow",
              "Principal": {
                "Service": [
                  "ec2.amazonaws.com"
                ]
              },
              "Action": [
                "sts:AssumeRole"
              ]
            }
          ]
        },
        "ManagedPolicyArns": [
          "arn:aws:iam::aws:policy/AmazonKinesisReadOnlyAccess",
          "arn:aws:iam::aws:policy/AmazonDynamoDBFullAccess",
          "arn:aws:iam::aws:policy/CloudWatchFullAccess"
        ]
      }
    }
  }
}
18
Ravindra Godbole