amazon web services - notification - Amazon SNS: "Las credenciales de la plataforma no son válidas" al volver a ingresar una clave de la API de GCM que anteriormente funcionaba
aws sns (4)
Hemos estado utilizando Amazon SNS para enviar notificaciones push de Android desde abril de este año.
Los envíos se han enviado sin problemas, sin embargo, nunca ha habido ningún registro de llamadas a la API de Cloud Messaging en la consola de la nube (parece extraño?).
Hoy creé una nueva clave de API para el servicio de mapa estático (no relacionado) y renombré nuestra clave API de mensajería en la nube (solo el nombre, la clave es la misma). A partir de este punto, no se han enviado solicitudes, e intentar crear una nueva aplicación de plataforma (o actualizar la existente) en AWS genera:
Parámetro no válido: Atributos Motivo: las credenciales de la plataforma no son válidas (Servicio: AmazonSNS; Código de estado: 400; Código de error: Parámetro no válido; ID de la solicitud :)
También intenté realizar llamadas manualmente al https://gcm-http.googleapis.com/gcm/send punto final utilizando la clave que da como resultado No autorizado (401).
Curiosamente, puedo hacer llamadas al punto final anterior usando la clave que creé hoy, sin embargo fallan en MismatchSenderId.
No puedo ver muchas de las opciones anteriores que Cloud Console tenía (claves de servidor / navegador, etc.) dentro del Administrador de API.
Para aquellos que comienzan un nuevo proyecto y se preguntan por qué aún no es válido, asegúrese de que la Key restriction
la aplicación esté configurada para Android apps
. En mi caso, solo estaba configurado en None
y cuando cambié a las aplicaciones de Android, funcionó después de 5 a 10 minutos después de actualizarlo. Deberá agregar el nombre de su paquete y la huella digital del certificado SHA-1.
He estado recibiendo el mismo error al crear la aplicación de la plataforma Amazon SNS:
Invalid parameter: Attributes Reason: Platform credentials are invalid (Service: AmazonSNS; Status Code: 400; Error Code: InvalidParameter; Request ID:)
Después de contactar al soporte de Firebase como lo sugirió Diego, esta es la respuesta que recibí de Google:
Espero que estés bien y gracias por contactarnos.
No estoy realmente familiarizado con Amazon SNS y parece que su integración sigue siendo con GCM, no con FCM. Si la implementación de su aplicación todavía es GCM, entonces debe migrar con FCM para usar la clave del servidor en la consola. Vea las instrucciones aquí .
Además, Firebase ha actualizado las claves del servidor a una nueva versión. Recomendamos usar la clave del servidor en lugar de la clave del servidor heredado.
Espero que esto ayude. Avíseme si tiene alguna otra inquietud. Gracias.
Esto indica que tendremos que cambiar nuestro código de aplicación. Pudimos hacer que esto funcionara para otra aplicación en nuestra organización al crear un nuevo proyecto de base de datos y usar la clave del servidor Legacy con Amazon SNS.
En algún momento definitivamente actualizaremos a usar FCM, pero por el momento tenemos una fecha límite ajustada.
Actualización: Entonces, finalmente, lo que funcionó para nosotros es usar la ''Clave del servidor'' en Configuración del proyecto -> Mensajería en la nube. La aplicación todavía usa la implementación de GCM. Amazon SNS está contento con esta clave y generó una aplicación push de la plataforma GCM. ¡Los empujones funcionan! Todavía está confundido acerca de por qué la ''Clave del servidor heredada'' no funciona para una aplicación, pero está bien para la otra. Pero no estoy profundizando en eso más.
Para aquellos que se enfrentan a esto en 2017, aquí va un consejo:
1 - Vaya a la consola de su base de firebase ( https://console.firebase.google.com/ ) haga clic en su proyecto (que desea usar para las notificaciones push)
2 - Haga clic en los "tres puntos" en el lado derecho del nombre de su proyecto y haga clic en "Configuración"
3 - Haga clic en "CLOUD MESSAGING" en las pestañas del encabezado
4 - Copia la "Clave del servidor" (esta es más grande que tu clave API)
5 - Pegue en la entrada "Clave de API" del formulario de AWS para "Crear aplicación de plataforma"
PD: tenga en cuenta que esto es válido solo para notificaciones automáticas de GCM.
La gestión de claves API para GCM se ha movido a Firebase Console. Puede crear un nuevo proyecto de Firebase (o importar un proyecto en la nube existente) y debe obtener una nueva clave de servidor para Cloud Messaging.
ver la documentación actualizada:
https://developers.google.com/cloud-messaging/android/client#create-an-api-project
y la pregunta de desbordamiento de pila: ¿Dónde puedo encontrar la clave de API para Firebase Cloud Messaging?
si todavía tiene problemas, póngase en contacto con:
https://firebase.google.com/support/contact/troubleshooting