Rest Full API với Spring MVC

Mình đang có làm 1 project với spring mvc. Mình dùng JWT để check authen. Vấn đề của mình gặp phải là, khi các request tới api của mình đang không được check authen. Mình có thể xử lý nó bằng cách:

    1. Với mỗi api của mình lại check auth -> Cách này tù và to tay
    2. Với mỗi contrller thì mình sẽ dùng 1 annotation là RoleNeeded  config check authen, 
những controller nào được đính kèm với annotion đó thì sẽ phải có authen thì mớirequest được.

Giải pháp thứ 2 mình có tham khảo 1 code dùng playframework, nhưng thư viện play nó khác, mình không tìm được hàm tương tụ để custom lại với Spring framework.

Các pro hiểu cách 2 có thể cho mình keyword or giải thích cho mình cách nào có thể làm nó không ạ?

Mình xin cám ơn…

bên spring có phần spring security nó hỗ trợ việc kiểm tra và phân quyền bạn tìm hiểu xem …

sử dụng Spring Security + custom JWT Authentication Filter gán vào là xong

    <http pattern="/rest/**" create-session="stateless"
    		entry-point-ref="restAuthenticationEntryPoint">
    		<csrf disabled="true" /> 
            // sử dụng <intercept> để đánh chặn những đường dẫn muốn xác thực
    		<custom-filter before="FORM_LOGIN_FILTER" ref="jwtAuthenticationFilter" />
    	</http>
1 Like

extend filter để implement, Mọi request điều thông qua filter trước
seach với interceptor pattern để hiểu thêm
ref: https://www.mkyong.com/spring-mvc/how-to-register-a-servlet-filter-in-spring-mvc/

1 Like

Dùng Spring Security bạn nhé. Giờ người ta dùng Spring Config và Annotation nhanh gọn và dễ deploy hơn @Tiểu Cao.

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?