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

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

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

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

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
}