Go

Sécurité & Authentication

JWT, OAuth2, session management, RBAC, crypto/rand vs math/rand, TLS config, secure coding, security best practices

24 questions d'entretien·
Senior
1

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.

2

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é.

3

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é.

4

Quelle est la différence principale entre HS256 et RS256 pour signer des JWT ?

5

Comment révoquer un JWT avant son expiration naturelle ?

+21 questions d'entretien

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