JWT tokens are compact, URL-safe tokens that consist of three parts: header, payload, and signature. In an OAuth 2.0 flow, they can carry user identity and permissions, while their cryptographic signature ensures integrity and authenticity, making them secure for API authentication.
In depth
JWTs (JSON Web Tokens) are structured as a three-part string separated by dots: the header, which typically specifies the algorithm used for signing; the payload, which contains claims about the user (such as user ID and roles); and the signature, created by signing the header and payload with a secret key. In an OAuth 2.0 flow, clients receive these tokens after successful authentication, allowing them to access protected resources by including the token in API requests. One must ensure proper expiration and revocation mechanisms are in place since JWTs can be issued with long expiration times, increasing the risk if they are compromised. Furthermore, implementing HTTPS is essential to prevent token interception during transmission.
Example scenario
In a recent project, we implemented a microservices architecture where each service required secure communications. We used JWT tokens issued by our identity provider after user authentication. Each service validated the JWTs by checking the signature and expiration. This approach streamlined our API authentication process, as services could independently validate tokens without needing to call back to the identity provider each time, improving performance and reducing latency.
Common mistakes
One common mistake is neglecting to validate the token's signature and claims, which can lead to unauthorized access if a malicious actor is able to spoof a token. Another mistake is not setting proper expiration times; long-lived tokens can pose security risks if they are stolen. Developers sometimes overlook the importance of using HTTPS, which is crucial for protecting tokens in transit, making them vulnerable to interception.
Follow-up questions
- What are the implications of using short-lived versus long-lived JWTs?
- How would you implement token revocation in a microservices architecture?
- Can you describe potential vulnerabilities of using JWT and how to mitigate them?
- How could you handle user permissions within the payload?

Want all 2,000 questions in one PDF?
- Short answers, in-depth explanations, common mistakes and follow-ups
- 89 topics, from Beginner to Architect, with a clickable contents list
- 226 extra questions that are not on this website
- Free Bonus Pack: 30-day study plan, behavioral questions, salary scripts
Includes 226 extra questions that are not on this site, plus a free Bonus Pack.
Get both books for $9.99 (save $2.99):
The material stays free to read online. This is the organised, offline, print-ready PDF edition. Secure payment by PayPal; your personal download link is emailed after payment is confirmed. Digital product, no shipping.