
Beveiliging en authenticatie
JWT, OAuth2, sessiebeheer, RBAC, crypto/rand vs math/rand, TLS-configuratie, veilig coderen, best practices voor beveiliging
1Wat is het belangrijkste verschil tussen JWT-tokens en traditionele serversessies?
Wat is het belangrijkste verschil tussen JWT-tokens en traditionele serversessies?
Antwoord
JWT-tokens zijn stateless (geen status aan de serverzijde) en bevatten alle benodigde informatie die in het token zelf is gecodeerd. In tegenstelling tot traditionele sessies die gegevens in het geheugen of in een database aan de serverzijde opslaan met alleen een session ID aan de clientzijde, verschuift JWT de opslagverantwoordelijkheid naar de client. Dit vergemakkelijkt horizontaal schalen omdat er geen gedeelde status tussen servers nodig is.
2Wat zijn de drie delen van een JWT-token, gescheiden door punten?
Wat zijn de drie delen van een JWT-token, gescheiden door punten?
Antwoord
Een JWT bestaat uit drie Base64URL-gecodeerde delen, gescheiden door punten: Header (algoritme en type), Payload (claims/gegevens) en Signature (integriteitsverificatie). De structuur is header.payload.signature. De header geeft het ondertekeningsalgoritme aan (HS256, RS256), de payload bevat de claims (iss, sub, exp) en de signature zorgt ervoor dat het token niet is gemanipuleerd.
3Welke standaard JWT-claim definieert de vervaltijdstempel van het token?
Welke standaard JWT-claim definieert de vervaltijdstempel van het token?
Antwoord
De claim 'exp' (expiration time) definieert de Unix-tijdstempel waarna het token niet langer mag worden geaccepteerd. Standaard claims omvatten ook 'iss' (issuer), 'sub' (subject), 'aud' (audience), 'iat' (issued at) en 'nbf' (not before). Het valideren van de exp-claim is cruciaal om de geldigheidsduur van tokens te beperken en de impact van een gestolen token te verminderen.
Wat is het belangrijkste verschil tussen HS256 en RS256 voor het ondertekenen van JWT's?
Hoe trek je een JWT in voordat het op natuurlijke wijze verloopt?
+21 gespreksvragen
Andere Go-sollicitatieonderwerpen
Go-basis
Go-datastructuren
Go-interfaces
Foutafhandeling
Goroutines-basis
Channels
Go Modules
HTTP-server
HTTP-client
JSON-codering
Database/SQL
context-pakket
Testing
Concurrency-patronen
Synchronisatieprimitieven
Go-webframeworks
REST API-ontwerp
gRPC
Reflection
Geheugenbeheer
Prestatie-optimalisatie
Generics
Go Design Patterns
Microservices
Docker & Containerization
Kubernetes Basics
Geavanceerd Go
CLI-ontwikkeling
Beheers Go voor je volgende gesprek
Krijg toegang tot alle vragen, flashcards, technische tests, code review-oefeningen en gespreksimulatoren.
Begin gratis