Skip to content

Authentification et Securite

7.1 Connexion

L'acces a la plateforme requiert trois informations :

  • Tenant (Entreprise) : identifiant unique de l'entreprise
  • E-mail : adresse e-mail enregistree
  • Mot de passe : mot de passe defini lors de l'inscription ou modifie ulterieurement

Le endpoint de connexion est :

POST /api/auth/login
json
{
  "email": "utilisateur@entreprise.com.br",
  "password": "votreMotDePasse",
  "tenant": "nom-de-lentreprise"
}

7.2 Authentification a Deux Facteurs (MFA)

Pour une securite renforcee, Voki prend en charge l'authentification a deux facteurs via TOTP (Time-based One-Time Password) :

  1. Activez le MFA dans les parametres de votre compte
  2. Scannez le QR Code avec une application d'authentification (Google Authenticator, Authy, etc.)
  3. A chaque connexion, en plus de l'e-mail et du mot de passe, le code a 6 chiffres de l'authentificateur sera demande

Le endpoint de verification MFA est :

POST /api/auth/mfa/verify

7.3 Reinitialisation du Mot de Passe

Si vous oubliez votre mot de passe :

  1. Sur l'ecran de connexion, cliquez sur « Mot de passe oublie »
  2. Indiquez votre e-mail et votre tenant
  3. Vous recevrez un e-mail contenant un lien pour redefinir votre mot de passe
  4. Le lien est valide pour une duree limitee (expire apres utilisation)

Endpoints concernes :

POST /api/auth/forgot-password
POST /api/auth/reset-password

7.4 Tokens JWT

Voki utilise les JSON Web Tokens (JWT) pour l'authentification :

TokenValiditeUtilisation
Access Token15 minutesAcces a l'API et aux pages authentifiees
Refresh Token7 joursRenouvellement de l'access token sans nouvelle connexion

L'access token doit etre envoye dans l'en-tete de chaque requete :

Authorization: Bearer {access_token}

Lorsque l'access token expire, utilisez le refresh token pour en obtenir un nouveau :

POST /api/auth/refresh

7.5 Isolation par Tenant

Chaque entreprise (tenant) dispose de son propre schema dans la base de donnees PostgreSQL, garantissant une isolation complete des donnees :

  • Les donnees d'une entreprise ne sont jamais accessibles par une autre
  • Chaque tenant possede ses propres tables, index et enregistrements
  • Le tenant est determine par le JWT et valide a chaque requete
  • Il est impossible d'acceder aux donnees d'un autre tenant, meme avec un token valide

7.6 En-tetes de Securite

Toutes les reponses de la plateforme incluent des en-tetes de securite :

  • HSTS : Force la connexion HTTPS
  • X-Frame-Options: DENY : Empeche l'integration dans des iframes (protection contre le clickjacking)
  • X-Content-Type-Options: nosniff : Previent le MIME-type sniffing
  • Referrer-Policy: strict-origin-when-cross-origin : Controle les informations de reference
  • Permissions-Policy : Restreint l'acces aux API du navigateur

7.7 Limitation de Debit (Rate Limiting)

Pour proteger contre les attaques par force brute et les abus :

EndpointLimite
Authentification (/api/auth/*)5 requetes par minute
API publique (/api/signup/*, /api/v1/call/*)30 requetes par minute

En cas de depassement de la limite, la reponse sera 429 Too Many Requests.


Manual de Uso — Voki v4.0