Basic_Security_voi_Servlet_va_Tomcat

Chia sẻ: Minh Thanh | Ngày: | Loại File: PPT | Số trang:29

0
122
lượt xem
72
download

Basic_Security_voi_Servlet_va_Tomcat

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Một số kiểu chứng thực người dùng đơn giản.
- Basic - Digest - Form - Client Certificate

Chủ đề:
Lưu

Nội dung Text: Basic_Security_voi_Servlet_va_Tomcat

  1. Basic Security với Servlet và Tomcat Đào Anh Tuấn – datuan@fit.hcmuns.edu.vn
  2. Giới thiệu • Một số kiểu chứng thực người dùng đơn giản: ▫ Basic ▫ Digest ▫ Form ▫ Client Certificate • Cài đặt SSL trên Tomcat • Virtual Host
  3. Chứng thực người dùng • Servlet hỗ trợ khá nhiều giao thức để chứng thực người dùng: ▫ Basic ▫ Digest ▫ Form Authen ▫ Client Certificate • Database về username / password sẽ do Tomcat quản lý, thông qua các Realm
  4. Cấu hình tomcat • Mặc định các user này lấy trong file tomcat-users.xml; ta có thể cấu hình để lưu trong các CSDL hoặc trong các file khác (cấu hình trong file conf/server.xml)    
  5. Cấu hình Realm • Tomcat hỗ trợ các loại Realm sau: ▫ JDBCRealm - Accesses authentication information stored in a relational database, accessed via a JDBC driver. ▫ DataSourceRealm - Accesses authentication information stored in a relational database, accessed via a named JNDI JDBC DataSource. ▫ JNDIRealm - Accesses authentication information stored in an LDAP based directory server, accessed via a JNDI provider. ▫ MemoryRealm - Accesses authentication information stored in an in-memory object collection, which is initialized from an XML document (conf/tomcat-users.xml). ▫ JAASRealm - Accesses authentication information through the Java Authentication & Authorization Service (JAAS) framework. • Xem thêm trong tài liệu: http://tomcat.apache.org/tomcat-5.5-doc/realm-howto.html
  6. Cấu hình thử file tomcat-users • Đây là nơi chứa các users và roles mặc định của tomcat               
  7. Cấu hình Authentication cho ứng dụng web • Cấu hình thông qua trang web.xml • Trước hết tạo trang web index.jsp chứa bất kỳ nội dung nào. • Sau đó, ta sẽ yêu cầu chỉ các user thuộc role system của hệ thống mới được truy xuất file này.
  8. Định nghĩa roles • Định nghĩa lại role(s) system, đây là role đã được định nghĩa trong file tomcat-users.xml • Lưu ý: hệ thống servlet là hệ thống có đặt tính case-sensitive (System != system)
  9. Định nghĩa các resource sẽ được bảo vệ • Mặc định ở đây ta bảo vệ các file *.jsp, method GET và POST
  10. Qui định phương thức chứng thực • Để đơn giản ta chọn Basic (password gửi đi dạng clear text). • Theo đúng lý thuyết, Realm phải chọn trùng tên với Realm trong Tomcat, nhưng ở đây đơn giản ta có thể dùng để nhập một thông báo.
  11. Lấy username đã đăng nhập • Trong trang web, có thể lấy ra tên user đã đăng nhập bằng hàm request.getRemoteName(); request.getUserPrincipal();
  12. Digest • Thay mục Basic bằng Digest, việc chứng thực sẽ được thực thi thông qua các hàm hash
  13. Chứng thực với FORM • Thay vì trình duyệt hiện lên 1 input dialog để người dùng nhập, ta có thể qui định sẵn 1 trang web chứa form đăng nhập. • Khi người dùng truy xuất ứng dụng, nếu tomcat phát hiện người dùng này chưa đăng nhập sẽ tự động chuyển đến form trên.
  14. Dùng form authen • Qui định trang để login và trang thông báo kết quả nếu fail
  15. Xây dựng form login • Form login có thể xây dựng giao diện bắt mắt, nhiều màu sắc, tuy nhiên phải tuân thủ theo chuẩn sau. • Action=j_security_check • Trường username và password có dạng:
  16. Login.html Username: Password:
  17. Chứng thực với Client Cert • Khi người dùng đăng nhập, sẽ được yêu cầu (hoặc web browser tự động) cung cấp certificate. • Tomcat sẽ so sánh với database user có sẵn để quyết định quyền hạn. • Lúc này file tomcat-users.xml phải sửa đổi
  18. Cấu hình SSL với Tomcat • Phát sinh certificate cho server Tomcat • Có thể dùng công cụ keytool có sẵn trong thự mục bin của bộ JDK. • Phát sinh key (private/public key):
  19. keytool -genkey

CÓ THỂ BẠN MUỐN DOWNLOAD

Đồng bộ tài khoản