Spring Security అనేది మీ controller ను చేరుకోవడానికి ముందు ప్రతి request ను intercept చేసే ఒక servlet filter chain. Authentication "మీరు ఎవరు?" అనేదానికి సమాధానం ఇస్తుంది; authorization "మీకు దీన్ని చేయడానికి అనుమతి ఉందా?" అనేదానికి సమాధానం ఇస్తుంది. stateless REST APIs కోసం, సాధారణ విధానం server-side sessions కు బదులుగా JWT (JSON Web Token).
JWT flow
POST /login (user+pass) ──▶ AuthController verifies ──▶ signs JWT ──▶ returns token
│
Client stores it, then sends on every call: ▼
GET /api/orders Authorization: Bearer <jwt> ──▶ JwtFilter validates ──▶ controller
