GIÁO TRÌNH web service

59 127 0
GIÁO TRÌNH 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

Mục lục MỤC LỤC 1) CHƯƠNG I: CÔNG NGHỆ WEB SERVICE Web Service ? Đặc điểm Web service Nền tảng Web service Các công nghệ Web service Ngôn ngữ XML – RPC Giao thức truyền thông điệp SOAP 10 Đăng ký dịch vụ UDDI 16 2) Kiến trúc Web service .19 Mô tả chế hoạt động Web Service 19 Kiến trúc phân tầng Web Service .20 Kiến trúc hướng dịch vụ SOA 22 Khái niệm kiến trúc hướng dịch vụ SOA 22 Nguyên tắc thiết kế SOA 23 24 3) CHƯƠNG II: XÂY DỰNG WEB SERVICE 26 Các vấn đề cần xác định rõ trước bắt tay xây dựng ứng dụng Web service 26 Xây dựng Web Service với ASP.NET 27 Tạo Web Service .27 Xây dựng Web Service với Java 32 4) CHƯƠNG III: KHAI THÁC WEB SERVICE .34 Ứng dụng Window Form kết nối tới Web Service 34 Ứng dụng Java Swing kết nối tới Web Service 38 Ứng dụng Web ASP.NET kết nối tới Web Service .44 Ứng dụng Web JSP kết nối tới Web Service .44 5) CHƯƠNG IV: BẢO MẬT TRONG WEB SERVICE 46 Tổng quan vấn đề bảo mật 46 Bảo mật web service 47 Một số kiểu giả mạo, đánh cắp thơng tin cách phòng chống 48 Thực bảo mật web service .53 Lập trình Web Service Trang / 59 Mục lục 6) PHỤ LỤC I: Tài nguyên tài liệu tham khảo 59 Lập trình Web Service Trang / 59 Phân bổ chương trình PHÂN BỔ CHƯƠNG TRÌNH BUỔI STT Lý thuyết NỘI DUNG Thực hành 10 11 12 13 14 15 16 17 18 19 20 Lập trình Web Service Trang / 59 Chương I: Bắt đầu với Java Server Page (JSP) CHƯƠNG I: CÔNG NGHỆ WEB SERVICE Mục tiêu: Sau kết thúc chương này, bạn có thể:  Sự phát triển công nghệ thông tin cho phép ứng dụng hiệu vào hoạt động kinh doanh, giải trị, quản lý số lĩnh vực khoa học xã hội khác Sự bùng nổ Internet trở thành điều kiện thuận lợi, đem lại hiệu suất cao công việc đồng thời giảm thiểu chi phí cho doanh nghiệp Tuy nhiên yêu cầu nghiệp vụ phức tạp hệ thống dẫn đến hệ thống phần mềm tương ứng ngày trở nên phức tạp, cồng kềnh khó kiểm sốt Rất nhiều u cầu nghiệp vụ đòi hỏi xử lý vấn đề liên quan đến liệu phân tán, xử lý thông tin khác nhiều tổ chức nắm giữ Đã có nhiều kiến trúc phần mềm đưa chưa đủ mạnh để giải vấn đề Qua thời gian, việc xây dựng ứng dụng tập hợp thành phần phân phối Lập trình Web Service Trang / 59 Chương I: Bắt đầu với Java Server Page (JSP) vào mạng chung làm việc với phần chương trình tổng thể ngày trở nên phổ biến Hình thức thường gọi kỹ thuật Distributed Component Object Model (DCOM) Microsoft, Common Object Request Broker Architecture (CORBA) Object Management Group, Remote Method Invocation (RMI) Sun Chúng cung cấp cấu trúc mềm dẻo, tin cậy để nắm bắt kịp thời phát triển cần thiết ứng dụng Mặc dù công nghệ dựa kiểu thành phần hoạt động tốt môi trường Intranet, với Internet lại xuất hai vấn đề đáng kể Đầu tiên chúng không thực theo phương thức phần Tất hoạt động xử lý dựa đối tượng (object) lại không đưa chi tiết cụ thể quản lý vòng đời hoạt động, hỗ trợ xây dựng hỗ trợ kế thừa Thứ hai, quan trọng tập trung vào hình thức truyền thơng kiểu RPC điển hình dẫn đến việc xây dựng hệ thống kết hợp chặt chẽ quanh phương thức đối tượng Sự đời kiến trúc phần mềm hướng dịch vụ (SOA – Service Orient Architecture) mở hướng mới việc giải loại toán Kiến trúc SOA định nghĩa kiểu kiến trúc cho việc xây dựng hệ thống phân tán theo hướng dịch vụ, tức hệ thống phân tách thành module chương trình, module phát triển độc lập, module sử dụng công nghệ khác giao tiếp với Một cơng nghệ tiêu biểu cho kiến trúc hướng dịch vụ công nghệ Web Service Với công nghệ Web Service, Service module thực cơng việc khác nhau, ta tổng hợp Service thành phần lại để thực cơng việc lớn, gọi cơng nghệ tích hợp Web Service, Service thành phần gọi Service Composition Sự đời công nghệ Web Service đem lại nhiều lợi cho việc chia sẻ tài nguyên qua mạng, trợ giúp xây dựng hệ thống phân tán đồng thời đáp ứng tính mềm dẻo cần thiết, hệ thống dễ dàng chấp nhận thay đổi lớn so với thiết kế ban đầu mà đảm bảo cho vấn đề nâng cấp bảo trì sau Web Service đem đến đầy đủ đáp ứng cần thiết cho quy trình B2B – Bussiness to Bussiness B2C – Bussiness to Customer, Web Service thuật ngữ nhắc đến nhiều ngày sử dụng rộng rãi Web Service ? Theo định nghĩa W3C (World Wide Web Consortium), Web service hệ thống phần mềm thiết kế để hỗ trợ khả tương tác ứng dụng máy Lập trình Web Service Trang / 59 Chương I: Bắt đầu với Java Server Page (JSP) tính khác môi trường Internet thông qua giao diện (Interface) chung gắn kết mô tả XML Web service tài nguyên phần mềm xác định địa URL để thực chức đưa thông tin cho người dùng Web service tạo cách lấy chức đóng gói chúng cho ứng dụng khác dễ dàng tìm thấy truy cập tới dịch vụ mà cung cấp, đồng thời yêu cầu thông tin từ dịch vụ khác Web service bao gồm mô đun độc lập để thực yêu cầu nghiệp vụ doanh nghiệp thực thi Server Ứng dụng Web service tích hợp hệ thống hoạt động phát triển hệ thống Trong hệ thống này, ứng dụng cần tích hợp với sở liệu (CSDL) ứng dụng khác, người sử dụng giao tiếp với CSDL để tiến hành phân tích lấy liệu Đặc điểm Web service Web Service cho phép ứng dụng khác từ nguồn khác giao tiếp với ứng dụng khác mà không đòi hỏi nhiều thời gian coding, tất trình giao tiếp tuân theo định dạng XML, Web Service không bị phụ thuộc vào hệ điều hành hay ngơn ngữ lập trình Web service cho phép client server tương Lập trình Web Service Trang / 59 Chương I: Bắt đầu với Java Server Page (JSP) tác với tảng khác mà không cần thay đổi hay yêu cầu đặc biệt Ví dụ, chương trình viết ngơn ngữ Java trao đổi liệu với chương trình viết Perl, ứng dụng chạy Windows trao đổi liệu với ứng dụng chạy Linux Công nghệ Web Service không u cầu phải sử dụng trình duyệt ngơn ngữ HTML Phần lớn kỹ thuật Web service xây dựng mã nguồn mở phát triển từ chuẩn cơng nhận Nó tích hợp ứng dụng web lại với cách sử dụng công nghệ XML, SOAP, WSDL, UDDI tảng giao thức Internet với mục tiêu tích hợp ứng dụng truyền thơng điệp XML sử dụng để đánh dấu liệu, SOAP dùng để truyền liệu, WSDL sử dụng để mô tả dịch vụ có sẵn UDDI sử dụng để liệt kê dịch vụ có sẵn để sử dụng Web Service cho phép tổ chức trao đổi liệu với mà khơng cần phải có kiến thức hiểu biết hệ thống thông tin đứng sau Firewall Web service gồm nhiều mơ đun công bố Internet Là kết hợp việc phát triển theo hướng thành phần với lĩnh vực cụ thể cở sở hạ tầng Web, đưa lợi ích cho doanh nghiệp, khách hàng, nhà cung cấp dịch vụ khác cá nhân thông qua mạng Internet Web service triển khai hoạt động theo mơ hình client-server Nó triển khai phần mềm ứng dụng phía Server PHP, JSP, ASP.NET, … Khơng giống mơ hình client-server truyền thống, chắng hạn hệ thống Web serverweb page, Web Service không cung cấp cho người dùng giao diện đồ hoạ nào, Web Service đơn thuần việc chia sẻ liệu logic xử lý liệu thơng qua giao diện chương trình ứng dụng cài đặt xuyên suốt mạng máy tính Tính tương thích (Inteoperability) lợi vô mạnh mẽ Web Service, thông thường, công nghệ Java công nghệ Microsoft khó tích hợp Lập trình Web Service Trang / 59 Chương I: Bắt đầu với Java Server Page (JSP) với nhau, với Web Service Application Client sử dụng cơng nghệ hồn tồn có khả tương tác với thông qua Web Service Nền tảng Web service Dịch vụ Web nói cách khác khối xây dựng để di chuyển hệ thống máy tính phân tán Internet Các chuẩn mở việc tập trung vào giao tiếp làm việc cộng tác người ứng dụng tạo nên môi trường nơi mà Web service trở thành tảng cho việc tích hợp ứng dụng Các ứng dụng xây dựng sử dụng Web service loại từ nhiều nguồn khác làm việc với chúng đâu chúng triển khai Có thể có định nghĩa khác Web service công ty xây dựng chúng, hầu hết tất định nghĩa có chung điểm sau: Thứ nhất, Web service đưa chức hữu dụng cho người sử dụng Web thông qua giao thức chuẩn Web Trong hầu hết trường hợp, giao thức sử dụng SOAP Thứ hai, Web service đưa cách mô tả giao diện chúng cách đủ chi tiết nhằm cho phép người sử dụng xây dựng ứng dụng máy trạm để giao tiếp với chúng Mô tả thường cung cấp dạng tài liệu XML gọi tài liệu ngôn ngữ mô tả Web service – WSDL (Web service Description Language) Thứ ba, Web service đăng ký cho khách hàng tiềm người sử dụng tìm thấy chúng cách dễ dàng Điều thực với UDDI (Universal Discovery Description and Integration) Lập trình Web Service Trang / 59 Chương I: Bắt đầu với Java Server Page (JSP) Web service dịch vụ phần mềm trình bày Web thơng qua giao thức SOAP, mô tả tệp WSDL đăng ký UDDI Các dịch vụ Web service nguồn thơng tin mà ta dễ dàng kết hợp vào ứng dụng Dễ dàng nhận tồn lớp ứng dụng xây dựng để phân tích tích hợp thơng tin ta quan tâm trình bày theo nhiều cách khác Việc trình bày ứng dụng có dịch vụ Web service cho phép người sử dụng xây dựng ứng dụng có tính mạnh thông qua việc sử dụng Web service block xây sẵn Ví dụ, người sử dụng phát triển ứng dụng mua bán để tự động lấy thông tin giá từ nhiều nhà cung cấp khác nhau, cho phép người dùng chọn nhà cung cấp, chuyển đơn hàng sau theo dõi việc chuyển hàng cho tới nhận hàng Ứng dụng nhà cung cấp, trình bày dịch vụ họ Web, quay sử dụng dịch vụ Web service để kiểm tra tín dụng khách hàng, lấy tiền từ tài khoản khách hàng thiết lập việc chuyển hàng với công ty vận tải Các công nghệ Web service Ngôn ngữ XML – RPC  XML : viết tắt cụm từ Extensible Markup Language – Ngôn ngữ đánh dấu liệu  RPC – viết tắt cụm từ Remote Procedure Call – Thủ tục gọi từ xa RPC cung cấp cho người phát triển kĩ thuật để định nghĩa giao diện mà gọi từ xa thơng qua mơi trường mạng máy tính Giao diện hàm đơn giản thư viện API khổng lồ XML – RPC hướng tiếp cận dễ rõ ràng cho Web Service, cung cấp phương thức gọi ứng dụng từ máy tính local đến máy tính từ xa thơng qua mơi trường mạng  XML – RPC cho phép chương trình có khả tạo hàm thủ tục gọi hàm thông qua mạng máy tính  XML – RPC sử dụng giao thức HTTP để vận chuyển thông tin từ Client đến Server  XML – RPC sử dụng ngôn ngữ XML để mô tả thông điệp yêu cầu thông điệp đáp ứng gần gũi với ngôn ngữ tự nhiên Lập trình Web Service Trang / 59 Chương I: Bắt đầu với Java Server Page (JSP)  XML – RPC Client cụ thể thông tin tên thủ tục, tham biến thông điệp XML request, Server trả lỗi trả thông điệp response thông điệp XML response  Các tham số XML-RPC đơn giản kiểu liệu nội dung – nhiên cấu trúc liệu phức tạp struct, array hỗ trợ XML –RPC Giao thức truyền thông điệp SOAP SOAP viết tắt cho cụm từ - Simple Object Access Protocol Trong kiến trúc phân tầng Web Service, SOAP nằm tầng Packaging, SOAP giao thức đóng gói cho liệu chia ứng dụng Xét bản, SOAP XML, SOAP ứng dụng cụ thể XML SOAP xây dựng lên từ chuẩn XML XML Schema XML Namespaces dùng cho việc định nghĩa SOAP chức Các thành phần SOAP gồm có: Thơng điệp XML Thơng điệp XML tài liệu XML dùng để trao đổi thông tin ứng dụng Nó cung cấp tính mềm dẻo cho ứng dụng trình giao tiếp với dạng SOAP Các thơng điệp thứ gì: Hóa đơn tốn, yêu cầu giá cổ phiếu, truy vấn tới cơng cụ tìm kiếm thơng tin có quan hệ tới thành phần ứng dụng Hình 1: Mơ tả cấu trúc thơng điệp XML Bởi XML khơng phụ thuộc vào ứng dụng cụ thể, hệ điều hành hay ngơn ngữ lập trình nào, thơng điệp XML sử dụng tất mơi trường Một chương trình Windows Perl tạo thơng điệp XML, trình bày thơng điệp gửi đến cho chương trình cài đặt ngôn ngữ Java triển khai Unix RPC EDI Sử dụng thông điệp XML, đương nhiên SOAP có ứng dụng liên quan: RPC EDI Thủ tục gọi hàm từ xa RPC - Remote Procedure Call dạng tính tốn phân tán bản, mơ tả cách thức để chương trình tạo thủ tục gọi hàm phương thức tới máy tính khác, truyền đối số lấy giá trị trả Trao đổi tài liệu điện tử EDI Electronic Document Interchange dạng transaction cho quy trình thương mại định Lập trình Web Service Trang 10 / 59 Chương IX : Điều quản lỗi gỡ rối Lập trình Web Service Trang 45 / 59 Chương IX : Điều quản lỗi gỡ rối CHƯƠNG IV: BẢO MẬT TRONG WEB SERVICE Tổng quan vấn đề bảo mật Cùng với phát triển không ngừng Internet, hệ thống thông tin ngày phát triển vượt bậc Khái niệm business khơng giới hạn bên mà phát triển Internet Khái niệm thương mại điện tử đời minh chứng cho phát triển Tuy nhiên, với phát triển vấn đề an tồn vấn đề nóng cấp bách Tuy khơng có khái niệm an toàn tuyệt đối phải cần chế an tồn thích hợp để khai thác thương mại Internet Các giải pháp sử dụng mã hóa khóa, chữ ký số đảm bảo mức Nhưng phải cần khơng ngừng hồn thiện phát triển giải pháp để đảm bảo phù hợp mơi trường Internet An tồn thơng tin Internet vấn đề chung Sự an toàn web service lại cần quan tâm nữa, thông tin nhạy cảm tài khoản cá nhân ngân hàng bị đánh cắp Điều xảy sử dụng business service mua hàng, chứng khoán, chuyển tiền mà khơng có bảo đảm an toàn cần thiết Đây chuẩn an toàn chung cần thiết cần đáp ứng: - Identification: định danh truy cập tài nguyên hệ thống - Authentication: chứng thực tư cách truy cập tài nguyên người muốn sử dụng - Authorization: cho phép giao dịch xác nhận định danh người truy cập - Integrity: tồn vẹn thơng tin đường truyền - Confidentiality: độ an tồn, khơng đọc thơng tin đường - Auditing: kiểm tra, tất giao dịch lưu lại để kiểm tra - Non-repudiation: độ mềm dẻo, cho phép chứng thực tính hợp pháp hóa thơng tin đến từ phía thứ ba ngồi phía người gửi người nhận Những yêu cầu giúp cho hệ thống an toàn hơn, tránh phần truy cập không hợp lệ HTTP (HyperText Transfer Protocol) giao thức thường sử dụng cho việc trao đổi thông tin Internet, nhiên khơng an tồn, tất thơng tin gửi dưới dạng văn mạng ngang hàng khơng an tồn HTTP thuộc nhóm nghi thức SMTP, telnet, FTP, thiết kế giai đoạn đầu Internet mà vấn đề an toàn chưa quan tâm đến nhiều Một phát triển HTTP HTTPS, chuẩn an toàn cho HTTP HTTPS cho phép chứng thực client server qua chứng thực client server Lập trình Web Service Trang 46 / 59 Chương IX : Điều quản lỗi gỡ rối Trước có web servives security ( WS-Security ) ý nghĩa thơng thường an toàn web service bảo mật kênh truyền liệu Nó thực cho SOAP/HTTP dựa chế truyền thông điệp cách sử dụng giao thức HTTPS Khơng giống an tồn mức thơng điệp, HTTPS cung cấp an toàn tới toàn gói liệu HTTP Bởi vậy, khơng có tùy chọn để áp dụng an toàn có chọn lọc thành phần thông điệp Mặc dầu HTTPS không bao phủ tất khía cạnh chuẩn an tồn chung cung cấp mức bảo chứng đầy đủ với định danh chứng thực, tồn vẹn thơng điệp, độ tin cậy Tuy nhiên, authentication, auditing, and nonrepudiation chưa cung cấp Bên cạnh đó, HTTPS giao thức nên thông điệp qua HTTP server lại khơng an tồn Bảo mật web service Ngày công nghệ web services triển khai ứng dụng nhiều lĩnh vực khác bao gồm lĩnh vực nhạy cảm, đòi hỏi tính an tồn cao tài chính, ngân hàng,… Do web service cần cung cấp mức an tồn đủ để hỗ trợ cơng việc Bên cạnh mặt công nghệ web services mang lại việc đảm bảo an tồn, tin cậy, tồn vẹn thơng tin trao đổi web service điều quan trọng trình xây dựng web services, việc sử dụng ws security thành phần giúp cho thơng tin trao đổi web services trở nên an toàn Trước hết xem xét nhân tố rủi ro ảnh hưởng đến mức an toàn ứng dụng dựa web service Chúng ta sử dụng kịch rút tiền ngân hàng qua mạng để xem xét vấn đề Đây ứng dụng client/ server đơn giản mô tả người rút tiền (client) kết nối tới trung tâm liệu ngân hàng để sử dụng ứng dụng web service để thực u cầu Nếu khơng có an tồn áp dụng, có ba nhân tố mạo hiểm chính: - Những giao dịch khơng hợp pháp (Unauthorized transactions) : người khơng có quyền yêu cầu rút tiền Giao dịch không hợp pháp Chúng ta cấm vấn đề cách sử dụng chế chứng thực WS - Security Một ví dụ chứng thực bao gồm phải có kết hợp user ID/ password SOAP message - Những thơng báo khơng mã hóa (Readable messages in clear text-no encryption): số hiệu tài khoản số dư tài khoản gói SOAP dễ bị đọc mạng Việc lộ thông tin thông tin tài khoản số dư gửi qua mạng dưới định dạng văn Để giải vấn đề này, thơng tin phải mã hóa mức kênh chuyển thông điệp mức thông điệp (WS - Security) Lập trình Web Service Trang 47 / 59 Chương IX : Điều quản lỗi gỡ rối - Những thông điệp bị thay đổi mát (SOAP message susceptible to modification-no integrity) Trong trình chuyển thông tin từ người rút tiền đến trung tâm liệu, bị chặn Và thơng tin bị thay đổi, ví dụ số tài khoản 1234 bị thay đổi thành số 9876 Vấn đề dẫn đến thiếu toàn vẹn Những ví dụ trên, mơ tả an toàn liên quan tới yêu cầu chứng thực, tính bí mật, tồn vẹn thơng tin Trước có WS-Security, an tồn kênh chuyển thông điệp thường sử dụng Sự an tồn kênh chuyển thơng điệp chỗ mã hóa tồn thơng điệp, dẫn đến sử dụng CPU cao Tuy nhiên với WS-Security, cung cấp cách tối ưu hóa thao tác an tồn, mà yêu cầu thời gian sử dụng CPU Dựa vào mức an toàn cần thiết mà nhiều chế an tồn áp dụng cho ứng dụng Tuy nhiên việc chọn chế an tồn cho web service phải đòi hỏi cho người dùng không cảm thấy phức tạp tạo gò bó, việc chọn chế an tồn ws security phụ thuộc nhiều vào loại service tính mà servive cung cấp, ví dụ service giao dịch tài ngân hàng phải có chế an tồn hiệu qủa so với service chọn lọc phân loại tin tức hay service cho biết tỷ giá trao đổi loại ngoại tệ,… Bên cạnh điểm cần quan tâm an tồn không phụ thuộc vào giải thuật, tiêu chuẩn, chế mà ws security mang lại, mà tùy vào thái độ cơng ty có hiểu rõ tầm quan trọng an tồn thông tin triển khai ứng dụng, giao dịch mạng hay không cần thiết Một số kiểu giả mạo, đánh cắp thơng tin cách phòng chống Message Replay Attack Message Replay kiểu cơng mạng kiểu bắt gửi lại gói tin mà client gửi cho server Lập trình Web Service Trang 48 / 59 Chương IX : Điều quản lỗi gỡ rối Trong trình Attacker trung gian client server, bắt gói tin client chép gói tin đó, chỉnh sửa gửi lại cho server.Và server có gửi lại cho client Attacker bắt Ta phải ngăn chặn việc gửi lại gói tin kiểu gói tin gửi gây khơng quán liệu, thông tin gửi bị sai lệch ảnh hưởng đến client,việc gửi replayed message liên tục cách tự động làm chết server Giải pháp cho vấn đề sử dụng cache lưu lại tên định danh cho message server loại bỏ message có định danh bị trùng.Như message có tên định danh gửi chắc chắn message không bị giả mạo trình truyền Web service security cung cấp việc sử dụng Usernametoken có thẻ username password Các giá trị Nonce tạo ngẫu nhiên với Created thời gian mà message gửi Các giá trị Hash để che dấu thơng tin Lập trình Web Service Trang 49 / 59 Chương IX : Điều quản lỗi gỡ rối Giá trị thời gian mà message phải đồng với thời gian server Khi gói tin đến server server giới hạn khoảng thời gian mà message đến, vượt khoảng thời gian giới hạn gói tin bị loại bỏ Web Spoofing Web spoofing kiểu lừa đảo web phổ biến Có kiểu web spoofing IP spoofing, ARP spoofing, Web spoofing, DNS spoofing Ip spoofing: Chứng minh thực tin cậy với máy khác nhằm hợp pháp việc truy cập máy lấy username, password (có máy giả mạo giả mạo server client) Máy khác trở thành đồng phạm máy giả mạo sử dụng IP giả mạo trùng với IP máy Kiểu cơng thường xảy máy client độ bảo mật an tồn máy khơng cao Để tránh kiểu cơng server client có định danh xác thực lẫn Web spoofing : Người giả mạo tạo trang web đánh lừa người dùng click vào Cách thực : đặt trang web giả mạo liên kết với trang web thơng dụng Khi sử dụng mail kích hoạt web mail, attacker gửi mail đến giới thiệu link đến web giả Kẻ giả mạo đánh lừa máy tìm kiếm web để trỏ vào web giả Khi user request đén server sever trả url web Người giả mạo hướng người dùng truy cập đến trang web họ để dễ dàng đánh cắp thông tin Đây kiểu công thường xuyên phổ biến lừa cách trực tiếp đến người dùng cuối Cách thông thường kẻ giả mạo đánh lừa người dùng cuối khó giả mạo client thực web service DNS spoofing: Lập trình Web Service Trang 50 / 59 Chương IX : Điều quản lỗi gỡ rối Cách hoạt động DNS server : Giao thức Domain Naming System (DNS) định nghĩa RFC 1034/1035 xem giao thức quan trọng sử dụng Internet Nói ngắn để dễ hiểu, bạn đánh địa web chẳng hạn http://www.google.com vào trình duyệt, yêu cầu DNS đưa đến máy chủ DNS để tìm địa IP tương xứng với tên miền mà bạn vừa nhập Các router thiết bị kết nối Internet khơng hiểu google.com gì, chúng hiểu địa chẳng hạn 74.125.95.103 Máy chủ DSN làm việc cách lưu sở liệu entry (được gọi ghi tài nguyên) địa IP để đồ hóa tên DNS, truyền thơng ghi tài ngun đến máy khách đến máy chủ DNS khác Kiến trúc máy chủ DNS toàn doanh nghiệp Internet thứ phức tạp Như vấn đề thực tế, bạn hình dung chúng sổ chuyên dụng cho kiến trúc DNS Người giả mạo cố tình cung cấp sai thơng tin DNS để lừa nạn nhân truy cập vào địa mà attacker định nhằm đánh cắp thông tin TK ngân hàng, … Giải pháp cho vấn đề cung cấp DNS server tin cậy sử dụng dịch vụ DNS phải có chứng thực ARP spoofing: Arp giao thức hoạt động tầng cho phép ánh xạ địa MAC Giao thức ARP thiết kế để phục vụ cho nhu cầu thông dịch địa lớp thứ hai thứ ba mơ hình OSI Lớp thứ hai (lớp data-link) sử dụng địa MAC để thiết bị phần cứng truyền thơng với cách trực tiếp Lớp thứ ba (lớp mạng), sử dụng địa IP để tạo mạng có khả mở rộng toàn cầu Lớp data-link xử lý trực tiếp với thiết bị kết nối với nhau, lớp mạng xử lý thiết bị kết nối trực tiếp khơng trực tiếp Mỗi lớp có chế phân định địa riêng chúng phải Lập trình Web Service Trang 51 / 59 Chương IX : Điều quản lỗi gỡ rối làm việc với để tạo nên mạng truyền thông Với lý đó, ARP tạo với RFC 826, “một giao thức phân định địa Ethernet - Ethernet Address Resolution Protocol” Quá trình truyền ARP bao gồm request respone Khi gói Arp request gửi kẻ giả mạo bắt thơng tin gửi trả cho người gửi bảng ARP máy cập nhật địa giả mạo Cách phòng chống vấn đề đảm bảo mức an toàn mạng nội Vẫn số kiểu lừa đảo qua mail kiểu giả mạo lừa đảo phải cần cảnh giác client SSL spoofing: SSL HTTPS: Phá hủy chế HTTPS: HTTPS kênh thông tin an toàn Khi thiết lập kết nối từ máy chủ đến máy khách khó để phá vỡ kết nối Tuy nhiên việc xảy máy khách chưa thật kết nối với máy chủ Kết nối HTTPS an tồn nhiên ta phá vỡ cấu trúc trước kết nối thiết lập phương pháp “man in the middle” Chặn request từ client đến server để trở thành kẻ thứ ba phiên kết nối Quá trình thực sau: Lập trình Web Service Trang 52 / 59 Chương IX : Điều quản lỗi gỡ rối Lưu lượng máy khách máy chủ đầu tiên bị chặn Khi bắt gặp HTTPS URL, sslstrip thay liên kết HTTP ánh xạ thay đổi Máy cơng cung cấp chứng cho máy chủ web giả mạo máy khách Lưu lượng nhận trở lại từ website an toàn cung cấp trở lại cho máy khách Quá trình làm việc tốt, máy chủ có liên quan nhận lưu lượng SSL mà khác biệt Nếu khơng để ý khó phát điều dị thường kết nối Thực bảo mật web service Có hai hình thức bảo mật, bảo mật kênh truyền bảo mật mức thông điệp Hiện hầu hết dịch vụ kết hợp hai hình thức để tối ưu cho việc bảo mật Bảo mật mức kênh truyền : kênh truyền phải bảo đảm thông điệp an tồn tồn vẹn Ở mức ta thường dùng kênh truyền an toàn HTTP + SSL để tạo kết nối an toàn đến client An toàn mức đòi hỏi sở hạ tầng mạng phải tốt Bảo mật mức thông điệp : để tăng mức độ an tồn cho thơng điệp, ta sử dụng thêm WS security cung cấp mức an tồn cho thơng điệp Các liệu mã hóa sử dụng chữ kí số để tránh bị đánh cắp thơng tin Cả hai bên server client sử dụng key để chứng thực lẫn Lập trình Web Service Trang 53 / 59 Chương IX : Điều quản lỗi gỡ rối Hình ảnh trình sử dụng web service payment trực tuyến Chúng bao gồm bước : - Người mua đặt mua hàng gửi thông tin giao dịch thông tin người mua đến người cung cấp dịch vụ bán hàng Hệ thống chuyển thơng tin sang getway từ getway tiếp tục chuyển giao dịch đến cho ngân hàng Tất thông tin gửi nhận mã hóa thơng qua HTTPS Xác thực client server sử dụng: Việc chuyển tiền tốn qua mạng thực việc chyển thơng tin nhạy cảm quan trọng nên thực bảo mật an tồn cho điều cần thiết Trong có xác thực client server Lập trình Web Service Trang 54 / 59 Chương IX : Điều quản lỗi gỡ rối Client nơi đăng ký thông tin sử dụng dịch vụ web trang bán hàng qua mạng Server nơi cung cấp dịch vụ cung cấp cho client mã đăng kí dịch vụ Cả client server phải xác thực lẫn để tránh việc có người giả mạo đứng giả hai phía Như client server phải có certificate cho riêng root CA chứng thực chữ kí số Chữ ký điện tử sử dụng giao dịch điện tử Xuất phát từ thực tế, chữ ký điện tử cần đảm bảo chức năng: xác định người chủ liệu đó: văn bản, ảnh, video, liệu có bị thay đổi hay khơng Người gửi kí cách mã hóa liệu kèm với private key người gửi người nhận dùng public key người gửi để giải mã, public key khác giải mã chứng minh thơng tin gửi người khơng thể người khác Root CA có vai trò cấp certificate cho cặp private public key đảm bảo cặp key xác Mã hóa liệu truyền sử dụng cơng nghệ Public Key Cryptography TripleDes Lập trình Web Service Trang 55 / 59 Chương IX : Điều quản lỗi gỡ rối Mã hóa sử dụng cặp khóa public key private key, public key dùng để mã hóa thơng điệp xác thực chữ kí, private key dùng để giải mã thơng điệp tạo chữ kí Một số giải thuật mã hóa thơng dụng RSA RSA giải thuật mã hóa đánh giá tốt sử dụng rộng rãi Rivest, Shamir Adleman phát triển MIT vào năm 1978 [RIVE78] Sử dụng protocol HTTPS Trước có HTTPS HTTP(HyperText Transfer Protocol) giao thức sử dụng để truyền thông tin Internet dưới dạng văn text ngang hàng khơng an tồn Cùng với giao thức SMTP, telnet, FTP ngày đầu phát triển Internet vấn đề bảo mật chưa quan tâm mức HTTPS đời phát triển HTTPS đảm bảo liệu an toàn đường truyền cho phép client server chứng thực Dưới trình bắt tay Client server sử dụng HTTPS Lập trình Web Service Trang 56 / 59 Chương IX : Điều quản lỗi gỡ rối Hypertext Transfer Protocol Secure (HTTPS) kết hợp Hypertext Transfer Protocol (HTTP) với giao thức SSL / TLS để cung cấp kênh truyền mà liệu mã hóa bảo mật an tồn với máy chủ Các kết nối HTTPS thường sử dụng cho giao dịch tốn mạng tồn cầu cho giao dịch nhạy cảm hệ thống thông tin doanh nghiệp Sử dụng HTTPS đảm bảo liệu truyền bảo mật, an tồn mạng khơng an toàn tránh midle-attack miễn máy chủ xác thực đáng tin cậy Sử dụng HTTPS khơng thể nói đảm bảo tuyệt đối đáp ứng việc chứng thực an toàn liệu Tuy nhiên, authentication, auditing, and nonrepudiation chưa cung cấp Lập trình Web Service Trang 57 / 59 Chương IX : Điều quản lỗi gỡ rối Soap Header extension Như phần trình bày việc sử dụng dịch vụ thực việc gửi thông tin yêu cầu qua Soap message Ta mở rộng phần soap message đưa vào phần mở rộng soap tăng thêm tính an tồn cho thơng tin Phần mở rộng Soap cho phép mở rộng cho soap message cách thêm chỉnh sửa thơng tin bên Soap message.Ta thực mã hóa sử dụng giải thuật nén XML Web service Chu trình XML web service Q trình Serialize : Sau thơng tin cần chuyển đưa vào soap message chuẩn bị gửi.Trong q trình ta lấy thơng tin mã hóa Q trình Deserialize : trình chuẩn bị nhận soap message Nếu ta mã hóa thơng tin q trình ta lấy thơng tin giải mã trả kết Với Soap extension ta mã hóa giải mã thơng tin nơi khác nơi mà ta gọi yêu cầu cho service Trước gửi thông tin từ soap message đến server ta override lại Soap message cần thiết, thêm vào thơng tin mã hóa gửi Tổng kết Để có an tồn việc truyền tải liệu cần phải thực nhiều biện pháp bảo mật tốt.Tuy nhiên việc kết hợp biện pháp bảo mật phải tránh rườm rà phức tạp cho người sử dụng đảm bảo tốc độ truyền tải liệu Lập trình Web Service Trang 58 / 59 Phụ lục I: Tài nguyên tài liệu tham khảo PHỤ LỤC I: Tài nguyên tài liệu tham khảo  Lập trình Web Service Trang 59 / 59

Ngày đăng: 07/03/2019, 11:34

Từ khóa liên quan

Mục lục

  • CHƯƠNG I: CÔNG NGHỆ WEB SERVICE

    • 1. Web Service là gì ?

    • 2. Đặc điểm của Web service

    • 3. Nền tảng của Web service

      • Thứ nhất, Web service đưa ra chức năng hữu dụng cho người sử dụng Web thông qua một giao thức chuẩn Web. Trong hầu hết các trường hợp, giao thức được sử dụng đó là SOAP.

      • Thứ hai, Web service đưa ra cách mô tả các giao diện của chúng một cách đủ chi tiết nhằm cho phép người sử dụng xây dựng một ứng dụng máy trạm để giao tiếp được với chúng. Mô tả này thường được cung cấp ở dạng một tài liệu XML gọi là một tài liệu về n...

      • Thứ ba, Web service được đăng ký sao cho các khách hàng tiềm năng là người sử dụng có thể tìm thấy chúng một cách dễ dàng. Điều này được thực hiện với UDDI (Universal Discovery Description and Integration).

      • 4. Các công nghệ của Web service

        • Ngôn ngữ XML – RPC

        • Giao thức truyền thông điệp SOAP

          • Thông điệp XML

          • RPC và EDI

          • Thông điệp SOAP

          • SOAP Faults

          • Vận chuyển SOAP

          • Đăng ký dịch vụ UDDI

          • Kiến trúc Web service

            • 5. Mô tả cơ chế hoạt động của Web Service

            • 6. Kiến trúc phân tầng của Web Service

            • 7. Kiến trúc hướng dịch vụ SOA

              • Khái niệm kiến trúc hướng dịch vụ SOA

              • Nguyên tắc thiết kế của SOA

              • 8.

              • CHƯƠNG II: XÂY DỰNG WEB SERVICE

                • 1. Các vấn đề cần xác định rõ trước khi bắt tay xây dựng ứng dụng Web service

                • 2. Xây dựng Web Service với ASP.NET

                  • Tạo Web Service

                    • Trong môi trường Visual Studio, Ta chọn File->New->Project

                    • Xóa Service1.asmx bằng cách chọn nó và nhấn phím delete. Ta sẽ thêm 1 service mới bằng cách nhấn chuột phải lên project, chọn Add->New Item.

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

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

Tài liệu liên quan