Spring Security adalah sebuah filter chain servlet yang mencegat setiap request sebelum mencapai controller Anda. Authentication menjawab "siapa Anda?"; authorization menjawab "apakah Anda diizinkan melakukan ini?". Untuk REST API yang stateless, pendekatan umum adalah JWT (JSON Web Token) alih-alih session di sisi server.
Alur JWT
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
