Logout trong Spring Security

Trong bài viết trước, mình đã giới thiệu với các bạn cơ bản về authentication và authorization trong Spring Security. Nếu các bạn để ý thì sẽ thấy và thắc mắc là sau khi đã đăng nhập vào ứng dụng, chúng ta sẽ logout bằng cách nào? Mình sẽ hướng dẫn các bạn cách logout trong Spring Security trong bài viết này các bạn nhé!

Mình cũng có một ứng dụng Spring Security đơn giản như sau:

Logout trong Spring Security

Với tập tin cấu hình của Spring Security có nội dung như sau:

Để logout trong Spring Security, chúng ta chỉ sẽ cần gọi đến request “/logout” được cung cấp mặc định bởi Spring Security. Khi đó, tất cả thông tin đăng nhập của user sẽ được clear và ứng dụng của chúng ta sẽ tự redirect tới request “/login?logout”.

Để thấy rõ điều này, các bạn hãy chỉnh sửa tập tin home.jsp trong thư mục src/main/webapp/WEB-INF/views/ để thêm một liên kết tới request “/logout” như sau:

Ở đây, mình sử dụng thư viện JSTL để thêm liên kết này.

Kết quả sau khi chạy ứng dụng, truy cập ứng dụng, đăng nhập với user “khanh” sẽ như sau:

Logout trong Spring Security

Bây giờ, nếu các bạn click vào liên kết Logout, các bạn sẽ thấy kết quả như sau:

Logout trong Spring Security

Đây chính là cửa sổ confirm là thật sự các bạn muốn logout hay không? Hãy nhấn nút Log Out để confirm việc logout các bạn nhé!

Kết quả sau đó sẽ như sau:

Logout trong Spring Security

Add Comment