Come posso aggiornare la mia politica di accesso SQS per applicare l'accesso con privilegi minimi?

2 minuti di lettura
0

Per isolare gli attacchi dannosi, voglio limitare l'accesso al mio endpoint VPC per la mia coda Amazon Simple Queue Service (Amazon SQS). Desidero negare l'accesso da altri endpoint VPC e limitare le autorizzazioni all'origine degli eventi della funzione AWS Lambda.

Risoluzione

Per proteggere la coda SQS, applica i principi del minimo privilegio alla tua politica di accesso SQS. Puoi isolare eventuali attacchi dannosi nella tua coda autorizzando le richieste solo da un endpoint VPC specificato e da una funzione Lambda specificata con mappatura della fonte degli eventi. È possibile proteggere la coda e isolare gli attacchi implementando la seguente politica di accesso SQS:

{
  "Version": "2012-10-17",
  "Id": "default_policy_ID",
  "Statement": [
    {
      "Sid": "owner_statement",
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam:XXXXXXX:root"
      },
      "Action": "SQS:*",
      "Resource": "arn:aws:sqs:us-east-1:XXXXXXXX:test.fifo"
    },
    {
      "Sid": "RestrictSendReceiveToVpce",
      "Effect": "Deny",
      "Principal": "*",
      "Action": [
        "sqs:SendMessage",
        "sqs:ReceiveMessage",
        "sqs:DeleteMessage",
        "sqs:DeleteQueue",
        "sqs:PurgeQueue"
      ],
      "Resource": "arn:aws:sqs:us-east-1: XXXXXX:test.fifo",
      "Condition": {
        "ArnNotEquals": {
         "aws:PrincipalArn": "Lambda execution role arn"
        },
        "StringNotEquals": {
          "aws:SourceVpce": "vpce-XXXXX"
        }
      }
    }
  ]
}

Questa politica di accesso SQS effettua le seguenti operazioni:

  • Se l'endpoint VPC non è quello di aws:sourceVpce fornito al momento della richiesta, la policy nega i messaggi client inviati alla coda SQS.
  • Quando il ruolo di esecuzione della funzione Lambda non è PrincipalArn, la policy nega l'autorizzazione della funzione Lambda.

Le condizioni ArnNotEquals e StringNotEquals nella politica utilizzano la logica di valutazione OR. Se una delle due affermazioni è vera, la richiesta sarà consentita.

Per ulteriori informazioni sulla logica di valutazione delle condizioni, vedere Creazione di una condizione con più chiavi o valori.


Informazioni correlate

Tutorial: Invio di un messaggio a una coda Amazon SQS da Amazon Virtual Private Cloud

AWS UFFICIALE
AWS UFFICIALEAggiornata 2 anni fa