Definição de política AWSLambdaExecute

7

Prefácio: não estou pedindo ajuda para configuração. Meu caso de uso está coberto e funcionando bem. Esta é uma questão teórica.

Na AWS, há uma política chamada AWSLambdaExecute , que é definida da seguinte forma:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [ "logs:*" ],
      "Resource": "arn:aws:logs:*:*:*"
    },
    {
      "Effect": "Allow",
      "Action": [ "s3:GetObject", "s3:PutObject" ],
      "Resource": "arn:aws:s3:::*"
    }
  ]
}

Esta definição me diz:

  • Acesso total a todos os registros
  • É possível fazer o download / upload para o S3.

Qual é o raciocínio por trás disso? Por que eles estão falando sobre o S3? (Minha chamada lambda em particular não tem nada a ver com o S3.) Conhecemos alguma documentação detalhada sobre políticas predefinidas além das descrições de uma linha de cada uma?

    
por Notinlist 07.07.2015 / 09:45

1 resposta

4

Se sua função não tem nada a ver com o S3, não use essa política gerenciada. Tanto quanto eu posso ver esta política é usada na documentação em combinação com um tutorial sobre como usar o Lambda com o Amazon S3.

Fonte: link

Se você quiser usar uma política gerenciada, recomendo usar AWSLambdaBasicExecutionRole , que parece conter apenas o mínimo:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "logs:CreateLogGroup",
        "logs:CreateLogStream",
        "logs:PutLogEvents"
      ],
      "Resource": "*"
    }
  ]
}
    
por 22.05.2017 / 10:45