công nghệ Sping Web service

140 566 2
công nghệ Sping Web service

Đ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

luận văn về công nghệ Sping Web service

NHẬN XÉT CỦA GVHD KLTN –WEB SERVICE SECURITY WITH OPEN SOURCE ACEGI AND APPLYING FOR A SMALL RETAILING WEBSITE i NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN LỜI CẢM ƠN KLTN –WEB SERVICE SECURITY WITH OPEN SOURCE ACEGI AND APPLYING FOR A SMALL RETAILING WEBSITE ii LỜI CÁM ƠN Chúng em xin bày tỏ lòng biết ơn chân thành nhất ñến thầy ðặng Thanh Dũng, người thầy ñã tận tâm giúp ñỡ, hướng dẫn chúng em thực hiện luận văn này. Chúng con xin gửi lòng biết ơn và kính trọng sâu sắc ñến gia ñình, những người ñã nuôi dạy chúng con trưởng thành. Chúng em chân thành cảm ơn quý thầy cô trong khoa Công nghệ thông tin trường ðại học Sư Phạm Kỹ Thuật Thành Phố Hồ Chí Minh ñã tận tình giảng dạy, hướng dẫn, giúp ñỡ chúng em trong suốt quá trình học cũng như hoàn thành luận văn này. Mặc dù ñã cố gắng hết sức nhưng chắc chắn luận văn còn nhiều thiếu sót, chúng em mong nhận ñược sự thông cảm, chỉ bảo của quý thầy cô cùng các bạn. Tp.HCM ngày 31/12/2007 Lương Nguyễn Hải ðăng-ðoàn Huỳnh Cẩm Duyên MỤC LỤC KLTN –WEB SERVICE SECURITY WITH OPEN SOURCE ACEGI AND APPLYING FOR A SMALL RETAILING WEBSITE iii MỤC LỤC NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN i LỜI CÁM ƠN . ii MỤC LỤC . iii DANH MỤC CÁC HÌNH VẼ . v DANH MỤC CÁC BẢNG vii 1. CHƯƠNG 1 – MỞ ðẦU 1 1.1. Tính cấp thiết của ñề tài 1 1.2. Mục tiêu của ñề tài . 1 2. CHƯƠNG 2 – CƠ SỞ LÝ THUYẾT 4 2.1. Web Services 4 2.1.1. Tổng quan về Web Service 4 2.1.2. Các thành phần chính của Web Service . 7 2.1.3. Tính bảo mật Web Service 12 2.2. Spring Web Service .13 2.2.1. Giới thiệu về Spring Framework và Spring Web Service 13 2.2.2. Contract-first 15 2.2.3. Tạo một web service trong Spring 44 MỤC LỤC KLTN –WEB SERVICE SECURITY WITH OPEN SOURCE ACEGI AND APPLYING FOR A SMALL RETAILING WEBSITE iv 2.2.4. Bảo mật web service trong Spring Web Service .70 2.3. Acegi Security .91 2.3.1. Giới thiệu .91 2.3.2. Authentication 92 2.3.3. Authorization 104 2.4. Kết luận . 125 3. CHƯƠNG 3 – THIẾT KẾ VÀ CÀI ðẶT . 127 3.1. Thực tế 127 3.2. Sơ ñồ chuyển trang 127 3.3. Cài ñặt giao diện 128 4. CHƯƠNG 4 – KẾT LUẬN 132 4.1. Tóm tắt các kết quả ñạt ñược . 132 4.2. Hướng phát triển 132 TÀI LIỆU THAM KHẢO 133 DANH MỤC CÁC HÌNH VẼ KLTN –WEB SERVICE SECURITY WITH OPEN SOURCE ACEGI AND APPLYING FOR A SMALL RETAILING WEBSITE v DANH MỤC CÁC HÌNH VẼ Hình Nội dung Trang 1.1 Use case diagram của chương trình 2 2.1 Kiến trúc Web service 8 2.2 Cấu trúc của một message theo dạng SOAP 12 2.3 Cấu trúc các module trong Spring Web Service 16 2.4 Quá trình xử lý luồng ñi của MessageDispatcher 47 2.5 Những lớp liên quan ñến quá trình Pre-Invocation Handling 110 2.6 After Invocation Handling 114 3.1 Sơ ñồ chuyển trang 127 3.2 Màn hình ñăng nhập 128 3.3 ðăng nhập thành công 128 3.4 Xem danh sách áo dài 129 3.5 Xem chi tiết áo dài 129 3.6 Xem thông tin liên hệ 130 3.7 Xem danh sách ñơn ñặt hàng 130 DANH MỤC CÁC HÌNH VẼ KLTN –WEB SERVICE SECURITY WITH OPEN SOURCE ACEGI AND APPLYING FOR A SMALL RETAILING WEBSITE vi 3.8 Xóa khách hàng 131 3.9 Cấm/cho phép khách hàng 131 DANH MỤC CÁC BẢNG KLTN –WEB SERVICE SECURITY WITH OPEN SOURCE ACEGI AND APPLYING FOR A SMALL RETAILING WEBSITE vii DANH MỤC CÁC BẢNG Bảng Nội dung Trang 1.1 Mô tả các use case 2 2.1 Bảng sử dụng KeyStore 74 CHƯƠNG 1 MỞ ðẦU KLTN – WEB SERVICE SECURITY WITH OPEN SOURCE ACEGI AND APPLYING FOR A SMALL RETAILING WEBSITE 1 1. CHƯƠNG 1 – MỞ ðẦU 1.1. Tính cp thit ca ñ tài Cách ñây vài năm, khi nói tới thế kỷ 21, người ta khẳng ñịnh ñó sẽ là thời ñại của “nền kinh tế số” với “thương mại ñiện tử” là then chốt. Thông tin và các giao dịch ñược số hóa sẽ làm ñảo lộn nền kinh tế thế giới . Làm sao ñể có thể tận dụng Internet mở rộng thị trường, tìm thêm cơ hội cho sản phẩm, dịch vụ của mình ñã trở thành ñiều mà các doanh nhân, doanh nghiệp Việt Nam không thể không quan tâm. Có thể trước mắt, khi phần lớn các Website thương mại ñiện tử ở Việt Nam chưa thực hiện giao dịch trực tuyến thì bảo mật chưa thật sự quan trọng, nhưng về lâu dài, khi các giao dịch thương mại ñiện tử trở thành xu thế tất yếu thì nếu ít quan tâm ñến bảo mật sẽ rất khó ñể tự bảo vệ mình. Web service ra ñời ñã mở ra một hướng mới trong việc phát triển các ứng dụng trên Internet. Chính vì thế sự an toàn của web service trên mạng cũng không thể nằm ngoài vấn ñề này, có thể nói ngày nay ngoài việc nghiên cứu làm sao ñể tạo ra một web services tốt mang lại nhiều lợi ích thì việc nghiên cứu ñể làm sao mang lại sự an toàn cho web services cũng là một trong những vấn ñề quan trọng nhất. Chính vì thế, cần thiết phải có nhiều ñề tài nghiên cứu về bảo mật mạng và những công cụ thực hiện bảo mật ñể có thể áp dụng chúng cho thực tế nước ta hiện nay. 1.2. Mc tiêu ca ñ tài Mục tiêu chính của ñề tài gồm: • Nghiên cứu về web servicecông nghệ Spring Web service. CHƯƠNG 1 MỞ ðẦU KLTN – WEB SERVICE SECURITY WITH OPEN SOURCE ACEGI AND APPLYING FOR A SMALL RETAILING WEBSITE 2 • Nghiên cứu về các ứng dụng Acegi Security ñể bảo mật web service trong Spring. • Viết một ứng dụng web nhỏ bán hàng trên mạng bằng web service mô phỏng việc dùng Acegi Security ñể bảo mật. Các tính năng của chương trình mà chúng tôi ñang xây dựng có thể ñược biểu diễn trong use case diagram sau (Xem hình 1.1): Xoa User Xem don dat hang Disable User Enable User Admin Xem san pham Dat hang Xem thong tin lien he Dang nhap vao he thong User Dang ky thanh vien Hình 1.1 – Use case diagram của chương trình Nội dung chi tiết của các use case ñược cho trong bảng 1.1 CHƯƠNG 1 MỞ ðẦU KLTN – WEB SERVICE SECURITY WITH OPEN SOURCE ACEGI AND APPLYING FOR A SMALL RETAILING WEBSITE 3 Bảng 1.1: Mô tả các use case Tên use case Mô tả Actor Admin Xoa User Xóa một User trong danh sách User Disable User Loại bỏ các quyền của User. Enable User Khôi phục các quyền cho User Xem don dat hang Xem ñơn ñặt hàng của khách Dang nhap vao he thong Dang nhap vao he thong Actor user Xem san pham Xem sản phẩm áo cưới hiện có ở cửa hàng Dat hang ðặt hàng áo cưới Xem thong tin lien he Xem thông tin liên h ệ của cửa hàng Dang ky thanh vien Dang ky thanh vien Dang nhap vao he thong Dang nhap vao he thong [...]... o m t cũng yêu c u Java 5 Spring web service bao g m m t s module sau: • XML module (spring-xml.jar) ch a nh ng class h tr XML cho Web service Module này có m c ñích chính cho Spring Web Service Framwork, và không ph i là Web service developer • Gói Core (spring -Web Service- core.jar và spring -Web Service- coretiger.jar) là ph n trung tâm c a c a ch c năng Spring web service Nó cung c p nh ng interfaces... ng mô t d ch v (Service Description) v i công ngh chu n là WSDL và XML WSDL (Web Services Description Language) là m t ngôn ng d a trên cú pháp XML dùng ñ mô t m t web service WSDL như m t file ng d ng trung gian ñ ng gi a web serviceweb service client • T ng d ch v ( Service) : cung c p các ch c năng c a service • T ng ñăng ký d ch v (Service Registry) v i công ngh chu n là UDDI (Universal Description,... nghiên c u, nhóm ñã có m t s ki n th c nh t ñ nh v Web Service, Spring Web service và Acegi Security ðây là cơ s lý thuy t n n t ng cho ng d ng 2.1 Web Services 2.1.1 T ng quan v Web Service 2.1.1.1 Gi i thi u Web Service là m t công ngh cho phép nh ng ng d ng có th giao ti p v i nhau trong nh ng h ñi u hành và nh ng ngôn ng l p trình ñ c l p v i nhau M t Web Service là m t giao di n ph n m m (software interface)... server-side, v i s WebserviceMessage và phân ph i thông ñi p r t m nh, và nh ng class h tr vi c ñ nh nghĩa endpoint c a Web service; cu i cùng là client-side WebServiceTemplate • Gói Security (spring -Web Service- security.jar) cung c p ñ nh nghĩa c a Web Service- Security mà h p nh t v i gói Core Nó cho phép b n thêm KLTN – WEB SERVICE SECURITY WITH OPEN SOURCE ACEGI AND APPLYING FOR A SMALL RETAILING WEBSITE 14... n thông tin khi s d ng service Hình 2.1 - Ki n trúc c a Web Service 2.1.2 Các thành ph n chính c a Web Service 2.1.2.1 WSDL 2.1.2.1.1 T ng quát WSDL là m t tài li u d a trên cú pháp XML dùng ñ mô t m t web service nó ñóng vai trò trung gian gi a web serviceweb service client Trong tài li u WSDL chúng ta s ñ nh nghĩa các phương th c ñư c web service h tr , các ki u d li u ñư c s d ng trong các phương... vàng - Yellow pages: ch a thông tin mô t web services theo nh ng ch ng lo i khác nhau Nh ng thông tin này cho phép các ñ i tư ng th y web services theo t ng ch ng lo i c a nó • Trang xanh - Green pages: ch a thông tin k thu t mô t các hành vi và các ch c năng c a web services Các ñ i tư ng d a vào ñ c ñi m c a web services ñ tìm ki m 2.1.3 Tính b o m t Web Service 2.1.3.1 Gi i thi u WS - Security là... module trong Spring -Web Service và s ph thu c gi a chúng Mũi tên di n t s ph thu c, ví d như Spring -Web Service core ph thu c vào Spring-XML và Spring-OXM Hình 2.3-C u trúc các module trong Spring Web Service 2.2.2 Contract-first 2.2.2.1 Gi i thi u Khi t o Web service, có 2 d ng phát tri n: Contract Last và Contract First Khi s d ng Contract-last, b n b t ñ u v i Java code, và ñ cho Web service contract... Contract-first web service 2.2.2.4.1 Gi i thi u Sau ñây là cách vi t m t contract-first Web Service, có nghĩa là phát tri n web service b t ñ u v i XML Shema/WSDL ti p theo là mã Java Trong ph n này, chúng tôi xin gi i thi u m t web service, client có th g i yêu c u kỳ ngh lên server ñ ñ t trư c 2.2.2.4.2 Thông ñi p Trong ph n này, chúng ta s t p trung vào thông ñi p XML ñư c g i ñi và nh n t Web service. .. và ñăng ký web service KLTN – WEB SERVICE SECURITY WITH OPEN SOURCE ACEGI AND APPLYING FOR A SMALL RETAILING WEBSITE 6 CHƯƠNG 2 CƠ S LÝ THUY T • Bên c nh ñó ñ cho các service có tính an toàn, toàn v n và b o m t thông tin trong ki n trúc web service chúng ta có thêm các t ng Policy, Security, Transaction, Management giúp tăng cư ng tính b o m t, an toàn và toàn v n thông tin khi s d ng service Hình... services là m t s n ph m c a Spring community t p trung vào vi c t o nh ng s n ph m Web Service Spring web service nh m vào vi c làm nh nhàng s phát tri n contract-first SOAP services Cho phép t o ra nh ng web service linh ñ ng s d ng nh ng cách khác nhau ñ ñi u khi n XML payload 2.2.1.3 Môi trư ng runtime Spring Web Services ch y v i Java 1.3 Nó cũng h tr Java 5.0, m c dù lo i Java ñư c ñ c t cho phiên . về Web Service, Spring Web service và Acegi Security. ðây là cơ sở lý thuyết nền tảng cho ứng dụng. 2.1. Web Services 2.1.1. Tổng quan về Web Service. cố hoặc yêu cầu sai. 2.1.1.3 Kiến trúc của công nghệ Web Service Hình 2.1 mô tả kiến trúc của công nghệ Web Service. Trong ñó bao gồm các tầng: • Tầng

Ngày đăng: 13/04/2013, 08:57

Hình ảnh liên quan

DANH MỤC CÁC HÌNH VẼ - công nghệ Sping Web service
DANH MỤC CÁC HÌNH VẼ Xem tại trang 5 của tài liệu.
DANH MỤC CÁC BẢNG - công nghệ Sping Web service
DANH MỤC CÁC BẢNG Xem tại trang 7 của tài liệu.
Hình 1.1 – Use case diagram của chương trình - công nghệ Sping Web service

Hình 1.1.

– Use case diagram của chương trình Xem tại trang 9 của tài liệu.
Bảng 1.1: Mô tả các use case - công nghệ Sping Web service

Bảng 1.1.

Mô tả các use case Xem tại trang 10 của tài liệu.
Hình 2.1- Kiến trúc của WebService - công nghệ Sping Web service

Hình 2.1.

Kiến trúc của WebService Xem tại trang 14 của tài liệu.
Hình 2.2 -Cấu trúc của một message theo dạng SOAP - công nghệ Sping Web service

Hình 2.2.

Cấu trúc của một message theo dạng SOAP Xem tại trang 18 của tài liệu.
Hình dưới ñây mô tả các module trong Spring-Web Service và sự phụ thuộc giữa chúng. Mũi tên diễn tả sự phụ thuộc, ví dụ như Spring-Web Service core  phụ thuộc vào Spring-XML và Spring-OXM - công nghệ Sping Web service

Hình d.

ưới ñây mô tả các module trong Spring-Web Service và sự phụ thuộc giữa chúng. Mũi tên diễn tả sự phụ thuộc, ví dụ như Spring-Web Service core phụ thuộc vào Spring-XML và Spring-OXM Xem tại trang 22 của tài liệu.
ðây là một mô hình vòng: Flight tham chiếu ñến Passenger, và ngược lại - công nghệ Sping Web service

y.

là một mô hình vòng: Flight tham chiếu ñến Passenger, và ngược lại Xem tại trang 26 của tài liệu.
Hình 2.4-Quá trình xử lý luồng ñ ic ủa MessageDispatcher - công nghệ Sping Web service

Hình 2.4.

Quá trình xử lý luồng ñ ic ủa MessageDispatcher Xem tại trang 52 của tài liệu.
Trong ví dụ này, chúng ta cấu hình Jaxb2Marshaller cho OrderRequest và lớp - công nghệ Sping Web service

rong.

ví dụ này, chúng ta cấu hình Jaxb2Marshaller cho OrderRequest và lớp Xem tại trang 61 của tài liệu.
Hai mô hình lập trình trước dựa trên sự thừa kế, và xử lý những thông ñiệp XML riêng lẻ - công nghệ Sping Web service

ai.

mô hình lập trình trước dựa trên sự thừa kế, và xử lý những thông ñiệp XML riêng lẻ Xem tại trang 63 của tài liệu.
Interceptor này ñược cấu hình sử dụng tập tin securityPolicy.xml trong classpath. Nó sử dụng hai callback handler ñược ñịnh nghĩa trong tập tin - công nghệ Sping Web service

nterceptor.

này ñược cấu hình sử dụng tập tin securityPolicy.xml trong classpath. Nó sử dụng hai callback handler ñược ñịnh nghĩa trong tập tin Xem tại trang 79 của tài liệu.
Bảng 2.1-Bảng sửdụng KeyStore - công nghệ Sping Web service

Bảng 2.1.

Bảng sửdụng KeyStore Xem tại trang 81 của tài liệu.
UserDetailsService. Cho loại này, một lựa chọn ñơn giản ñược cấu hình trong - công nghệ Sping Web service

ser.

DetailsService. Cho loại này, một lựa chọn ñơn giản ñược cấu hình trong Xem tại trang 100 của tài liệu.
ñảm bảo AccesDecisionManager ñược cấu hình hỗ trợ loại ñối tượng bảo mật mà security interceptor sẽ ñưa ra  - công nghệ Sping Web service

m.

bảo AccesDecisionManager ñược cấu hình hỗ trợ loại ñối tượng bảo mật mà security interceptor sẽ ñưa ra Xem tại trang 113 của tài liệu.
Hình sau mô tả quá trình này: - công nghệ Sping Web service

Hình sau.

mô tả quá trình này: Xem tại trang 116 của tài liệu.
@Secured thể hiện thuộc tính cấu hình, và trả về trong cùng một cấu hình bảo mật ñược cung cấp bởi trình soạn thảo thuộc tính:  - công nghệ Sping Web service

ecured.

thể hiện thuộc tính cấu hình, và trả về trong cùng một cấu hình bảo mật ñược cung cấp bởi trình soạn thảo thuộc tính: Xem tại trang 123 của tài liệu.
ðầu tiên sẽ tìm hiểu AspectJSecurityInterceptor ñược cấu hình trong Spring application context như thế nào:  - công nghệ Sping Web service

u.

tiên sẽ tìm hiểu AspectJSecurityInterceptor ñược cấu hình trong Spring application context như thế nào: Xem tại trang 125 của tài liệu.
Trong application context, bạn cần cấu hình 3 bean: - công nghệ Sping Web service

rong.

application context, bạn cần cấu hình 3 bean: Xem tại trang 129 của tài liệu.
thức với ñịnh nghĩa giống nhau. Ví dụ cấu hình có thể ñược sinh ra dùng ñường dẫn Apache Ant như sau:  - công nghệ Sping Web service

th.

ức với ñịnh nghĩa giống nhau. Ví dụ cấu hình có thể ñược sinh ra dùng ñường dẫn Apache Ant như sau: Xem tại trang 132 của tài liệu.
Hình 3.1 – Sơ ñồ chuy ển trang - công nghệ Sping Web service

Hình 3.1.

– Sơ ñồ chuy ển trang Xem tại trang 134 của tài liệu.
Hình 3.2- Màn hình ñă ng nhập - công nghệ Sping Web service

Hình 3.2.

Màn hình ñă ng nhập Xem tại trang 135 của tài liệu.
Hình 3.3- ðă ng nhập thành công - công nghệ Sping Web service

Hình 3.3.

ðă ng nhập thành công Xem tại trang 135 của tài liệu.
Hình 3.5-Xem chi tiết áo dài - công nghệ Sping Web service

Hình 3.5.

Xem chi tiết áo dài Xem tại trang 136 của tài liệu.
Hình 3.4- Xem danh sách áo dài - công nghệ Sping Web service

Hình 3.4.

Xem danh sách áo dài Xem tại trang 136 của tài liệu.
Hình 3.7-Xem danh sách ñơ n ñặ t hàng - công nghệ Sping Web service

Hình 3.7.

Xem danh sách ñơ n ñặ t hàng Xem tại trang 137 của tài liệu.
Hình 3.6-Xem thông tin liên hệ - công nghệ Sping Web service

Hình 3.6.

Xem thông tin liên hệ Xem tại trang 137 của tài liệu.
Hình 3.9-Cấm/cho phép khách hàng - công nghệ Sping Web service

Hình 3.9.

Cấm/cho phép khách hàng Xem tại trang 138 của tài liệu.
Hình 3.8-Xóa khách hàng - công nghệ Sping Web service

Hình 3.8.

Xóa khách hàng Xem tại trang 138 của tài liệu.

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan