Nội dung
Danh sách bài học
- 01~4 phút
Authorization & Web Security — tổng quan
Module này mổ phân quyền cấp method và bảo mật web (CORS/CSRF), khép lại với capstone TaskFlow v3.
- 02~12 phút
@PreAuthorize & AOP proxy — cơ chế method security
Method security hoạt động qua AOP proxy: Spring wrap bean trong CGLIB proxy, intercept method call, eval SpEL trước khi delegate. Bài này bóc đúng cơ chế đó — proxy là gì, vì sao self-call bypass annotation, và 3 cách fix — để bạn không mất 2 giờ debug 'annotation không có hiệu lực'.
- 03~14 phút
Method security filtering — @PreFilter, @PostFilter, AuthorizationManager, PermissionEvaluator
Lọc collection theo authority với @PreFilter/@PostFilter, cảnh giác @PostFilter trên large dataset (load-then-filter in-memory), AuthorizationManager API Spring Security 6, custom PermissionEvaluator cho fine-grained domain object authz, @Secured/@RolesAllowed legacy.
- 04~14 phút
CORS — Same-Origin Policy, preflight, và Spring config
CORS (Cross-Origin Resource Sharing) không phải tấn công — đây là cơ chế browser tự vệ chặn JavaScript đọc response cross-origin. Bài này bóc origin tuple theo RFC 6454, khi nào browser kích hoạt preflight OPTIONS, cách Spring config allowedOrigins/Methods/Headers/Credentials, và vì sao spec cấm allowedOrigins(*) kết hợp allowCredentials(true).
- 05~12 phút
CSRF — Cross-Site Request Forgery và cách phòng thủ
CSRF là tấn công lợi dụng browser tự đính kèm cookie cross-site. Bài này bóc cơ chế Synchronizer Token Pattern, Double-Submit Cookie, SameSite cookie, và — quan trọng nhất — lý giải tại sao stateless JWT API tắt CSRF an toàn trong khi session-cookie app bắt buộc phải bật.
- 06~45 phút
Mini-challenge: TaskFlow v3 — JWT + role-based access control
Migrate TaskFlow từ course Spring REST & Data (JPA Postgres) sang course Spring Security — bảo vệ với JWT, role-based authz (USER/MANAGER/ADMIN), ownership check, register/login/refresh/logout endpoints, integration test với @WithMockUser, secure Actuator.
- 07~4 phút
Authorization & Web Security — tổng kết
Tóm tắt Authorization & Web Security.