Проверка запросов

Запросы к вашему диалоговому вебхуку подписываются токеном авторизации в заголовке в следующем формате:

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

Токен аутентификации имеет формат JSON Web Token , где значение поля аудитории равно идентификатору проекта консоли Actions для приложения. Чтобы проверить подпись, распакуйте токен и убедитесь, что поле аудитории соответствует идентификатору проекта для приложения. Это можно сделать с помощью библиотеки учетных данных, совместимой с JWT, например клиента Google API Node.js , или напрямую с помощью параметра ConversationOptions#verification Действия в клиентской библиотеке Google Node.js, как показано в следующем фрагменте кода:

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.

Формат JWT будет иметь следующий формат:

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