1. Trang chủ
  2. » Thể loại khác

DSpace at VNU: Xây dựng khung hỗ trợ việc bảo mật cho các dịch vụ web

13 80 0

Đ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

Định dạng
Số trang 13
Dung lượng 348,04 KB

Nội dung

DSpace at VNU: Xây dựng khung hỗ trợ việc bảo mật cho các dịch vụ web tài liệu, giáo án, bài giảng , luận văn, luận án,...

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ HOÀNG ĐỨC TÂM XÂY DỰNG KHUNG HỖ TRỢ VIỆC BẢO MẬT CHO CÁC DỊCH VỤ WEB LUẬN VĂN THẠC SĨ CƠNG NGHỆ THƠNG TIN Hà Nợi - 2015 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ HOÀNG ĐỨC TÂM XÂY DỰNG KHUNG HỖ TRỢ VIỆC BẢO MẬT CHO CÁC DỊCH VỤ WEB Ngành: Chuyên ngành: Mã số: Công nghê ̣ thông tin Kỹ thuật phầ n mề m 60480103 LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN NGƢỜI HƢỚNG DẪN KHOA HỌC: TS VÕ ĐÌNH HIẾU Hà Nội - 2015 LỜI CAM ĐOAN Tôi xin cam đoan kết đạt luận văn là sản phẩm riêng cá nhân tôi, không chép lại người khác Luận văn là kết trình học tập, nghiên cứu suốt hai năm cao học Trong nội dung luận văn, điều trình bày là kết cá nhân là kết tổng hợp từ nhiều nguồn tài liệu khác Những kết nghiên cứu nào cá nhân rõ ràng luận văn Các thông tin tổng hợp hay kết lấy từ nhiều nguồn tài liệu khác trích dẫn đầy đủ và hợp lý Tất tài liệu tham khảo có xuất xứ rõ ràng và trích dẫn hợp pháp Tơi xin hoàn toàn chịu trách nhiệm và chịu hình thức kỷ luật theo quy định cho lời cam đoan Hà Nợi, ngày 09 tháng 05 năm 2015 Tác giả Hoàng Đức Tâm LỜI CẢM ƠN Trước tiên xin gửi lời cảm ơn chân thành và lòng biết ơn sâu sắc TS Võ Đình Hiếu - giảng viên Bộ môn Công nghệ phần mềm - Khoa Công nghệ thông tin - Trường Đại học Công nghệ - ĐHQGHN Trong thời gian học tập và làm luận văn tốt nghiệp, thầy đã dành nhiều thời gian, công sức, tận tình bảo, hướng dẫn tơi việc định hướng nghiên cứu, thực luận văn Thời gian làm việc với thầy không giúp học hỏi nhiều kiến thức bổ ích mặt cơng nghệ mà giúp tơi có thêm hiểu biết vấn đề khác sống hàng ngày Bên cạnh tơi học từ thầy cách làm việc, diễn đạt và trình trình bầy ý tưởng Tơi xin cảm ơn Thầy/Cô Khoa Công nghệ thông tin – Trường Đại học Công nghệ đã giảng dạy chúng tơi q trình học tập và góp ý cho tơi hoàn thiện q trình làm luận văn Xin cảm ơn bạn bè, đồng nghiệp và đặc biệt là thành viên gia đình đã tạo điều kiện tốt nhất, động viên suốt trình học tập và nghiên cứu để hoàn thành tốt luận văn tốt nghiệp này Mặc dù đã cố gắng hoàn thiện luận văn với tất nỗ lực thân , chắn tránh khỏi thiếu sót, tơi rấ t mong sự góp ý của ba ̣n bè, thầ y cô và những người quan tâm tới đề tài này MỤC LỤC LỜ I CAM ĐOAN LỜ I CẢ M ƠN MỤC LỤC Danh mục các ký hiê ̣u, các chữ viết tắt Danh mục bảng dữ liệu Danh mục các hình vẽ GIỚI THIỆU Chương 1: TỔNG QUAN VỀ DỊCH VỤ WEB 1.1 Khái niệm dịch vụ Web 1.2 Dịch vụ dạng SOAP 10 1.2.1 Giới thiệu 10 1.2.2 Các thành phần Error! Bookmark not defined 1.2.3 Bảo mật cho dịch vụ SOAP (WS-Security) Error! Bookmark not defined 1.3 Dịch vụ dạng REST Error! Bookmark not defined 1.3.1 Giới thiệu Error! Bookmark not defined 1.3.2 Các thành phần Error! Bookmark not defined 1.3.3 Các nguyên tắc Error! Bookmark not defined 1.3.4 Cơ chế hoạt động Error! Bookmark not defined 1.3.5 HTTP status code Error! Bookmark not defined 1.3.6 So sánh REST và SOAP Error! Bookmark not defined 1.3.7 WADL Error! Bookmark not defined 1.4 Bảo mật dịch vụ Error! Bookmark not defined 1.4.1 Các khía cạnh bảo mật dịch vụ Error! Bookmark not defined 1.4.2 Cách thức xây dựng dịch vụ an toàn Error! Bookmark not defined 1.4.3 Cách nguyên tắc bảo mật dịch vụ Web Error! Bookmark not defined 1.4.4 Khung bảo mật dịch vụ Web Error! Bookmark not defined Chương 2: VẤN ĐỀ XÂY DỰNG KHUNG HỖ TRỢ BẢO MẬT Error! Bookmark not defined 2.1 Tính cấp thiết việc xây dựng khung hỗ trợ bảo mật Error! Bookmark not defined 1.2.1 Thực trạng Error! Bookmark not defined 1.2.2 Mục tiêu Error! Bookmark not defined 1.2.3 Phạm vi khung hỗ trợ bảo mật Error! Bookmark not defined 2.2 Cơ chế tích hợp ứng dụng vào IIS Error! Bookmark not defined 2.2.1 Giới thiệu IIS Error! Bookmark not defined 2.2.2 IIS Modules Error! Bookmark not defined 2.3 Cơ chế Cache Error! Bookmark not defined Chương 3: GIẢI PHÁP XÂY DỰNG KHUNG HỖ TRỢ BẢO MẬT DỊCH VỤ WEB Error! Bookmark not defined 3.1 Mơ hình tổng quan ứng dụng Error! Bookmark not defined 3.2 Quy trình hoạt đợng Error! Bookmark not defined 3.2.1 Quy trình hoạt động tổng thể Error! Bookmark not defined 4 3.2.2 Quy trình xác thực người dùng Error! Bookmark not defined 3.2.3 Quy trình hủy sessionID Error! Bookmark not defined 3.3 Cấu trúc bảng CSDL lƣu trữ quyền Error! Bookmark not defined 3.4 Các tiện ích Error! Bookmark not defined Chương 4: THỰC NGHIỆM HỆ THỐNG Error! Bookmark not defined 4.1 Môi trƣờng và công cụ thử nghiêm ̣ ̣ thố ng Error! Bookmark not defined 4.2 Thƣ ̣c nghiêm ̣ Error! Bookmark not defined 4.3 Kế t quả thƣ̣c nghiêm ̣ Error! Bookmark not defined KẾT LUẬN Error! Bookmark not defined TÀI LIỆU THAM KHẢO 10 DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT Viế t tắ t REST IIS HTML XML WSDL SOAP UDDI HTTP SSL TLS SAML CSDL URI URL JSON Tên đầ y đủ Representational State Transfer Internet Information Services HyperText Markup Language EXtensible Markup Language Web Services Description Language Simple Object Access Protocol Universal Description Discovery and Integration Hypertext Transfer Protocol Secure Socket Layer Transport Layer Security Security Assertion Markup Language Cơ sở liệu Uniform Resource Identifier Uniform Resource Locator Javascript Object Notation DANH MỤC BảNG Dữ LIệU Hình Trang Bảng 1.1 Danh sách thao tác phần PortType Bảng 1.2 Danh sách phương thức Bảng 1.3 Bảng danh sách mã trạng thái thường gặp Bảng 2.1 Bảng so sánh thời gian sử dụng và không sử dụng Cache Bảng 4.1 Các thành phần hệ thống thực nghiệm Bảng 4.2 Bảng so sánh thời gian thực thi chức trước và sau tích hợp 16 21 23 37 50 54 DANH MỤC CÁC HÌNH VẼ Hình Trang Hình 1.1 Mơ hình dịch vụ Web Hình 1.2 Mơ hình thể vai trò thành phần dịch vụ Web Hình 1.3 Thơng điệp SOAP Hình 1.4 Cấu trúc thơng điệp SOAP Hình 1.5 Vai trò WSDL dịch vụ Web Hình 1.6 Các thành phần WSDL Hình 1.7 Ví dụ thành phần WSDL Binding Hình 1.8 So sánh thơng điệp trao đổi SOAP và REST Hình 1.9 Thống kê tỉ lệ sử dụng loại dịch vụ năm 2014 Hình 1.10 Các thành phần REST Hình 1.11 So sánh nội dung mô tả tài nguyên JSON, YAML và XML Hình 1.12 Cơ chế hoạt động REST services Hình 1.13 WADL mơ tả dịch vụ tìm kiếm bài viết Yahoo Hình 2.1 Quy trình xử lý u cầu IIS Hình 2.2 Thơng tin bổ sung vào tệp web.config tích hợp thêm chức vào IIS Hình 2.3 Giao diện IIS Modules sử dụng IIS Manager Hình 2.4 Quy trình xử lý yêu cầu người dùng IIS Hình 2.5 Quy trình xử lý u cầu sử dụng cache Hình 3.1 Mơ hình tổng quan khung hỗ trợ bảo mật Hình 3.2 Lược đồ biểu diễn quy trình hoạt động tổng thể Hình 3.3 Quy trình lấy thơng tin quyền người dùng Hình 3.4 Quy trình cập nhật thơng tin sessionID Hình 3.5 Cách thức lưu trữ thơng tin sessionID Hình 3.6 Quy trình xác thực người dùng Hình 3.7 Quy trình hủy sessionID hết hạn Hình 3.8 Quy trình hủy sessionID người dùng đăng xuất Hình 3.9 Cấu trúc bảng CSDL lưu trữ quyền Hình 4.1 Tích hợp ứng dụng cách bổ sung vào tệp web.config Hình 4.2 Tích hợp ứng dụng cách sử dụng IIS Manager Hình 4.3 Kết nhận gọi dịch vụ trước tích hợp khung hỗ trợ Hình 4.4 Kết nhận gọi dịch vụ sau tích hợp khung hỗ trợ Hình 4.5 Hình minh họa cho việc sử dụng mã phiên làm việc để gọi dịch vụ Hình 4.6 Giao diện hỗ trợ phân quyền dịch vụ Hình 4.7Giao diện thơng báo người dùng khơng có quyền sử dụng dịch vụ 11 12 13 13 15 16 17 19 19 20 21 22 26 32 34 34 35 36 38 40 41 42 43 45 46 47 47 51 51 52 52 53 53 54 GIỚI THIỆU Hiện việc sử dụng dịch vụ Web đã trở nên phổ biến và nhiều công ty, tổ chức cá nhân sử dụng Các dịch vụ Web hỗ trợ việc chuyển chức từ máy tính cá nhân lên Internet, người dùng làm việc với dịch vụ thơng qua loại thiết bị kết nối mạng máy tính, điện thoại, Do dịch vụ Web làm Internet biến đổi thành nơi làm việc không là phương tiện để xem và tải nội dung Một số hãng lớn Yahoo, eBay hay Amazon phát triển dịch vụ ứng dụng dạng Web service Ở Việt Nam, số ứng dụng sử dụng dịch vụ web để làm tảng để phát triển ứng dụng tìm đường, đồ số, đăng ký đặt chỗ khám bệnh… Các công cụ hỗ trợ ngày càng nhiều, việc xây dựng dịch vụ Web trở nên dễ dàng Tuy nhiên, xây dựng dịch vụ web, người phát triển thường tập trung vào phát triển chức chưa quan tâm nhiều đến phần bảo mật cho dịch vụ Vì nảy sinh tình trạng dịch vụ Web sau phát triển xong gặp vấn đề bảo mật dịch vụ Hiện tại, dịch vụ thường bảo mật phương pháp như: xác thực người dùng cách sử dụng tài khoản và mật gọi dịch vụ, xác thực cách cung cấp cho người dùng khóa và người dùng sử dụng khóa gọi dịch vụ, sử dụng chung khóa để mã hóa và giải mã (machinekey) Tuy nhiên, phương pháp này hỗ trợ phân quyền cho toàn dịch vụ gói dịch vụ triển khai chưa giải yêu cầu việc phân quyền tới chức dịch vụ Việc chỉnh sửa lại mã nguồn để bổ sung thêm đoạn mã phân quyền gặp nhiều khó khăn Từ thực trạng trên, việc xây dựng khung hỗ trợ bảo mật có khả tích hợp với dịch vụ Web tồn để hỗ trợ việc bảo mật tới dịch vụ mà không cần chỉnh sửa lại mã nguồn là việc cần thiết Do đó, luận văn này tập trung vào số nội dung sau:  Tìm hiểu dịch vụ Web, chế hoạt động, ưu nhược điểm việc sử dụng dịch vụ  Tìm hiểu bảo mật cho dịch vụ Web  Tìm hiểu dịch vụ dạng SOAP và dịch vụ dạng REST  Tìm hiểu chế tích hợp ứng dụng vào IIS (Mơi trường dùng để triển khai dịch vụ web) để tiếp nhận và kiểm tra yêu cầu gọi dịch vụ từ client trước tiến hành thực thi dịch vụ  Tìm hiểu chế Cache để đảm bảo hiệu dịch vụ không bị ảnh hưởng nhiều sau tích hợp khung hỗ trợ bảo mật  Đề xuất và xây dựng khung hỗ trợ bảo mật, cho phép người quản trị phân quyền tới chức dịch vụ mà không cần phải chỉnh sửa lại mã nguồn Ngoài khung hỗ trợ cần đáp ứng yêu cầu hoạt động triển khai dịch vụ nhiều server 8  Hiện khung hỗ trợ bảo mật xây dựng để hỗ trợ cho dịch vụ web dạng REST và triển khai IIS Nội dung luận văn trình bày gồm:  Chƣơng 1: Tổng quan dịch vụ Web trình bày định nghĩa dịch vụ Web, chi tiết hai loại dịch vụ dạng SOAP và REST và vấn đề việc bảo mật dịch vụ  Chƣơng 2: Vấn đề xây dựng khung hỗ trợ bảo mật dịch vụ Web trình bày tính cấp thiết việc xây dựng khung hỗ trợ bảo mật Giới thiệu tổng quan công nghệ sử dụng khung hỗ trợ chế tích hợp ứng dụng vào IIS, chế Cache Từ làm tiền đề cho việc đưa giải pháp cho việc xây dựng khung hỗ trợ bảo mật dịch vụ Web Chương  Chƣơng 3: Giải pháp xây dựng khung hỗ trợ bảo mật dịch vụ Web trình bày chi tiết mơ hình, giải pháp đưa để phân quyền cho dịch vụ Web mà không cần chỉnh sửa lại mã nguồn, đồng thời hỗ trợ yêu cầu triển khai nhiều máy chủ  Chƣơng 4: Thực nghiệm hệ thống trình bày phầ n thực nghiê ̣m triển khai cho mô hình, phương pháp mà luâ ̣n văn đã đề xuấ t ở Chương  Kết luận trình bày kết mà luận văn đã đạt và hướng phát triển luận văn tương lai 9 Chƣơng TỔNG QUAN VỀ DỊCH VỤ WEB Chương này trình bày khái niệm dịch vụ Web, mơ tả tổng quan dịch vụ dạng SOAP và mô tả chi tiết dịch vụ dạng REST Bên cạnh là khía cạnh để đảm tính bảo mật cho các dịch vụ 1.1 Khái niệm dịch vụ Web Chúng ta tìm thấy dễ dàng tìm thấy định nghĩa khác dịch vụ Web Theo định nghĩa W3C (World Wide Web Consortium) , dịch vụ Web là hệ thống phần mềm thiết kế để hỗ trợ khả tương tác hai thiết bị điện tử thông qua hệ thống mạng [4] Theo IBM: Service là ứng dụng với người dùng, thao tác thực nhiều lần tiến trình và thực hay nhiều người [1] Dịch vụ Web là phần hệ thống phần mềm, hoạt động thông qua mạng Internet và sử dụng chuẩn thông điệp XML XML sử dụng để mã hóa tất thơng tin liên lạc tới dịch vụ Web Ví dụ máy trạm gọi dịch vụ Web cách gửi thông điệp dạng XML, sau đợi phản hồi dạng XML từ máy chủ cung cấp dịch vụ Do tất thông tin liên lạc thông qua XML nên dịch vụ Web khơng bị bó buộc hệ điều hành hay ngơn ngữ lập trình nào Java giao tiếp với Perl, ứng dụng Windows giao tiếp với ứng dụng Unix Dịch vụ Web là ứng dụng khép kín, độc lập, phân tán và động Nó mô tả, triển khai và gọi qua hệ thống mạng để tạo sản phẩm, quy trình hay chuỗi xử lý Các úng dụng triển khai mạng nội bộ, phân tán triển khai mạng Internet Dịch vụ Web xây dựng chuẩn mở TCP/IP, HTTP, Java, HTML và XML Dịch vụ Web là tập hợp giao thức mở và tiêu chuẩn sử dụng để trao đổi liệu ứng dụng hệ thống Phần mềm ứng dụng viết ngôn ngữ lập trình khác và chạy tảng hệ điều hành khác sử dụng dịch vụ Web để trao đổi liệu qua hệ thống mạng Khả tương tác này là việc sử dụng chuẩn mở Tóm lại dịch vụ Web hoàn chỉnh đáp ứng  Sẵn sàng mạng Internet mạng nội  Sử dụng chuẩn thông điệp XML  Không gắn với hệ điều hành hay ngơn ngữ lập trình nào Đặc điểm dịch vụ web bao gồm bốn yếu tố là : lấy XML làm tảng, tính đồng và bất đồng bộ, hoạt động theo mơ hình máy khách – máy chủ, tính phân tán Dịch vụ Web đã sử dụng XML tầng biểu diễn liệu và tầng vận chuyển liệu Việc sử dụng XML loại bỏ rào cản kết nối mạng, hệ điều hành ràng buộc tảng Tính động là người dùng gửi yêu cầu, phải đợi 10 dịch vụ trả lời thực thao tác Còn bất đồng cho phép người dùng thực thao tác khác mà không cần phải chờ đến dịch vụ trả lời thực Điều này giúp tăng hiệu ứng dụng Tính phân tán thể thơng qua việc tính hệ thống triển khai dạng dịch vụ nhiều máy chủ khác nhau, qua giúp giảm tải cho hệ thống Dịch vụ Web sử dụng ngày càng nhiều đem đến nhiều lợi ích Có thể số điểm tiêu biểu như: người phát triển chuyển tính mong muốn thành dịch vụ, sau người sử dụng tính thơng qua mạng Internet (hoặc mạng nội bộ); Dịch vụ Web cho phép ứng dụng khác giao tiếp và chia sẻ liệu với Nó sử dụng để tạo nên tảng ứng dụng và công nghệ độc lập, khơng phụ thuộc vào ngơn ngữ lập trình hay hệ điều hành Dịch vụ Web sử dụng giao thức chuẩn cho việc giao tiếp Điều này giúp tạo ưu mở rộng phạm vi lựa chọn, giảm chi phí để tăng tính cạnh tranh và làm tăng chất lượng Bên cạnh đó, việc sử dụng SOAP REST qua giao thức HTTP, giúp người dùng sử dụng Internet để thực thao tác Đây là giải pháp tốn so với giải pháp độc quyền khác EDI/ B2B Bên cạnh việc sử dụng SOAP thông qua HTTP, dịch vụ Web sử dụng FTP để giao tiếp Một số ưu điểm dịch vụ Web bao gồm: Khả hoạt động rộng lớn (phụ thuộc vào môi trường mà dịch vụ triển khai: mạng internet, mạng nội bộ, ); Đơn giản và dễ hiểu định dạng liệu dạng văn (text) nên người phát triển dễ dàng hiểu được; Tính tái sử dụng cao, nhiều cơng ty tổ chức sử dụng chung tài nguyên, qua giúp giảm thời gian và nhân phát triển, giảm giá thành sản phẩm; Hoạt động đa môi trường XML hỗ trợ tất hệ điều hảnh, kể môi trường di động; không bị giới hạn firewall Bên cạnh ưu điểm kể dịch vụ Web có số nhược điểm Đó là xây dựng dịch vụ, người phát triển phải quan tâm tới vấn đề bảo mật Ngoài ra, dịch vụ Web thiếu chế khôi phục xảy cố Hiện có hai loại dịch vụ Web sử dụng phổ biến là dịch vụ dạng SOAP và dịch vụ dạng REST Chi tiết hai loại dịch vụ này mô tả mục 1.2 và 1.3 Do luận văn tập trung vào REST services, phần giới thiệu SOAP mang tính tổng quan 1.2 Dịch vụ dạng SOAP 1.2.1 Giới thiệu Kiến trúc dịch vụ Web xây dựng dựa tương tác ba thành phần chính: service provider (cung cấp dịch vụ), service registry (đăng ký dịch vụ) và service requestor (yêu cầu dịch vụ) Các thành phần tương tác với thông qua ba TÀI LIỆU THAM KHẢO 11 Tiế ng Anh [1] Hogg,Jane(2006),Microsoft, Web Service Security, Scenarios, Patterns, and Implementation Guidance for Web Service Enhancements (WSE 3.0) [2] Heather Kreger (2001) IBM Software Group – Web Services Conceptual Architecture (WSCA 1.0) [3] Microsoft patterns & practice – proven practices for predictable results [4] Web Services Architecture – W3C Working Group Note 11 February 2004 [5] Erin Cavanaugh – Web Services: Benefit, challenges, and a unique, visual development solution [6] Jack Koftikian - Simple Object Access Protocol (SOAP) [7] Ken Schaefer, Jeff Cochran, Scott Forsyth, Rob Baugh, Mike Everest & Dennis Glendenning – Professional IIS 7.0 [8] Todd Fredrich (25/09/2012) - RESTful Service Best Practices Recommendations for Creating Web Services [9] Tutorialspoint.com –Learn Web Services [10] Docs.oracle.com - Intro Security [11] IBM.com – DB2 Web Service Provider security ... nghĩa dịch vụ Web, chi tiết hai loại dịch vụ dạng SOAP và REST và vấn đề việc bảo mật dịch vụ  Chƣơng 2: Vấn đề xây dựng khung hỗ trợ bảo mật dịch vụ Web trình bày tính cấp thiết việc xây dựng. .. khăn Từ thực trạng trên, việc xây dựng khung hỗ trợ bảo mật có khả tích hợp với dịch vụ Web tồn để hỗ trợ việc bảo mật tới dịch vụ mà không cần chỉnh sửa lại mã nguồn là việc cần thiết Do đó,... defined 1.4.3 Cách nguyên tắc bảo mật dịch vụ Web Error! Bookmark not defined 1.4.4 Khung bảo mật dịch vụ Web Error! Bookmark not defined Chương 2: VẤN ĐỀ XÂY DỰNG KHUNG HỖ TRỢ BẢO MẬT Error!

Ngày đăng: 17/12/2017, 04:25

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w