1. Trang chủ
  2. » Công Nghệ Thông Tin

Tài liệu Basic_Security_voi_Servlet_va_Tomcat ppt

29 173 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Basic security với Servlet và Tomcat
Tác giả Đào Anh Tuấn
Trường học Ho Chi Minh City University of Natural Sciences
Chuyên ngành An toàn thông tin
Thể loại Bài thuyết trình
Thành phố Ho Chi Minh City
Định dạng
Số trang 29
Dung lượng 588,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

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... Cấu hình

Trang 1

Basic Security với Servlet và

Tomcat

Đào Anh Tuấn –

datuan@fit.hcmuns.edu.vn

Trang 3

• Database về username / password sẽ do

Tomcat quản lý, thông qua các Realm

Trang 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)

<Resource name=" UserDatabase " auth="Container"

Trang 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

Trang 6

http://tomcat.apache.org/tomcat-5.5-Cấu hình thử file tomcat-users

• Đây là nơi chứa các users và roles mặc định

<user username="system" password="system" roles="system"/>

<user username="admin" password="admin" roles="manager,admin"/>

</tomcat-users>

Trang 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

Trang 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)

Trang 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

Trang 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.

Trang 12

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();

Trang 13

• 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

Trang 14

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

Trang 15

Dùng form authen

• Qui định trang để login và trang thông báo kết

quả nếu fail

Trang 16

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:

<INPUT TYPE=TEXT NAME=" j_username "

VALUE="" SIZE=15>

<INPUT TYPE=PASSWORD NAME=" j_password " VALUE="" SIZE=15>

Trang 18

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

<user username=“CN=Dao Anh Tuan,OU=… ” roles="system"/>

Trang 19

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):

Trang 20

keytool -genkey

Trang 21

Tự sign certificate cho web server

• Dùng option selfcert:

Trang 22

Cấu hình TOMCAT

• Vào file server.xml:

<Connector port=" 8443 " protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true"

clientAuth="false" sslProtocol="TLS"

keystoreFile=" C:\datuan_key " keystorePass="123456" />

Trang 23

Truy xuất qua https

• Do đây là chứng thực “tự ký” nên các trình duyệt báo lỗi

Trang 24

Connect qua https

Trang 25

Virtual Host

• Khi có nhiều trang web cùng được đặt lên một web

server, mỗi trang web có thể được truy xuất bởi một domain riêng ta có thể dùng khái niệm virtual host.

• Ví dụ: Ta có 2 thư mục chứa các ứng dụng web

khác nhau:

▫ Tomcat_Home/web1/index.jsp -> Trang web bán hàng,

có domain name là www.banhang.com

▫ Tomcat_Home/web2/index.jsp -> Trang web blog, có domain name là www.blog.com

Cả 2 domain name này đều chỉ vào địa chỉ IP của

máy chủ chứa web server.

Trang 27

• Ta nén cả 2 ứng dụng web thành các file

ROOT.war (case-sensitive, mặc định TomCat giải nén các file ROOT.war thành default

application của mỗi host)

• File ROOT.war của ứng dụng banhang vào thư mục tomcat/web1, ROOT.war của ứng dụng

blog vào thư mục tomcat/web2

• Lưu ý: file context.xml của mỗi ứng dụng web,

sửa cấu hình path có giá trị path=“” (ứng dụng gốc)

Trang 28

• Test với windows: sửa nội dung file

Windows/system32/drivers/etc/hosts

• Test với Linux: sửa nội dung file /etc/hosts

• Dùng trình duyệt connect vào các địa chỉ

www.banhang.com và www.blog.com (đều có cùng địa chỉ ip) để xem kết quả

Ngày đăng: 16/12/2013, 13:15

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w