Verifica las solicitudes

Las solicitudes que se realizan a tu webhook de conversación se firman con un token de autorización en el encabezado con el siguiente formato:

google-assistant-signature: "<JWT token>"

El token de autenticación sigue el formato de token web JSON, donde el valor del campo de público es igual al ID del proyecto de la Consola de Actions la aplicación. Para verificar la firma, descomprime el token y asegúrate de que el campo de público coincide con el ID del proyecto de la app. Puedes hacer esto con una clave biblioteca de credenciales, como el cliente de Node.js de las APIs de Google, o usa directamente la biblioteca cliente de Node.js de Actions on Google ConversationOptions#verification, como se muestra en el siguiente fragmento de código:

const {conversation} = require('@assistant/conversation');

const app = conversation({verification: 'nodejs-cloud-test-project-1234'});
// HTTP Code 403 will be thrown by default on verification error per request.

El formato de JWT tendrá el siguiente formato:

{
  "iss": "https://accounts.google.com"
  "aud": [project-id],
  "nbf": number,
  "iat": number,
  "exp": number,
  "jti": string
}