Creant Escoltadors Webhook de Didit amb AWS Lambda i API Gateway (CA)
Aprèn a crear escoltadors webhook robustos i escalables de Didit amb TypeScript, AWS Lambda i API Gateway (Serverless Framework). Aquesta guia cobreix la configuració, la verificació de la signatura i el processament segur.

Integració Segura de WebhooksImplementar una verificació robusta de la signatura del webhook amb la clau secreta compartida de Didit és crucial per garantir la integritat i l'autenticitat de les dades entrants de la plataforma de Didit, protegint contra la suplantació i la manipulació.
Arquitectura Sense Servidor EscalableAprofitar AWS Lambda i API Gateway amb el Serverless Framework proporciona una solució altament escalable i rendible per gestionar els esdeveniments webhook de Didit, ajustant-se automàticament a càrregues variables sense intervenció manual.
Fluxos de Treball d'Identitat en Temps RealProcessar els webhooks de Didit en temps real permet respostes immediates als resultats de la verificació d'identitat, facilitant l'onboarding dinàmic d'usuaris, la detecció de fraus i les accions de compliment, millorant l'eficiència operativa.
L'enfocament Developer-First de DiditDidit simplifica la gestió de webhooks amb una documentació clara de l'API, una fàcil rotació de la clau secreta i una arquitectura modular, permetent als desenvolupadors construir i desplegar ràpidament fluxos de treball personalitzats basats en esdeveniments amb KYC bàsic gratuït i sense despeses de configuració.
El Poder dels Webhooks en la Verificació d'Identitat
En el món de la verificació d'identitat, la retroalimentació en temps real és primordial. Ja sigui que estiguis incorporant nous usuaris, realitzant un cribratge AML o verificant l'edat, conèixer el resultat d'una sessió de verificació a mesura que succeeix permet una presa de decisions dinàmica i experiències d'usuari fluides. Aquí és on brillen els webhooks. En lloc de fer consultes constants a una API per obtenir actualitzacions d'estat, Didit envia una notificació automàtica al teu endpoint especificat cada vegada que es produeix un esdeveniment significatiu, com ara la finalització d'una sessió de verificació o un canvi d'estat. Aquest model basat en "push" és més eficient, redueix la sobrecàrrega de trucades a l'API i garanteix que els teus sistemes estiguin sempre actualitzats amb els últims resultats de la verificació d'identitat.
La integració de les potents capacitats de verificació d'identitat de Didit sovint implica configurar un escoltador de webhook fiable. Aquest escoltador actua com els ulls i les orelles de la teva aplicació, rebent actualitzacions crítiques sobre l'estat de la verificació d'identitat, la detecció de vivacitat o els resultats del cribratge AML. Un sistema de webhook ben implementat és una pedra angular de les arquitectures modernes basades en esdeveniments, proporcionant l'agilitat necessària per respondre ràpidament als resultats de la verificació i mantenir un viatge d'usuari fluid.
Configuració del teu Escoltador de Webhook Sense Servidor amb AWS Lambda i API Gateway
Construir un escoltador de webhook escalable i resilient pot ser complex, però amb AWS Lambda i API Gateway, juntament amb el Serverless Framework, esdevé notablement senzill. Aquest enfocament sense servidor significa que no has de gestionar cap servidor; AWS s'encarrega de tota la infraestructura, escalant el teu escoltador automàticament segons la demanda. Per al nostre escoltador de webhook de Didit, utilitzarem TypeScript per a la seguretat de tipus i la productivitat del desenvolupador.
Requisits previs:
- Un compte d'AWS
- Node.js i npm instal·lats
- Serverless Framework instal·lat (
npm install -g serverless) - Un compte de Didit amb claus d'API i un secret de webhook (des de Didit Console -> Configuració -> Claus d'API)
Configuració del projecte:
Primer, crea un nou projecte Serverless:
serverless create --template aws-nodejs-typescript --path didit-webhook-listener
cd didit-webhook-listener
npm install
Ara, configurem serverless.yml per definir la nostra funció Lambda i l'endpoint d'API Gateway:
service: didit-webhook-listener
provider:
name: aws
runtime: nodejs18.x
stage: dev
region: us-east-1
environment:
DIDIT_WEBHOOK_SECRET: ${ssm:/didit/webhook/secret}
functions:
handleDiditWebhook:
handler: src/handler.handleDiditWebhook
events:
- http:
path: webhook/didit
method: post
cors: true
plugins:
- serverless-offline
- serverless-dotenv-plugin
- serverless-ssm-fetch
Observem que estem recuperant el DIDIT_WEBHOOK_SECRET de l'AWS SSM Parameter Store, que és una bona pràctica per gestionar secrets. Haureu d'emmagatzemar el vostre secret de Webhook de Didit allà. Didit us permet rotar fàcilment la vostra clau secreta via API o la consola de Didit, garantint una bona higiene de seguretat.
Implementació del Processament Segur de Webhooks en TypeScript
L'aspecte més crític de qualsevol escoltador de webhook és la seguretat. Heu de verificar que les sol·licituds entrants realment provenen de Didit i no han estat manipulades. Didit proporciona una clau secreta compartida per a aquest propòsit, que utilitzeu per validar la signatura HMAC inclosa a la capçalera x-didit-signature del webhook.
Crea src/handler.ts:
import { APIGatewayProxyHandler } from 'aws-lambda';
import * as crypto from 'crypto';
const DIDIT_WEBHOOK_SECRET = process.env.DIDIT_WEBHOOK_SECRET || '';
export const handleDiditWebhook: APIGatewayProxyHandler = async (event) => {
if (!event.body) {
return { statusCode: 400, body: 'No body received' };
}
const signature = event.headers['x-didit-signature'];
if (!signature) {
console.warn('Webhook received without x-didit-signature header.');
return { statusCode: 403, body: 'Missing signature' };
}
try {
const expectedSignature = crypto
.createHmac('sha256', DIDIT_WEBHOOK_SECRET)
.update(event.body)
.digest('hex');
if (expectedSignature !== signature) {
console.error('Webhook signature mismatch. Expected:', expectedSignature, 'Received:', signature);
return { statusCode: 403, body: 'Invalid signature' };
}
const payload = JSON.parse(event.body);
console.log('Successfully verified and parsed Didit webhook:', payload);
// Implementa la teva lògica de negoci aquí basada en la càrrega útil del webhook
// Exemples: actualitzar l'estat de l'usuari, activar accions addicionals, emmagatzemar resultats
// Per exemple, si és una finalització de verificació d'identitat:
// if (payload.event_type === 'session.completed' && payload.data.workflow_type === 'kyc') {
// console.log('Sessió KYC completada per a vendor_data:', payload.data.vendor_data);
// // Processa els resultats KYC, actualitza el perfil d'usuari, etc.
// }
return { statusCode: 200, body: 'Webhook rebut i processat' };
} catch (error) {
console.error('Error processant el webhook:', error);
return { statusCode: 500, body: 'Error intern del servidor' };
}
};
En aquest codi, calculem un hash HMAC SHA256 del cos de la sol·licitud en brut utilitzant el vostre DIDIT_WEBHOOK_SECRET i el comparem amb la capçalera x-didit-signature proporcionada per Didit. Si no coincideixen, la sol·licitud es rebutja, evitant l'accés no autoritzat o esdeveniments falsejats. Aquest robust procés de verificació és essencial per mantenir la seguretat i la integritat dels vostres fluxos de treball de verificació d'identitat, especialment quan es tracta de dades sensibles dels serveis de verificació d'identitat, Face Match o cribratge AML de Didit.
Configuració de Didit per Enviar Webhooks
Un cop la vostra funció Lambda estigui desplegada i tingueu una URL d'endpoint d'API Gateway, el pas final és indicar a Didit on ha d'enviar els seus webhooks. Això es pot fer fàcilment mitjançant l'API de gestió de Didit o a través de la consola de negocis de Didit.
Via API de gestió de Didit:
Podeu actualitzar programàticament la vostra configuració de webhook utilitzant l'endpoint PATCH /v3/webhook/. Això us permetrà establir la vostra webhook_url, especificar una webhook_version (es recomana v3) i fins i tot rotar la vostra secret_shared_key de manera segura.
curl -X PATCH https://verification.didit.me/v3/webhook/ \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_DIDIT_API_KEY" \
-d '{
"webhook_url": "YOUR_API_GATEWAY_ENDPOINT",
"webhook_version": "v3"
}'
Substituïu YOUR_DIDIT_API_KEY per la vostra clau d'API de Didit real i YOUR_API_GATEWAY_ENDPOINT per la URL proporcionada per AWS API Gateway després de desplegar la vostra funció Serverless.
Via Consola de Negocis de Didit:
Alternativament, navegueu a la Consola de Didit, aneu a Configuració -> Webhooks, i simplement enganxeu la vostra URL d'endpoint d'API Gateway al camp designat. També podeu veure i rotar la vostra clau secreta de webhook aquí. El disseny modular de Didit garanteix que la configuració d'aquestes integracions vitals sigui senzilla, permetent-vos centrar-vos en la construcció de la vostra aplicació principal.
Com Didit Ajuda
Didit proporciona una plataforma d'identitat nativa d'IA i orientada al desenvolupador que fa que la integració de la verificació d'identitat avançada sigui senzilla i segura. La nostra arquitectura modular us permet triar els components exactes que necessiteu, des de la verificació d'identitat (OCR, MRZ, codis de barres) i la detecció de vivacitat passiva i activa fins al Face Match 1:1, el cribratge i monitorització AML i l'estimació de l'edat. Oferint KYC bàsic gratuït i sense despeses de configuració, Didit permet a empreses de totes les mides implementar solucions d'identitat robustes sense costos prohibitius.
La nostra documentació completa de l'API i l'entorn de sandbox instantani garanteixen que els desenvolupadors puguin començar ràpidament, i el nostre sistema de webhook, com s'ha demostrat, està dissenyat per a la fiabilitat i la seguretat. Amb Didit, obteniu accés a una xarxa de verificació global, fluxos de treball orquestrats i dades d'identitat estructurades, tot lliurat a través d'APIs netes. Això significa que podeu construir amb confiança escoltadors de webhook personalitzats que s'integrin perfectament amb el potent backend de Didit, garantint actualitzacions en temps real per a totes les vostres necessitats de verificació d'identitat.
Llest per Començar?
Llest per veure Didit en acció? Obtingues una demostració gratuïta avui mateix.
Comença a verificar identitats de forma gratuïta amb el nivell gratuït de Didit.