các kỹ thuật đảm bảo an ninh web service

51 242 0
các kỹ thuật đảm bảo an ninh 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

Học viện Kỹ thuật Mật mã Môn: Công nghệ phần mềm MỤC LỤC CHƯƠNG WEB SERVICE 1.1 Service .1 1.1.1 Định nghĩa 1.1.2 Đặc điểm service 1.2 Web service (WS) 1.2.1 Định nghĩa 1.2.2 Cấu trúc web service 1.2.3 Các đặc điểm web service 1.2.4 Các thành phần web service 1.2.5 Hoạt động Web services .13 1.3 SOA dịch vụ web 13 1.3.1 Định nghĩa SOA 13 1.3.2 Tính chất hệ thống sử dụng SOA 15 1.3.3 SOA dịch vụ web 16 CHƯƠNG CÁC KỸ THUẬT ĐẢM BẢO AN NINH WEB SERVICE 19 2.1 Các vấn đề bảo mật cần quan tâm 19 2.1.1 Những hạn chế tường lửa 19 2.1.2 Cơ chế bảo mật chưa định nghĩa đầy đủ 19 2.1.3 Các giải pháp bảo mật khó tích hợp với 19 2.1.4 Bảo mật vấn đề hiệu suất hoạt động 20 2.2 Giao thức bảo mật SSL 20 2.2.1 Cấu trúc giao thức bảo mật SSL .20 2.2.2 SSL Record Protocol 27 2.2.3 SSL Handshake Protocol 30 2.3 Khai thác tính bảo mật thư viện Web Service Enhancement (WSE) 37 2.3.1 Những tính bảo mật web service wse 37 2.3.2 Thư viện Web Service Enhancements - WSE 38 2.3.3 Hỗ trợ policy .40 CHƯƠNG XÂY DỰNG CHƯƠNG TRÌNH .43 3.1 Bài toán đặt 43 3.2 Mô tả hệ thống cần xây dựng 45 3.3 Triển khai hệ thống 45 Page i Học viện Kỹ thuật Mật mã Môn: Công nghệ phần mềm 3.3.1 Lựa chọn ngôn ngữ lập trình 45 3.3.2 Hoạt động hệ thống 45 Page ii Học viện Kỹ thuật Mật mã Môn: Công nghệ phần mềm DANH MỤC HÌNH ẢNH Hình 1.1 Mô hình Web Service Hình 1.2 Kiến trúc Web Service Hình 1.3 Mô tả layer hình thành nên Web Service Hình 1.4 Tương tác thành phần Web Service Hình 1.5 Các thành phần Web Service Hình 1.6 Cấu trúc WSDL Hình 1.7 Trao đổi thông điệp SOAP .9 Hình 1.8 Cấu trúc thông điệp SOAP .9 Hình 1.9 Mô hình tương tác thành phần .11 Hình 1.10 Sơ đồ sử dụng Web Service 11 Hình 1.11 Cấu trúc hoạt động web service đơn giản .13 Hình 1.12 Sơ đồ cộng tác SOA 15 Hình 2.13 Cấu trúc giao thức bảo mật SSL 21 Hình 2.14 Các bước SSL Record Protocol 28 Hình 2.15 Xác nhận số thông điệp 37 Hình 2.16 Mã hóa thông điệp 38 Hình 2.17 Quy trình gửi nhận thông điệp qua lọc WSE 39 Hình 2.18 Điều phối thông điệp SOAP 42 Hình 3.19 Biểu đồ hoạt động hệ thống 45 Hình 3.20 Giao diện trang chủ 46 Hình 3.21 Giao diện đăng nhập .46 Hình 3.22 Giao diện đăng 47 Hình 3.23 Thực giao dịch .48 Page iii Học viện Kỹ thuật Mật mã Môn: Công nghệ phần mềm CHƯƠNG WEB SERVICE 1.1 Service 1.1.1 Định nghĩa Service ứng dụng với user, thao tác thực nhiều lần tiến trình nghiệp vụ thực người nhóm người Service hệ thống có khả nhận hay nhiều yêu cầu xử lý sau đáp ứng lại cách trả hay nhiều kết Quá trình nhận yêu cầu trả kết thực thông qua interface định nghĩa trước Thông thường, việc giao tiếp thực interface chuẩn hóa sử dụng rộng rãi Một tiến trình gồm nhiều services nhiều tiến trình hợp lại thành service hay nói service bao gốm nhiều services khác Ví dụ: Thư điện tử service Có nhiều loại dịch vụ khác nhau, có dịch vụ mang tính chất công cộng cho phép người xa truy nhập thông tin qua mạng, có loại dịch vụ mang tính chất local giới hạn người sử dụng Ví dụ đơn giản service hoạt động nhà hàng Khi khách hàng vào nhà hàng gọi thức ăn, khách hàng tiền hành gởi yêu cầu khách hàng, ăn khách hàng yêu cầu nhà hàng hết, nhân viên nhà hàng từ chối đề nghị khách hàng gọi khác Nếu nhà hàng đáp ứng yêu cầu khách, ăn chế biến mang cho khách hàng muốn thưởng thức, kết trả service phục vụ nhà hàng từ chối ăn mà khách hàng không cần 1.1.2 Đặc điểm service Có ranh giới rõ ràng: Mỗi service xây dựng dựa interface chuẩn hòa sử dụng rộng rãi Chi tiết thực service bên Mỗi service công bố số interface cho user dùng để gởi yêu cầu nhận kết trả - Tính tự trị (autonomous): Mỗi service có tính độc lập cao, xây dựng đưa vào sử dụng mà không phụ thuộc vào service khác Page Học viện Kỹ thuật Mật mã Môn: Công nghệ phần mềm -Về mặt trao đổi liệu, service không truyền class type Thay vào đó, class type đặc tả hình thức - Sự tương thích service vào policy Tương thích mặt cấu trúc dựa đặc tả hình thức bao gồm contract dựa WSDL Businesss Process Execution Language or Web Services 1.2 Web service (WS) 1.2.1 Định nghĩa WS hệ thống phần mềm thiết kế nhằm hỗ trợ khả tương tác máy tính với thiết bị khác thông qua mạng Một WS xác định địa URL(Uniform Resource Locator) thực chức đưa thông tin người dùng yêu cầu Nó cung cấp chức khác từ đến nghiệp vụ phức tạp hay qui trình khoa học Hình 1.1 Mô hình Web Service WS sử dụng tảng ngôn ngữ XML(extensible makup language) cho việc trao đổi liệu Các hệ thống tương tác với WS theo phương pháp qui định cách sử dụng thông điệp SOAP(Simple Object Acess Protocol) sử dụng giao thức HTTP Và mô hình đặc thù WS mô hình client-server WS đặc tả sử dụng chuẩn WSDL, UDDI, SOAP, W3C Page Học viện Kỹ thuật Mật mã Môn: Công nghệ phần mềm Giao diện mô tả khuôn mẫu khả xử lý máy (tiêu biểu WSDL) Giao diện gọi giao diện “dịch vụ” Nó giúp WS gọi ứng dụng hay WS khác Hình 1.2 Kiến trúc Web Service 1.2.2 Cấu trúc web service Hình 1.3 Mô tả layer hình thành nên Web Service Trong đó: - Service Provider: Dùng WSDL để mô tả dịch vụ mà cung cấp cho - Service Broker (tương tự Service Registry SOA) - Service Broker: Lưu trữ thông tin service cung cấp Service Provider Cung cấp chức tìm kiếm hỗ trợ Page Học viện Kỹ thuật Mật mã Môn: Công nghệ phần mềm - Service Requester (Service Consumer SOA) việc xác định Service Provider phù hợp Thành phần Service Broker UDDI Service Requester: Dùng WSDL để đặc tả nhu cầu sử dụng(loại service, thời gian sử dụng, resource cần thiết, mức giá…) gởi cho Service Broker Bằng việc sử dụng UDDI chức tìm kiếm Service Broker, Service Requester tìm thấy Service Provider thích hợp Ngay sau đó, Service Requester Service Provider thiết lập kênh giao tiếp sử dụng SOAP để thương lượng giá yếu tố khác việc sử dụng service Hình 1.4 Tương tác thành phần Web Service 1.2.3 Các đặc điểm web service - Web services truy xuất thông qua Web cách dùng địa URL - Web services liên lạc với giới bên dùng thông điệp XML gửi trực tiếp qua Web protocols Giao tiếp với người dùng phương thức mở - Web services đăng kí nơi chung đặc tả tất chức - Có độ an toàn riêng tư Page Học viện Kỹ thuật Mật mã Môn: Công nghệ phần mềm - Web Service cho phép client tương tác với server môi trường khác Và đóng vai trò thiết bị “giao tiếp” với Web service khác mà không cần quan tâm đến yêu cầu bên Ví dụ, đặt web server máy chủ chạy hệ điều hành Linux người sử dụng để máy tính chạy hệ điều hành windows, ứng dụng chạy xử lý bình thường mà không cần thêm yêu cầu đặc biệt để tương thích hai hệ điều hành - Phần lớn web services xây dựng dựa mã nguồn mở phát triển từ chuẩn công nhận, ví dụ XML - Một WS bao gồm nhiều module công bố mạng Internet 1.2.4 Các thành phần web service Web service tập chuẩn đặc tả mở rộng khả chuẩn có sẵn XML, URL, HTTP, nhằm cung cấp chuẩn truyền thông hệ thống với Web services thành phần thực thi số xử lý nghiệp vụ thông qua dịch vụ cung cấp dịch vụ qua mạng, dịch vụ triệu gọi dịch vụ client cách sử dụng giao thức SOAP HTTP Web service độc lập ngôn ngữ độc lập tảng tách biệt đặc tả khỏi cài đặt; hỗ trợ tích hợp loose coupling ứng dụng với qua trao đổi thông điệp đồng bất đồng thông Web services dựa kiến trúc phân tán dịch vụ xử lý trung tâm tất dạng truyền thông sử dụng giao thức chuẩn Các giao thức ý nghĩa ngầm định bên mà phải mô tả rõ ràng Hình 1.5 Các thành phần Web Service Page Học viện Kỹ thuật Mật mã Môn: Công nghệ phần mềm 1.2.4.1 WSDL (Web Services Description Language) Ngôn ngữ đặc tả dịch Web Service Ngôn ngữ dựa XML, tương tác dịch vụ với ta tương tác file WSDL chúng Một client đọc WSDL để xác định chức có sẵn server, sau client sử dụng SOAP để lấy chức xác có WSDL Cấu trúc tài liệu WSDL sau: Hình 1.6 Cấu trúc WSDL - Service: Chứa method sử dụng thông qua web protocol - Ports: Địa dùng để kết nối đến WS Thông thường, ports mô tả HTTP URL - : xác định kiểu liệu mà sử dụng đặc tả WS * - : mô tả thông điệp truyền client server Mỗi thông điệp có tên tương ứng với operation chứa thông tin cần thiết để thực thi operation Mỗi message bao gồm nhiều phần Mỗi phần so sánh với thông số chức gọi ngôn ngữ lập trình truyền thống Các thực thi message mô Page Học viện Kỹ thuật Mật mã Môn: Công nghệ phần mềm hình riêng rẽ để hỗ trợ tính linh hoạt đơn giản hóa việc tái sử dụng lại Chẳng hạn, hai thao tác với tham số chia sẻ định nghĩa message * * - : Định nghĩa web service, tác vụ mà service cung cấp định dạng thông điệp sử dụng để khởi động tác vụ * - Operations: Mỗi operation xem method hay lời gọi hàm ngôn ngữ lập trình cổ điển - Binding: Chỉ định port type, operation chứa thông tin cần thiết để thực thi operation Mỗi message có tên hay nhiều thành phần phân biệt với qua tên lưu trữ tham số cần cho operation - Element: Được định nghĩa Types Mỗi element có tên kiểu liệu Element dùng để đặc tả liệu dùng message Element đặc tả liệu đơn giản string, integer hay phức tạp array, truct… - XSD file: Các element thường định nghĩa XML Schema Definition XSD file file WSDL file riêng biệt Mô tả cách nhận gửi thông điệp, phần tử quan trọng WSDL Phần tử so sánh chức thư viện(hay module, class) ngôn ngữ lập trình WSDL định nghĩa kiểu thao tác mà cổng hỗ trợ: - One-way: cổng nhận message, message message nhập - Request – response: cổng nhận message gửi message phản hồi - Solicit-response: Cổng gửi message gửi message Page Học viện Kỹ thuật Mật mã Môn: Công nghệ phần mềm báo SERVERHELLO chấp nhận Nếu server yêu cầu xác thực client, client gửi thông báo CERTIFICATE chứa chứng số cá nhân cho khóa chung người dùng đến server bước Tiếp theo, client gửi thông báo CLIENTKEYEXCHANGE có dạng phụ thuộc vào thuật toán cho khóa chọn server: – Nếu RSA sử dụng cho việc xác thực server trao đổi khóa, client tạo khóa mật premaster 48 byte, mã hóa khóa chung tìm thấy chứng số site khóa RSA tạm thời từ thông báo SERVERKEYEXCHANGE gửi kết trở server thông báo CLIENTKEYEXCHANGE Lần lượt server sử dụng khóa riêng tương ứng để giải mã khóa mật – Nếu token FORTEZZA sử dụng để trao đổi khóa, client dẫn xuất khóa mã hóa token (TEK) cách sử dụng KEA Phép tình KEA cảu client sử dụng khóa chung từ chứng số server với số tham số riêng token client Client gửi tham số chung cần thiết cho server để tạo TEK, sử dụng tham sô riêng Nó tạo khóa mật master, bao bọc cách sử dụng TEK gửi kết với số vector khởi tạo đến server phần thông báo CLIENTKEYEXCHANGE Lần lượt, server giải mã khóa mật master cách thích hợp Thuật toán trao đổi khóa không sử dụng rộng rãi Nếu xác thực client yêu cầu, client gửi thông báo CERTIFICATEVERIFY đến server Thông báo sử dụng để cung cấp xác thực rõ ràng định danh người dùng dựa vào chứng số cá nhân Nó gửi theo sau chứng client có khả tạo chữ (tất chứng nhận ngoại trừ chứng số chứa tham số Diffie - Hellman cố định) Sau cùng, client hoàn tất bước cách gửi thông báo CHANGECIPHERSPEC thông báo FINISHED tương ứng đến server Thông báo FINISHED gửi sau thông báo CHANGECIPERSPEC để xác nhận tiến trình Page 34 Học viện Kỹ thuật Mật mã Môn: Công nghệ phần mềm trao đổi khóa xác thực đa thành công Thực tế, thông báo FINISHED thông báo bảo vệ thuật toán thoả thuận khóa session Nó tạo xác nhận khóa cài đặt cách phù hợp hai phía Không đoi hỏi xác nhận thông báo FINISHED; phía bắt đầu gửi liệu mã hóa sau đa gửi thông báo FINISHED Việc thực thi SSL Handshake Protocol hoàn tất việc server gửi thông báo CHANGECIPHERSPEC thông báo FINISHED tương ứng đến client bước Sau thiết lập SSL hoàn tất, kết nối an toàn thiết lập client server Kết nối sử dụng để gửi liệu ứng dụng Chính xác hơn, liệu ứng dụng phân đoạn, nén, mã hóa xác thực theo SSL Record Protocol thông tin trạng thái session kết nối thiết lập (tùy thuộc việc thực thi SSL Handshake Protocol) SSL Handshake Protocol rút ngắn client server định tiếp tục lại session SSL thiết lập trước (và lưu trữ) lặp lại session SSL có Trong trường hợp này, ba dòng thông báo tổng cộng sáu thông báo yêu cầu Các dòng thông báo tương ứng tóm tắt sau: 1: C -> S: CLIENTHELLO 2: S -> C: SERVERHELLO CHANECIPHERSPEC FINISHED 3: S ->C: CHANGECIPHERSPEC FINISHED Ở bước 1, client gửi thông báo CLIENTHELLO đến server có định danh session cần tiếp tục lại Lần lượt server kiểm tra cache session để tìm mục tương hợp Nếu mục tương hợp tìm thấy, server muốn tiếp tục lại kết nối bên trạng thái session xác định, trả thông báo SERVERHELLO với định danh session bước Vào thời Page 35 Học viện Kỹ thuật Mật mã Môn: Công nghệ phần mềm điểm này, client lẫn server phải gởi thông báo CHANGECIPHERSPEC FINISHED đến bước Một việc tái thiết lập session hoàn tất, client server bắt đầu trao đổi liệu ứng dụng Các thuật toán mã hoá xác thực SSL sử dụng bao gồm (phiên 3.0): - DES: chuẩn mã hoá liệu (ra đời năm 1977), phát minh sử dụng phủ Mỹ - DSA: thuật toán chữ điện tử, chuẩn xác thực điện tử, phát minh sử dụng phủ Mỹ - KEA: thuật toán trao đổi khoá, phát minh sử dụng phủ Mỹ - MD5: thuật toán tạo giá trị “băm” (message digest), phát minh Rivest - RC2, RC4: mã hoá Rivest, phát triển công ty RSA Data Security - RSA: thuật toán khoá công khai, cho mã hoá xác thực, phát triển Rivest, Shamir Adleman - RSA key exchange: thuật toán trao đổi khoá cho SSL dựa thuật toán RSA - SHA-1: thuật toán hàm băm an toàn, phát triển sử dụng phủ Mỹ - SKIPJACK: thuật toán khoá đối xứng phân loại thực phần cứng Fortezza, sử dụng phủ Mỹ - Triple-DES: mã hoá DES ba lần Cơ sở lý thuyết chế hoạt động thuật toán sử dụng bảo mật phổ biến rộng rãi công khai, trừ giải pháp thực ứng dụng thực hành vào sản phẩm bảo mật (phần cứng, phần mềm) Đã có kết luận cho SSL cung cấp bảo mật hoàn hảo ngăn việc nghe công thụ động khác, người thực thi giao thức ý thức đến số công chủ động tinh vi Page 36 Học viện Kỹ thuật Mật mã Môn: Công nghệ phần mềm 2.3 Khai thác tính bảo mật thư viện Web Service Enhancement (WSE) Có nhiều lựa chọn khác có sẵn để giúp an ninh dịch vụ web tổ chức khác có tiêu chí khác giải vấn đề an ninh họ Wse thư viện lập trình NET, hỗ trợ việc xây dựng web service theo chuẩn WS-Security, WS- SecureConversation, WS-Trust, WS-Policy, WS-securityPolicy, WS-Addressing, WS-Messageing WS-Attachments Với thư viện này, ta đưa tính liên quan đến bảo mật vào web service lúc thiết kế cách sử dụng mã lệnh hay vào thời điểm triển khai thông qua việc sử dụng tập tin policy 2.3.1 Những tính bảo mật web service wse Những tính bảo mật web service wse Wse sử dụng chế định nghĩa ws-security để đặt ủy quyền chứng thực (security credential) security token vào thông điệp SOAP Wse sau thực kiểm tra tính hợp lệ security credentials trước chuyển quyền thực thi cho web service Wse 2.0 hỗ trợ loại security token sau: username/password, X.509 Certificate, Kerberos ticket, Security Context token loại security token người dùng định nghĩa Chúng ta tìm hiểu phần sau Wse cho phép nhà phát triển xây dựng riêng cho dịch vụ security token Các dịch vụ tạo loại security token khác mà dụng trình tương tác với web service tin tưởng vào dịch vụ Thông qua việc hỗ trợ xác nhận số hay mã hóa thông điệp SOAP tăng cường khả an toàn cho web service - Xác nhận số thông điệp SOAP giúp cho đối tượng nhận thông điệp kiểm tra thông điệp có bị thay đổi hay không Hình 2.15 Xác nhận số thông điệp Page 37 Học viện Kỹ thuật Mật mã Môn: Công nghệ phần mềm - Mã hóa thông điệp SOAP đảm bảo cho web service mong muốn đọc nội dung thông điệp Hình 2.16 Mã hóa thông điệp 2.3.2 Thư viện Web Service Enhancements - WSE 2.3.2.1 Khái niệm WSE 3.0 Để xây dựng proxy để dịch vụ web network đưa bên Chính cần dựa framework chuẩn để dễ dàng giao tiếp với client thực thi platform khác Không vậy, cần tương tác với chuẩn bảo mật nhằm thỏa mãn nhu cầu bảo mật nhà cung cấp dịch vụ web WSE 3.0 (Web Services Enhancements 3.0) thư viện lập trình NET, hỗ trợ việc xây dựng dịch vụ web theo chuẩn WS-Security, WS-SecureConversation, WS-Trust, WS-Policy, WS- SecurityPolicy, WS-Addressing MTOM Với thư viện WSE, đưa tính liên quan đến bảo mật vào dịch vụ web lúc thiết kế cách sử dụng mã lệnh, hay vào thời điểm triển khai thông qua việc sử dụng tập tin sách Hiện thư viện sử dụng rộng rãi giới, điều giúp hệ thống có tính tương tác cao đưa vào sử dụng 2.3.2.2 Kiến trúc WSE 3.0 Nhân WSE engine cho phép áp dụng giao thức cao cấp dịch vụ web vào thông điệp SOAP Điều đòi hỏi thao tác ghi thông tin vào phần đầu thông điệp SOAP gửi đọc thông tin phần đầu thông điệp SOAP gửi đến Bên cạnh có thao tác biến đổi phần thân thông điệp SOAP như: mã hóa nội dung thông điệp gửi, giải mã thông điệp nhận Page 38 Học viện Kỹ thuật Mật mã Môn: Công nghệ phần mềm Các thao tác thực hai lọc, cho thông điệp gửi cho thông điệp nhận Mọi thông điệp gửi (thông điệp yêu cầu từ phía client hay phản hồi từ phía server) phải qua lọc dành cho thông điệp gửi Mọi thông điệp nhận vào (thông điệp đến server hay phản hồi client) phải qua lọc dành cho thông điệp nhận Hình 2.17 Quy trình gửi nhận thông điệp qua lọc WSE 2.3.2.3 Bảo mật với WSE 3.0 Một số kiểu giả mạo, đánh cắp thông tin: Message Replay Attack, Web Spoofing,…Để bảo đảm an toàn, WSE 3.0 cung cấp cho người quản trị hai phương thức cấu hình cấu hình sách bảo mật: Username Token chứng thực số - PKI Username Token: Cung cấp username password Các giá trị Nonce tạo ngẫu nhiên với Created thời gian mà message gửi đi.Các giá trị Hash để che dấu thông tin 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,nếu vượt khoảng thời gian giới hạn gói tin bị loại bỏ Page 39 Học viện Kỹ thuật Mật mã Môn: Công nghệ phần mềm Chứng thực số - PKI: Việc giao dịch qua mạng thực việc chuyển thông tin nhạy cảm quan trọng nên thực bảo mật an toàn cho điều cần thiết.Trong có xác thực client server Client nơi đăng 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ữ số sử dụng giao dịch điện tử Xuất phát từ thực tế, chữ đ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 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 2.3.3 Hỗ trợ policy Wse hỗ trợ nhà phát triển đưa yêu cầu trình gửi nhận thông điệp cách dùng tập tin câu hình Trước đây, đối tượng nhận thông điệp SOAP phải dùng mã lệnh để kiểm tra thông tin thông điệp nhận có xác nhận số hay mã hóa chưa? Và tương tự thế, phía gửi phải viết mã lệnh để lấy yêu cầu từ phía nhà cung cấp Nay yêu cầu cung cấp thông qua tập tin cấu hình Khi chế xác nhận policy định: Page 40 Học viện Kỹ thuật Mật mã Môn: Công nghệ phần mềm - Các thông điệp SOAP gửi qua trình kiểm tra để đảm bảo chúng thỏa mãn policy assertion phía gửi Nếu không thỏa mãn, wse đưa ngoại lệ - Các thông điệp SOAP trước nhận vào phải kiểm tra xem có đáp ứng policy assertion phía nhận hay không? Nếu không, thông điệp gửi trả hay ngoại lệ đưa Wse hỗ trợ sẵn vài chế xác nhận policy (ví dụ như: yêu cầu phần body thông điệp phải xác nhận-signed X.509 certificate) Ngoài ra, hệ thống policy cho phép thêm chế xác nhận policy khác người dùng định nghĩa 2.3.3.1 SOAP messaging Đây tính trội wse.SOAP messaging hỗ trợ nhiều nghi thức tầng vận chuyển HTTP, TCP, với giao diện bất đồng hay đồng Đặc biệt, thực việc gửi nhận thông điệp theo nghi thức TCP ta không cần phải có Web Server 2.3.3.2 Điều phối thông điệp SOAP Ta sử dụng wse để xây dựng ứng dụng phân tán mà kiến trúc phân tán suốt người dùng Ta sử dụng máy tính trung gian cấu hình chạy WSE router Người dùng gửi yêu cầu đến WSE router thay trực tiếp đến web service WSE router sau chuyển thông điệp SOAP đến máy chạy web service dựa thông tin cấu hình router Giải pháp giúp hệ thống ta linh hoạt hơn, bền vững hơn, ta thay đổi thông tin máy đích có cố xảy Page 41 Học viện Kỹ thuật Mật mã Môn: Công nghệ phần mềm Hình 2.18 Điều phối thông điệp SOAP 2.3.3.3 Gửi đối tượng kèm theo thông điệp SOAP WSE hỗ trợ nghi thức DIME (Direct Internet Message Encapsulation) Nghi thức định nghĩa chế để đính kèm đối tượng khác thông điệp SOAP Điều cần thiết cho web service có nhu cầu muốn gửi thông tin có kích thước lớn (dạng text hay binary) tập tin dạng ảnh hay âm Theo mặc định thông điệp SOAP không thích hợp để gửi đính kèm tập tin lớn Vì định dạng thông điệp SOAP theo XML, thêm tập tin vào thông điệp SOAP đòi hỏi tập tin phải chuyển đồi thành dạng XML Điều làm tăng kích thước tập tin lên đáng kể so với kích thước thật Nghi thức DIME giải vấn đề cách định nghĩa chế để đặt toàn nội dung tập tin gốc nằm bên thông điệp SOAP, loại bỏ việc phải chuyển đổi nội dung tập tin sang dạng XML Page 42 Học viện Kỹ thuật Mật mã Môn: Công nghệ phần mềm CHƯƠNG XÂY DỰNG CHƯƠNG TRÌNH 3.1 Bài toán đặt Kinh doanh chứng khoán hoạt động diễn phổ biến nay, phận xã hội không nhỏ, công việc giao dịch chủ yếu tiền mặt Người mua chứng khoán phải trực tiếp đến công ty chứng khoán giao dịch công ty chứng khoán giữ toàn số tiền nhà đầu tư Công việc làm nhiều thời gian công sức, không đảm bảo an toàn cho nhà đầu tư không mang tính chuyên nghiệp Các doanh nghiệp hướng tới hoạt động kinh doanh chứng khoán mà tất hoạt động nhà đầu tư, doanh nghiệp, ngân hàng thực thông qua Internet Và có số hệ thống phần mềm kinh doanh chứng khoán Tuy hoạt động chưa hiệu gặp phải nhiều khó khăn điều nói nên tài không tiền mặt Những người sử dụng tiết kiệm thời gian, công sức mà đảm bảo lợi ích lãi suất, khả toán… Tuy nhiên hệ thống thông tin công ty chứng khoán ngân hàng nhiều khác biệt chưa kết nối với Vấn đề gây nhiều khó khăn dẫn đến bỏ lỡ hội nhà đầu tư Mặt khác công ty chứng khoán phải đảm bảo kết nối với nhiều ngân hàng lúc nhà đầu tư chọn cho ngân hàng khác Tương tự ngân hàng muốn kết nối với nhiều công ty chứng khoán để mở rộng mạng lưới Khi đưa hoạt động giao dịch lên mạng internet, điều lo ngại nhà đầu tư, công ty chứng khoán hay ngân hàng thông tin cá nhân họ có bảo mật cách chặt chẽ có chắn chúng không bị công cách hacker… Khi nhà đầu tư mở tài khoản chứng khoán tài khoản ngân hàng họ cung cấp username/password hay mã chứng khoán, mã ngân hàng Vấn đề toán đặt làm để nhứng thông tin trao đổi bên cách an toàn mà không bị công Bài toán đặt đưa giải pháp kết nối nhà đầu tư – công ty chứng Page 43 Học viện Kỹ thuật Mật mã Môn: Công nghệ phần mềm khoán – ngân hàng Các giao dịch thực trực tiếp mạng mà đảm bảo an toàn cho bên? Khi nhà đầu tư mở tài khoản chứng khoán cung cấp tài khoản ngân hàng Dịch vụ công ty chứng khoán cung cấp thông tin tài khoản nhà đầu tư Sau submit để hoàn thành việc đăng ký, username password nhà đầu tư gửi đến email đăng Thông tin tài khoản ngân hàng nhà đầu tư số dư tài khoản hiển thị Khi khách hàng muốn thực giao dịch, trước tiên cần đăng nhập vào hệ thống Khách hàng nhập username/password submit để gửi đến hệ thống công ty chứng khoán Sau đăng nhập khách hàng thực giao dịch mua/bán tài khoản chứng khoán tài khoản ngân hàng mình, thông điệp khách hàng – công ty chứng khoán nhà đầu tư trao đổi qua lại Nếu phương pháp bảo mật an toàn, thông điệp dễ dàng bị đánh cắp phương pháp công dẫn đến thiệt hại cho bên giao dịch Để đáp ứng yêu cầu toán đặt ra, đặc biệt toàn giao dịch đảm bảo xác, an toàn cho bên tham gia không sử dụng tới kiến thức lĩnh vực Công nghệ thông tin Có nhiều công cụ bảo mật cho web service công nghệ bảo mật SSL thành phần nó, giao thức HTTP, chứng số… Trong luận văn này, tập trung sâu vào nghiên cứu bảo mật web service theo công nghệ SSL, giao thức HTTP đặc biệt sử dụng thư viện Web Service Enhencement (WSE) NET Framework Microsoft Web services giao tiếp thông qua message SOAP WSE cung cấp mở rộng giao thức SOAP cho phép người dùng tự định nghĩa bảo mật, truyền message đáng tin cậy, sách Các nhà phát triển thêm vào kỹ thuật trình xây dựng (dùng code) trình triển khai (policy file) Page 44 Học viện Kỹ thuật Mật mã Môn: Công nghệ phần mềm 3.2 Mô tả hệ thống cần xây dựng Hệ thống nghiên cứu xây dựng bao gồm chức chính: đăng nhập, đăng kí tài khoản, mua cổ phiếu, bán cổ phiếu Dưới biểu đồ hoạt động hệ thống Hình 3.19 Biểu đồ hoạt động hệ thống 3.3 Triển khai hệ thống 3.3.1 Lựa chọn ngôn ngữ lập trình Để xây dựng xây dựng hệ thống hoàn chỉnh thực đầy đủ chức yêu cầu đặt đòi hỏi phải có thời gian dài Trong thời gian qua tiến hành nghiên cứu sử dụng lại hệ thống chứng khoán bước đầu đạt kết xây dựng xong số chức mà hệ thống đặt chạy thử 3.3.2 Hoạt động hệ thống 3.3.2.1 Hiển thị thông tin trang chủ Hiển thị bảng giá chứng khoán, chưa đăng nhập cho phép xem thông tin bảng giá chuyển sang giao diện đăng nhập đăng Page 45 Học viện Kỹ thuật Mật mã Môn: Công nghệ phần mềm Hình 3.20 Giao diện trang chủ 3.3.2.2 Đăng nhập Thời điểm: Trước giao dịch Mô tả: Trước thực giao dịch nhà đầu tư cần đăng nhập vào tài khoản (nếu nhà đầu tư chưa có tài khoản đăng tài khoản theo phần đăng ký) để xác thực thông tin, sau đăng nhập thông tin chi tiết nhà đầu tư hiển thị Hình 3.21 Giao diện đăng nhập 3.3.2.3 Đăng tài khoản Thời điểm: Trước giao dịch Mô tả: Để thực giao dịch trước tiên nhà đầu tư phải đăng kí tài khoản chứng khoán tài khoản ngân hàng nhà đầu tư cung cấp thông tin cá nhân cần thiết cho công ty chứng khoán để tạo tài khoản Nếu thông tin đầy đủ Page 46 Học viện Kỹ thuật Mật mã Môn: Công nghệ phần mềm xác hệ thống thông báo đăng tài khoản thành công, ngược lại báo lỗi tương ứng Sau đăng tài khoản người dùng đăng nhập thực giao dịch cổ phiếu cách cung cấp thông tin cá nhân Hình 3.22 Giao diện đăng 3.3.3.4 Thực giao dịch Thời điểm: Sau đăng nhập Mô tả: Sau đăng nhập, nhà đầu tư thực việc mua bán tài khoản thông qua website - Bán: nhà đầu tư thực lệnh bán cổ phiếu có tài khoản, số lượng cổ phiếu bán không vượt số lượng cổ phiếu có tài khoản Số tiền có bán cổ phiếu đưa vào tài khoản ngân hàng tương ứng nhà đầu tư - Mua: cổ phiếu mà nhà đầu tư mua có tài khoản cổ phiếu cập nhật lại, chưa có cổ phiếu thêm vào tài khoản nhà đầu tư Số tiền dùng để mua cổ phiếu trừ vào tài khoản ngân hàng tương ứng nhà đầu tư Nếu tổng giá trị số lượng cổ Page 47 Học viện Kỹ thuật Mật mã Môn: Công nghệ phần mềm phiếu mà nhà đầu tư thực mua vượt số dư tài khoản ngân hàng giao dịch không thực Hình 3.23 Thực giao dịch Page 48 ... yếu tố khác việc sử dụng service Hình 1.4 Tương tác thành phần Web Service 1.2.3 Các đặc điểm web service - Web services truy xuất thông qua Web cách dùng địa URL - Web services liên lạc với giới... hình Web Service Hình 1.2 Kiến trúc Web Service Hình 1.3 Mô tả layer hình thành nên Web Service Hình 1.4 Tương tác thành phần Web Service Hình 1.5 Các thành phần Web Service. .. Công nghệ phần mềm CHƯƠNG CÁC KỸ THUẬT ĐẢM BẢO AN NINH WEB SERVICE Cùng với phát triển không ngừng Web Service tạo nên ảnh hưởng định việc xây dựng mô hình phân tán Các công nghệ kiến trúc hướng

Ngày đăng: 28/08/2017, 19:12

Từ khóa liên quan

Mục lục

  • CHƯƠNG 1. WEB SERVICE

    • 1.1. Service

      • 1.1.1. Định nghĩa.

      • 1.1.2. Đặc điểm service.

      • 1.2. Web service (WS).

        • 1.2.1. Định nghĩa.

        • 1.2.2. Cấu trúc web service

        • 1.2.3. Các đặc điểm của web service

        • 1.2.4. Các thành phần của web service

          • 1.2.4.1. WSDL (Web Services Description Language)

          • 1.2.4.2. UDDI (Universal Description, Discovery and Integration)

          • 1.2.4.3. SOAP (Simple Object Access Protocol)

          • 1.2.4.4. XML (eXtensible Markup language)

          • 1.2.5. Hoạt động của Web services

          • 1.3. SOA và dịch vụ web

            • 1.3.1. Định nghĩa SOA

            • 1.3.2. Tính chất của một hệ thống sử dụng SOA.

              • 1.3.2.1. Tính loose coupling 1

              • 1.3.2.2. Tính sử dụng lại dịch vụ

              • 1.3.2.3. Sử dụng dịch vụ bất đồng bộ

              • 1.3.2.4. Quản lý các chính sách

              • 1.3.2.5. Khả năng cộng tác

              • 1.3.2.6. Tự động dò tìm và ràng buộc động

              • 1.3.2.7. Tự phục hồi

              • 1.3.3. SOA và dịch vụ web

              • CHƯƠNG 2. CÁC KỸ THUẬT ĐẢM BẢO AN NINH WEB SERVICE

                • 2.1. Các vấn đề bảo mật cần quan tâm

                  • 2.1.1. Những hạn chế của tường lửa

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

Tài liệu liên quan