系統會使用授權權杖簽署對對話式 Webhook 的要求 ,並採用以下格式:
google-assistant-signature: "<JWT token>"
驗證權杖符合 JSON Web Token 格式,
其中目標對象欄位值等於 Actions 主控台的專案 ID
應用程式如要驗證簽章,請解壓縮權杖,並確認目標對象欄位
與應用程式的專案 ID 相符。您可以使用與 JWT 相容的組合來進行這項作業
憑證程式庫,例如 Google API Node.js 用戶端
或直接使用 Actions on Google Node.js 用戶端程式庫
ConversationOptions#verification
選項,如以下程式碼片段所示:
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 }