Come posso risolvere un "errore di autorizzazione" quando tento di visualizzare o modificare gli attributi di una sottoscrizione SQS tra account nella console Amazon SNS?

Ultimo aggiornamento: 29/07/2022

Ho sottoscritto la mia coda Amazon Simple Queue Service (Amazon SQS) a un argomento Amazon Simple Notification Service (Amazon SNS) in un altro account AWS. Quando visualizzo o modifico gli attributi della mia sottoscrizione tra account dalla console Amazon SNS, ricevo un "errore di autorizzazione". Come si corregge questo problema?

Breve descrizione

Se crei una sottoscrizione di argomenti SNS per una coda SQS da un account che non è proprietario dell'argomento, la sottoscrizione è di proprietà dell'account proprietario della coda SQS. Se successivamente visualizzi o modifichi gli attributi di sottoscrizione SNS nell'account che ha creato l'argomento SNS, viene visualizzato un errore di autorizzazione.

Nota: le autorizzazioni relative alla sottoscrizione per la visualizzazione e la modifica non possono essere incluse nelle operazioni della policy dell'argomento SNS. Utilizza invece le seguenti soluzioni.

Risoluzione

Utilizzo della console AWS

  1. Apri la console Amazon SNS nell'account proprietario dell'argomento SNS.
  2. Nel riquadro di navigazione, scegli Topics (Argomenti).
  3. Scegli il nome dell'argomento. Quindi, dalla scheda Subscriptions (Sottoscrizioni), copia il valore Subscription ID (ID sottoscrizione) della sottoscrizione alla coda SQS.
  4. Apri la console Amazon SNS nell'account proprietario della coda SQS.
  5. Nell'opzione del menu Subscriptions (Sottoscrizioni), scegli il valore Subscription ID (ID sottoscrizione) copiato nel passaggio 3.
  6. Visualizza e modifica gli attributi della sottoscrizione secondo le tue necessità.

Utilizzo di GetSubscriptionAttributes

Nota: se ricevi messaggi di errore durante l'esecuzione dei comandi dell'interfaccia della linea di comando AWS (AWS CLI), assicurati di utilizzare la versione più recente di AWS CLI.

Visualizza gli attributi della sottoscrizione utilizzando GetSubscriptionAttributes nell'account utilizzato per creare la sottoscrizione tramite l'Interfaccia della linea di comando AWS (AWS CLI) o l'SDK. Per eseguire questo comando, l'utente o il ruolo IAM deve disporre delle autorizzazioni per le operazioni SNS SetSubscriptionAttributes e GetSubscriptionAttributes.

L'esempio seguente utilizza GetSubscriptionAttributes di AWS CLI, utilizzando SubscriptionArn come parametro di richiesta. Per recuperare SubscriptionArn, utilizza ListSubscriptionsByTopic.

aws sns get-subscription-attributes --subscription-arn arn:aws:sns:eu-central-1:1234567890:TestTopicSubOwnerSQS:53XXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
{
  "Attributes": {
    "Owner": "9876543210",
    "RawMessageDelivery": "false",
    "TopicArn": "arn:aws:sns:eu-central-1:1234567890:TestTopicSubOwnerSQS",
    "Endpoint": "example@amazon.com",
    "Protocol": "email",
    "PendingConfirmation": "false",
    "ConfirmationWasAuthenticated": "false",
    "SubscriptionArn": "arn:aws:sns:eu-central-1:1234567890:TestTopicSubOwnerSQS:53XXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"
   }
}

Eliminazione e ricreazione della sottoscrizione

Se desideri che l'account AWS proprietario dell'argomento SNS controlli gli attributi della sottoscrizione dell'argomento SNS:

  1. Elimina la sottoscrizione esistente.
  2. Crea la stessa sottoscrizione dall'account proprietario dell'argomento SNS.

L'account AWS proprietario dell'argomento SNS è ora il proprietario della risorsa di sottoscrizione creata.


Questo articolo è stato utile?


Benötigen Sie Hilfe zur Fakturierung oder technischen Support?