KBDéveloppement

Sécuriser une API PHP avec des tokens JWT

9 vues · Mis à jour le 22/05/2026

JWT en PHP

Installation

composer require firebase/php-jwt

Générer un token

use Firebase\JWT\JWT;\nuse Firebase\JWT\Key;\n\n$secret = 'VOTRE_SECRET_32_CARACTERES_MIN';\n$payload = [\n    'iss' => 'nhchosting.ca',\n    'sub' => $userId,\n    'iat' => time(),\n    'exp' => time() + 3600 // Expire en 1h\n];\n$token = JWT::encode($payload, $secret, 'HS256');

Vérifier un token

$authHeader = $_SERVER['HTTP_AUTHORIZATION'] ?? '';\n$token = str_replace('Bearer ', '', $authHeader);\ntry {\n    $decoded = JWT::decode($token, new Key($secret, 'HS256'));\n    $userId = $decoded->sub;\n} catch (Exception $e) {\n    http_response_code(401);\n    echo json_encode(['error' => 'Token invalide']);\n    exit;\n}

Bonnes pratiques

  • Secret d'au moins 32 caractères
  • Expiration courte (1h) avec refresh tokens
  • HTTPS obligatoire
Cet article vous a-t-il été utile?
Besoin d'aide?

Vous n'avez pas trouvé votre réponse?

Ouvrir un ticket
Écosystème NHC : 🌐 NHC Hosting 🚀 NHC Portal 🖥️ NHC Panel 🔑 NHC Manager 📡 NHC Uptime 🛡️ NHC Security