Saltar al contenido

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

2 minutos de lectura
0

He intentado agregar suscriptores a un tema de Amazon Simple Notification Service (Amazon SNS), pero he recibido un error de autorización de AWS Identity and Access Management (IAM).

Descripción corta

Cuando una entidad de IAM intenta agregar una suscripción a un tema de Amazon SNS sin permisos de acción de la API Subscribe, SNS devuelve el siguiente error:

"An error occurred (AuthorizationError) when calling the Subscribe operation: User: your_IAM_user_or_role is not authorized to perform: sns:Subscribe on resource: YOUR_SNS_TOPIC_ARN"

Nota: Consulta tu mensaje de error específico para determinar si el error proviene de una política basada en la identidad o en una política basada en recursos.

Para resolver este error, concede permiso a la entidad de IAM para ejecutar la acción de la API Subscribe en el tema de Amazon SNS.

Resolución

Para conceder permiso a la entidad de IAM para ejecutar la acción de la API Subscribe en el tema de Amazon SNS, sigue estos pasos:

Acceso entre cuentas

Si la entidad de IAM está en una cuenta cruzada de AWS para su tema de SNS, sigue estos pasos:

  1. Adjunta la siguiente política basada en la identidad a la entidad de IAM que permita a la entidad ejecutar la acción de la API sns:Subscribe:

    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Sid": "SNSSubscribePermission",
                "Effect": "Allow",
                "Action": "sns:Subscribe",
                "Resource": "YOUR_SNS_TOPIC_ARN"
            }
        ]
    }

    Nota: Sustituye YOUR_SNS_TOPIC_ARN por el nombre de recurso de Amazon (ARN) de tu tema de Amazon SNS.

  2. Adjunta la siguiente política basada en recursos a la política de acceso de tu tema que permita a la entidad de IAM ejecutar la acción de la API sns:Subscribe:

    {
        "Sid": "AllowIAMEntity",
        "Effect": "Allow",
        "Principal": {
            "AWS": "YOUR_IAM_ENTITY_ARN "
        },
        "Action": "sns:Subscribe",
        "Resource": "YOUR_SNS_TOPIC_ARN"
    }

    Nota: Sustituye YOUR_IAM_ENTITY_ARN por el ARN de tu entidad de IAM. Sustituye YOUR_SNS_TOPIC_ARN por el ARN de tu tema de Amazon SNS.

Acceso a la misma cuenta

Si la entidad de IAM está en la misma cuenta de AWS que tu tema de SNS, adjunta una política para conceder el permiso a la acción sns:Subscribe. Adjunta una política basada en la identidad o una política basada en recursos de los pasos anteriores.

Información relacionada

Uso de políticas basadas en identidades con Amazon SNS

OFICIAL DE AWSActualizada hace 6 meses