Политика IAM облачной информации - PullRequest
0 голосов
/ 22 декабря 2018

Я запутался, как включить политику в свой шаблон Cloudformation, чтобы разрешить

Приведенный ниже шаблон Cloudformation создает роль, которая позволяет выполнять мою функцию Lambda.Теперь мне нужно добавить политику, которая позволяет API выполнять функцию Lambda.Из документации AWS я понимаю, что должен добавить следующую политику, но мне неясно, как добавить ее в шаблон, который у меня есть.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "execute-api:Invoke"
      ],
      "Resource": [
        "arn:aws:execute-api:us-east-1:*:a123456789/test/POST/mydemoresource/*"
      ]
    }
  ]
}

Это мой текущий шаблон

  LambdaServiceRole:
        Type: AWS::IAM::Role
        Properties:
          AssumeRolePolicyDocument:
            Version: '2012-10-17'
            Statement:
            - Effect: Allow
              Principal:
                Service:
                - lambda.amazonaws.com
              Action: sts:AssumeRole
          ManagedPolicyArns:
          - "arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
          Path: "/"

1 Ответ

0 голосов
/ 22 декабря 2018

Полагаю, вы захотите, чтобы действие для AssumeRolePolicyDocument было списком.

LambdaServiceRole:
  Type: AWS::IAM::Role
  Properties:
    AssumeRolePolicyDocument:
      Version: '2012-10-17'
      Statement:
      - Effect: Allow
        Principal:
          Service:
          - lambda.amazonaws.com
        Action: 
          - sts:AssumeRole
    ManagedPolicyArns:
    - "arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
    Path: "/"
...