¿Cómo puedo resolver un «error de autorización» al intentar ver o modificar los atributos de la suscripción SQS de una cuenta cruzada en la consola de Amazon SNS?

3 minutos de lectura
0

He suscrito mi Amazon Simple Queue Service (Amazon SQS) a un tema de Amazon Simple Notification Service (Amazon SNS) en una cuenta diferente de AWS. Al ver o editar los atributos de la suscripción de mi cuenta cruzada desde la consola de Amazon SNS, aparece un «error de autorización» que debo resolver.

Descripción breve

Si crea una suscripción a un tema de SNS para una cola de SQS desde una cuenta que no es la propietaria del tema, la cuenta propietaria de la cola de SQS será la propietaria de la suscripción. Si después ve o edita los atributos de suscripción de SNS en la cuenta que creó el tema de SNS, aparecerá un error de autorización.

**Nota:**Los permisos de visualización y edición relacionados con la suscripción no se pueden incluir en las acciones de la política temática de SNS. En su lugar, utilice las siguientes soluciones.

Resolución

Utilizar la Consola de AWS

  1. Abra la consola de Amazon SNS en la cuenta propietaria del tema SNS.
  2. En el panel de navegación, seleccione Temas.
  3. Elija el nombre del tema. A continuación, en la pestaña Suscripciones, copie el ID de suscripción de la suscripción de la cola SQS.
  4. Abra la consola de Amazon SNS en la cuenta propietaria de la cola de SQS.
  5. En la opción del menú Suscripciones, seleccione ID de suscripción que copió en el paso 3.
  6. Vea y edite los atributos de la suscripción según sea necesario.

Utilizar GetSubscriptionAttributes

Nota: Si recibe errores al ejecutar los comandos de la Interfaz de la línea de comandos de AWS (AWS CLI), asegúrese de utilizar la versión más reciente de la AWS CLI.

Vea los atributos de la suscripción mediante GetSubscriptionAttributes en la cuenta que se usó para crear la suscripción mediante la Interfaz de la línea de comandos de AWS (AWS CLI) o el SDK. Para ejecutar este comando, el usuario o rol de IAM debe tener permisos para las acciones de SNS SetSubscriptionAttributes y GetSubscriptionAttributes.

En el siguiente ejemplo, se utilizan los GetSubscriptionAttributes de la CLI de AWS y se utiliza SubscriptionArn como parámetro de solicitud. Para recuperar SubscriptionArn, utilice 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"
   }
}

Eliminar y volver a crear la suscripción

Si desea que la cuenta de AWS propietaria del tema de SNS controle los atributos de la suscripción al tema de SNS:

  1. Elimine la suscripción existente.
  2. Cree la misma suscripción desde la cuenta propietaria del tema de SNS.

La cuenta de AWS que posee el tema de SNS ahora es la propietaria del recurso de suscripción creado.

Información relacionada

¿Cómo puedo volver a crear una suscripción de temas de Amazon SNS «eliminada» para una cola de Amazon SQS en otra cuenta de AWS?

¿Cómo puedo resolver los errores de autorización al intentar añadir suscriptores a un tema de Amazon SNS?

¿Cómo puedo resolver los errores HTTP 400 «AccessDeniedException» de Amazon SNS?

¿Cómo puedo hacer que mi suscripción a Amazon SQS reciba correctamente una notificación de mi tema de Amazon SNS?

¿Por qué aparece un error de autorización cuando intento suscribir mi función Lambda a mi tema de Amazon SNS?

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace 2 años