Solucionar el Error de Parámetro Inválido al Registrar un Tema SNS para Notificaciones de SES

Resumen

Al migrar un servicio a una cuenta AWS nueva puede aparecer el error An invalid or out-of-range value was supplied for the input parameter al intentar configurar un tema SNS para notificaciones de SES como Bounce, Complaint o Delivery. Aunque el tema SNS se crea como Standard en la misma región de SES y la política de acceso permite ses.amazonaws.com con sns:Publish, el proceso falla hasta que se corrige la configuración de cifrado y permisos.

Problema y causa raíz

El problema habitual es una política de clave KMS insuficiente en la clave de cifrado asignada al tema SNS. Cuando se publica en un tema SNS cifrado, el servicio que publica en el tema, en este caso SES, necesita permisos para kms:GenerateDataKey y kms:Decrypt. Aunque SNS realiza el cifrado y descifrado real, SES debe poder invocar las llamadas a la API de KMS necesarias. Si se usa la clave administrada por AWS alias/aws/sns no es posible editar la política de la clave, por lo que SES carecerá de los permisos necesarios y se generará el error de parámetro inválido.

Solución

La solución práctica es crear una clave administrada por el cliente CMK y otorgar permisos explícitos a ses.amazonaws.com para las acciones kms:GenerateDataKey y kms:Decrypt. No es necesario pegar un JSON aquí, pero asegúrese de que la política de la CMK incluya una declaración que permita al principal del servicio ses.amazonaws.com ejecutar esas acciones sobre la clave. Luego asigne esa CMK al tema SNS. Tras aplicar estos cambios la configuración de notificaciones de SES debería completarse correctamente.

Recomendaciones operativas

Tenga en cuenta que las claves CMK generan costes adicionales. Para entornos de desarrollo puede no merecer la pena habilitar el cifrado del tema SNS; una estrategia equilibrada es usar cifrado solo en producción. Además, verifique siempre las políticas de recursos y los permisos de API entre servicios cuando opere con recursos cifrados en AWS.

Ejemplo de pasos a seguir

1. Crear una CMK en KMS. 2. Añadir una política que permita a ses.amazonaws.com las acciones kms:GenerateDataKey y kms:Decrypt sobre la clave. 3. Configurar el tema SNS para usar la CMK recién creada. 4. Probar la suscripción y el envío de notificaciones de SES.

Pensamientos finales

Este tipo de errores suele estar relacionado con permisos cruzados entre servicios y con el uso de claves gestionadas por AWS que no permiten modificaciones de política. Revisar con detalle las políticas KMS y las relaciones entre servicios evita horas de depuración. Si necesita soporte para arquitecturas en la nube, integración de notificaciones, o auditorías de permisos, nuestro equipo puede ayudarle.

Sobre Q2BSTUDIO

En Q2BSTUDIO somos una empresa de desarrollo de software y aplicaciones a medida especializada en soluciones cloud, inteligencia artificial y ciberseguridad. Ofrecemos servicios integrales que incluyen desarrollo de aplicaciones a medida y software a medida, consultoría en servicios cloud aws y azure, implementación de soluciones de inteligencia de negocio y Power BI, y proyectos de ia para empresas con agentes IA personalizados. Si busca migrar infraestructuras, asegurar comunicaciones entre servicios AWS o diseñar pipelines seguros y escalables, podemos acompañarle durante todo el proceso.

Conozca más sobre nuestros servicios cloud y cómo le ayudamos a implementar soluciones seguras y escalables en la nube servicios cloud aws y azure

Palabras clave

aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, agentes IA, power bi