Nguồn: https://stackjava.com/category/spring-security
Spring Security là gì?
Spring Security là một framework tập trung vào việc cung cấp khả năng xác thực và phân quyền cho ứng dụng Java.
Cơ chế hoạt động của Spring Security.
Ở phần này mình sẽ nói về cơ chế làm việc của spring mvc security.
Spring security sẽ tự động tạo form đăng nhập nếu ta không định nghĩa cho nó, sau khi đăng nhập một đối tượng user sẽ được lưu trong session, đối tượng user này sẽ gồm các thông tin như username, password, các quyền…
Ví dụ mình chạy spring security với tomcat: Kết hợp đối tượng user trong session và các thông tin config khác như filter các đường dẫn… nó sẽ tự động phân quyền và xác thực khi user truy cập vào từng URL.
Lợi ích của Spring Security
Lợi ích lớn nhất của Spring Security là giúp bạn tích hợp tính năng xác thực và phân quyền một cách dễ dàng vào ứng dụng của mình.
Ngoài ra Spring Security còn giúp:
Chống lại CSRF attack Bảo vệ Session Fixation Mã hóa mật khẩu. Cache control X-XSS-Protection …
Ở loạt bài này mình sẽ làm các ví dụ Spring Security với Spring MVC - Security sử dụng XML config
- Code ví dụ Spring MVC Security Hello World – XML Config
- Code ví dụ Spring Security, Tạo form login – XML Config
- CRSF là gì? Phòng chống CRSF với Spring Security
- Code ví dụ Spring Security login với JDBC, Database MySQL
- Code ví dụ Spring Security Hibernate 5 + Database MySQL
- Spring Security, phân biệt security none, filters none, access permitAll
- Code ví dụ Spring Security Remember Me (Tự động login)
- Code ví dụ Spring Security Concurrent Session Control/ Max Session (Chỉ login tại một nơi)
- Spring MVC – Security dùng nhiều trang login (multiple form login).
- Code ví dụ Spring MVC – Spring Security JSON Web Token
Spring Boot - Security sử dụng Annotation config.
- Code ví dụ Spring Boot Security Hello + Tạo Form Login
- Code ví dụ Spring Boot Security Hibernate + MySQL + Eclipse + Maven
- Code ví dụ Spring Boot remember me (Tự động login)
- Code ví dụ Spring Boot Concurrent Session Control/ Max Session
- Code ví dụ Spring Boot Multiple Login Page (Form Login)
- Code ví dụ Spring Boot JSON Web Token (JWT)