Salta al contenuto

Come posso risolvere i problemi di accesso a una coda Amazon SQS con una policy della coda Deny?

3 minuti di lettura
0

Ho perso l'accesso alla mia coda Amazon Simple Queue Service (Amazon SQS) a causa di una policy della coda Deny.

Breve descrizione

L'esempio seguente di policy Deny nega a tutte le entità AWS Identity and Access Management (AWS IAM) l'accesso a tutte le azioni di una coda Amazon SQS:

{  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "deny-sqs-actions",
      "Effect": "Deny",
      "Principal": "*",
      "Action": "SQS:*",
      "Resource": "queueNameArn"
    }
  ]
}

Risoluzione

Risolvi i problemi di accesso a una coda SQS

Se hai perso l'accesso a una coda con policy Deny, completa i seguenti passaggi:

  1. Utilizza l'utente root dell'account AWS per accedere alla coda. Le credenziali dell'utente root consentono l'accesso completo a tutte le risorse dell'account. Puoi utilizzare l'account utente root per rimuovere una policy Deny associata alla coda.
  2. Se la politica Deny limita entità specifiche, prova ad accedere con le entità escluse dalla policy.
    Nota: verifica che le entità escluse abbiano le autorizzazioni necessarie per accedere alla coda.
  3. Utilizza la policy gestita da AWS SQSUnlockQueuePolicy dall'account di gestione di AWS Organizations.

Evita di perdere l'accesso alla coda SQS

Le seguenti best practice ti aiutano a evitare di perdere l'accesso alla coda:

Esempio di policy con istruzioni Allow e Deny:

{   "Version": "2012-10-17",
   "Id": "Queue1_Policy_UUID",
   "Statement": [{
      "Sid":"Queue1_Allow_Access",
      "Effect": "Allow",
      "Principal": {"AWS": "arn:aws:iam::111122223333:user/User1"},
      "Action": "sqs:*",
      "Resource": "queueNameArn"
   }, {
      "Sid":"Queue1_Deny_Access",
      "Effect": "Deny",
      "NotPrincipal": {"AWS": "arn:aws:iam::111122223333:user/User1"},
      "Action": "sqs:*",
      "Resource": "queueNameArn"
   }]
}

L'esempio di policy precedente consente all'utente IAM User1 di accedere a tutte le azioni di Amazon SQS sulla coda SQS specificata. Questa policy nega inoltre l'accesso alla coda a tutti i principali tranne User1.

Nota: l'elemento NotPrincipal nella policy Deny esclude il principale specificato. L'istruzione Allow concede le autorizzazioni di accesso al principale escluso.

Contatta il Supporto AWS se non riesci ad accedere alla coda SQS

Se non riesci a utilizzare le credenziali dell'utente root o non conosci le entità escluse dalla policy Deny, contatta il Supporto AWS. Crea una richiesta di assistenza e includi le seguenti informazioni:

  • Verifica di aver utilizzato le credenziali dell'utente root per tentare di accedere alla coda. Includi il motivo per cui non puoi utilizzare le credenziali dell'utente root o perché le credenziali dell'utente root non hanno risolto il problema.
  • Verifica di non poter utilizzare la policy gestita da AWS SQSUnlockQueuePolicy e includi il motivo.
  • Verifica di essere il proprietario della coda.
  • Fornisci un motivo dettagliato per cui hai bisogno di accedere alla coda.

Informazioni correlate

Panoramica sulla gestione degli accessi in Amazon SQS