
Sécurité & Authentication
JWT, OAuth2, session management, RBAC, crypto/rand vs math/rand, TLS config, secure coding, security best practices
1Quelle est la principale différence entre les tokens JWT et les sessions serveur traditionnelles ?
Quelle est la principale différence entre les tokens JWT et les sessions serveur traditionnelles ?
Réponse
Les tokens JWT sont stateless (sans état côté serveur) et contiennent toutes les informations nécessaires encodées dans le token lui-même. Contrairement aux sessions traditionnelles qui stockent les données en mémoire ou en base de données côté serveur avec seulement un session ID côté client, JWT déplace la responsabilité de stockage vers le client. Cela facilite la scalabilité horizontale car aucun état partagé n'est requis entre les serveurs.
2Quelles sont les trois parties d'un token JWT séparées par des points ?
Quelles sont les trois parties d'un token JWT séparées par des points ?
Réponse
Un JWT est composé de trois parties encodées en Base64URL et séparées par des points : Header (algorithme et type), Payload (claims/données), et Signature (vérification d'intégrité). La structure est header.payload.signature. Le header indique l'algorithme de signature (HS256, RS256), le payload contient les claims (iss, sub, exp), et la signature garantit que le token n'a pas été modifié.
3Quel claim JWT standard définit le timestamp d'expiration du token ?
Quel claim JWT standard définit le timestamp d'expiration du token ?
Réponse
Le claim 'exp' (expiration time) définit le timestamp Unix après lequel le token ne doit plus être accepté. Les claims standards incluent aussi 'iss' (issuer), 'sub' (subject), 'aud' (audience), 'iat' (issued at), et 'nbf' (not before). La validation du claim exp est cruciale pour limiter la durée de validité des tokens et réduire l'impact d'un token volé.
Quelle est la différence principale entre HS256 et RS256 pour signer des JWT ?
Comment révoquer un JWT avant son expiration naturelle ?
+21 questions d'entretien
Autres sujets d'entretien Go
Les bases de Go
Structures de données Go
Interfaces Go
Gestion des erreurs
Goroutines basiques
Channels
Go Modules
Serveur HTTP
Client HTTP
Encodage JSON
database/sql
Package context
Testing
Patterns de concurrence
Primitives de synchronisation
Frameworks web Go
Design d'API REST
gRPC
Reflection
Gestion mémoire
Optimisation des performances
Generics
Design Patterns Go
Microservices
Docker & Containerization
Kubernetes Basics
Go Avancé
Développement CLI
Maîtrise Go pour ton prochain entretien
Accède à toutes les questions, flashcards, tests techniques, exercices de code review et simulateurs d'entretien.
Commencer gratuitement