¿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?
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
- Abra la consola de Amazon SNS en la cuenta propietaria del tema SNS.
- En el panel de navegación, seleccione Temas.
- 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.
- Abra la consola de Amazon SNS en la cuenta propietaria de la cola de SQS.
- En la opción del menú Suscripciones, seleccione ID de suscripción que copió en el paso 3.
- 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:
- Elimine la suscripción existente.
- 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 resolver los errores HTTP 400 «AccessDeniedException» de Amazon SNS?
Vídeos relacionados
Contenido relevante
- OFICIAL DE AWSActualizada hace un año
- OFICIAL DE AWSActualizada hace 9 meses
- OFICIAL DE AWSActualizada hace 3 años
- OFICIAL DE AWSActualizada hace un año