Puntuació de Risc d'Identitat en Temps Real amb FastAPI i Didit (CA)
Implementa una puntuació de risc d'identitat robusta i en temps real a les teves aplicacions FastAPI amb els webhooks de Didit. Aquesta guia cobreix la configuració segura dels webhooks, la verificació de signatures i la.

L'avaluació de risc en temps real és essencialLes aplicacions modernes exigeixen una avaluació immediata del risc d'identitat per combatre el frau i garantir el compliment de manera efectiva.
La gestió segura de webhooks és primordialLa implementació d'una verificació robusta de signatures i comprovacions de marques de temps per als webhooks entrants impedeix la manipulació i els atacs de reproducció, crucial per mantenir la integritat de les dades.
El middleware de FastAPI simplifica la integracióAprofitar les capacitats de middleware de FastAPI permet un processament centralitzat i eficient dels esdeveniments de webhook asíncrons, integrant-se sense problemes amb el flux de la vostra aplicació.
Didit impulsa una orquestració d'identitat intel·ligentDidit proporciona la verificació d'identitat nativa d'IA i la infraestructura de webhook, oferint notificacions en temps real i senyals de risc complets per informar les decisions de seguretat de la vostra aplicació.
En el panorama digital actual, la velocitat i la precisió de la verificació d'identitat impacten directament en la postura de seguretat d'una aplicació i en l'experiència de l'usuari. A mesura que els negocis creixen, la necessitat d'una puntuació de risc en temps real esdevé primordial, permetent una acció immediata contra activitats fraudulentes i garantint el compliment dels estàndards reguladors. Integrar una plataforma avançada de verificació d'identitat com Didit amb el vostre backend, particularment utilitzant un framework modern com FastAPI, pot millorar significativament les vostres defenses.
Aquesta publicació del blog us guiarà a través de la construcció d'un robust middleware de FastAPI per processar els webhooks de Didit per a l'avaluació de risc d'identitat en temps real. Tractarem la recepció segura de webhooks, la verificació de signatures i com integrar aquests senyals de risc crítics a la lògica de la vostra aplicació.
El poder dels Webhooks per a senyals d'identitat en temps real
Els webhooks són un pilar fonamental de la comunicació asíncrona moderna, que permeten als serveis enviar notificacions en temps real a altres aplicacions quan es produeixen esdeveniments específics. Per a la verificació d'identitat, això significa que tan bon punt un usuari completa un pas de verificació, o s'ha finalitzat una avaluació de risc, Didit pot informar immediatament la vostra aplicació. Aquesta retroalimentació en temps real és crucial per a una puntuació de risc dinàmica, permetent-vos:
- Actualitzar instantàniament els perfils d'usuari: Marcar els usuaris com a verificats o assenyalar-los per a revisió basant-se en el resultat de la verificació d'identitat o la detecció de blanqueig de diners (AML).
- Activar fluxos de treball condicionals: Si un usuari falla una comprovació de detecció de vivacitat o és assenyalat durant la detecció de blanqueig de diners (AML), podeu iniciar immediatament un procés de revisió més profund o bloquejar l'accés.
- Millorar la detecció de frau: Combinar els senyals de risc de Didit, com ara l'anàlisi d'IP o els resultats de la verificació telefònica, amb els vostres models interns de frau per a una avaluació més completa.
Els webhooks de Didit proporcionen càrregues útils JSON detallades amb els resultats de diverses comprovacions de verificació, incloses les de verificació d'identitat, vivacitat passiva i activa, concordança facial 1:1, detecció i seguiment de blanqueig de diners (AML), prova d'adreça i verificació de telèfon i correu electrònic. Aquests punts de dades rics són inestimables per a la construcció d'un perfil de risc en temps real per a cada usuari.
Protecció del vostre endpoint de Webhook amb FastAPI Middleware
Rebre webhooks de forma segura és innegociable. Els actors maliciosos podrien intentar enviar esdeveniments falsos o reproduir-ne d'antics, cosa que podria provocar dades compromeses o accions incorrectes. Els webhooks de Didit inclouen una signatura HMAC-SHA256 i una marca de temps, que són essencials per verificar l'autenticitat i la integritat de cada sol·licitud entrant. El middleware de FastAPI és un lloc excel·lent per implementar aquestes comprovacions de seguretat de forma centralitzada.
Aquí teniu un esquema conceptual de com estructuraríeu el vostre middleware de FastAPI:
import hmac
import hashlib
import time
from fastapi import FastAPI, Request, HTTPException
from starlette.middleware.base import BaseHTTPMiddleware
from starlette.responses import JSONResponse
WEBHOOK_SECRET = "YOUR_DIDIT_WEBHOOK_SECRET" # Obteniu-ho de la consola de Didit -> API Keys
class DiditWebhookSignatureMiddleware(BaseHTTPMiddleware):
async def dispatch(self, request: Request, call_next):
if request.url.path == "/api/webhooks/didit":
signature = request.headers.get("X-Signature")
timestamp = request.headers.get("X-Timestamp")
if not signature or not timestamp:
raise HTTPException(status_code=401, detail="Falta la signatura o la marca de temps del webhook")
# 1. Verificar la frescor de la marca de temps (per exemple, en 5 minuts)
try:
request_time = int(timestamp)
if abs(time.time() - request_time) > 300: # 300 segons = 5 minuts
raise HTTPException(status_code=401, detail="La marca de temps del webhook és massa antiga o massa nova")
except ValueError:
raise HTTPException(status_code=401, detail="Format de marca de temps no vàlid")
# 2. Reconstruir la càrrega útil signada
body = await request.body()
signed_payload = f"{timestamp}.{body.decode('utf-8')}"
# 3. Calcular la signatura esperada
expected_signature = hmac.new(
WEBHOOK_SECRET.encode('utf-8'),
signed_payload.encode('utf-8'),
hashlib.sha256
).hexdigest()
# 4. Comparar signatures
if not hmac.compare_digest(expected_signature, signature):
raise HTTPException(status_code=401, detail="Signatura de webhook no vàlida")
# Si la signatura i la marca de temps són vàlides, procedir
request.state.didit_webhook_body = body.decode('utf-8') # Emmagatzemar per a processament posterior
return await call_next(request)
app = FastAPI()
app.add_middleware(DiditWebhookSignatureMiddleware)
@app.post("/api/webhooks/didit")
async def handle_didit_webhook(request: Request):
# El cos del webhook ja està verificat i disponible a request.state
payload = json.loads(request.state.didit_webhook_body)
# Processar la càrrega útil per a la puntuació de risc, actualitzar l'estat de l'usuari, etc.
print("Webhook de Didit vàlid rebut:", payload)
return JSONResponse({"status": "success"})
Aquest middleware assegura que cada sol·licitud de webhook de Didit que arriba al vostre endpoint /api/webhooks/didit estigui autenticada i actualitzada abans que la lògica de la vostra aplicació vegi la càrrega útil. Aquesta és una capa de defensa crítica contra diversos vectors d'atac.
Integració de senyals de risc en temps real a la lògica de la vostra aplicació
Un cop la càrrega útil del webhook s'ha verificat i analitzat, la vostra aplicació pot extreure la informació necessària per actualitzar les puntuacions de risc de l'usuari o activar accions específiques. La documentació de l'API Full Flow de Didit descriu l'estructura completa d'aquestes càrregues útils, incloent session_id, vendor_data (el vostre ID d'usuari intern) i els resultats detallats de cada pas de verificació.
Per exemple, si un usuari se sotmet a la verificació d'identitat i a la detecció de vivacitat, la càrrega útil del webhook contindrà l'estat d'aquestes comprovacions. Podríeu definir una puntuació de risc basada en:
- Verificació d'identitat exitosa: Redueix la puntuació de risc.
- Detecció de vivacitat fallida: Augmenta significativament la puntuació de risc, cosa que podria provocar la congelació del compte.
- Detecció de blanqueig de diners (PEP/Sancions): Risc elevat, que requereix una revisió manual immediata.
- Número de telèfon d'un sol ús detectat (de la verificació telefònica): Risc moderat, podria indicar una intenció fraudulenta.
La feina del vostre gestor de webhooks és interpretar aquests senyals i actualitzar l'estat intern de l'usuari o el perfil de risc en conseqüència. Això podria implicar actualitzar un camp user_status a la vostra base de dades, afegir una bandera per a una revisió manual o fins i tot integrar-se amb un sistema de gestió de fraus dedicat.
Com ajuda Didit
Didit és la plataforma d'identitat nativa d'IA, centrada en el desenvolupador, dissenyada per fer que la puntuació de risc d'identitat en temps real sigui fluida i eficient. La nostra arquitectura modular us permet compondre fluxos de treball de verificació que satisfan exactament les vostres necessitats, des de la verificació bàsica d'identitat fins a la detecció avançada de blanqueig de diners (AML) i la detecció de vivacitat passiva i activa. Oferim capacitats robustes de webhook, assegurant que les vostres aplicacions rebin notificacions segures i en temps real sobre els resultats de la verificació.
Amb Didit, us beneficieu de:
- Core KYC gratuït: Comenceu amb la verificació d'identitat essencial sense cost, permetent-vos construir i provar la vostra integració sense una inversió inicial.
- Intel·ligència nativa d'IA: Aprofiteu la IA d'última generació per a una detecció de frau superior, detecció de vivacitat i anàlisi de documents, proporcionant senyals de risc precisos.
- Enfocament centrat en el desenvolupador: API netes, documentació completa i un sandbox instantani fan que la integració amb frameworks com FastAPI sigui senzilla i ràpida.
- Fluxos de treball orquestrats: Definiu fluxos de verificació complexos amb un motor sense codi, cosa que us permet adaptar-vos als paisatges de risc en evolució sense canvis de codi.
- Cobertura global: Verifiqueu identitats a tot el món amb suport per a diversos tipus de documents i requisits de compliment regionals.
Aprofitant els productes de verificació de telèfon i correu electrònic de Didit, la verificació d'identitat i la detecció i seguiment de blanqueig de diners (AML), combinats amb la nostra infraestructura de webhook segura, podeu construir un sistema de puntuació de risc d'identitat altament sensible i resistent a la vostra aplicació FastAPI. La nostra plataforma proporciona les dades en temps real que necessiteu per prendre decisions informades i protegir el vostre negoci.
Llest per començar?
Llest per veure Didit en acció? Obteniu una demostració gratuïta avui.
Comenceu a verificar identitats de forma gratuïta amb el nivell gratuït de Didit.