Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 60 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
60
Dung lượng
3,31 MB
Nội dung
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ BÙI ĐỨC HIẾU NGHIÊN CỨU CÔNG NGHỆ SOA VÀ BẢO MẬT XÁC THỰC XAUTH ÁP DỤNG XÂY DỰNG GIẢI PHÁP QUẢN LÝ SỰ CỐ MẠNG VIỄN THÔNG LUẬN VĂN THẠC SỸ Hà Nội - 2014 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ BÙI ĐỨC HIẾU NGHIÊN CỨU CÔNG NGHỆ SOA VÀ BẢO MẬT XÁC THỰC XAUTH ÁP DỤNG XÂY DỰNG GIẢI PHÁP QUẢN LÝ MẠNG VIỄN THƠNG Ngành: Cơng nghệ thơng tin Chun ngành: Cơng nghệ phần mềm Mã số: 60 48 10 LUẬN VĂN THẠC SỸ NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS TS TRƯƠNG NINH THUẬN NGƯỜI ĐỒNG HƯỚNG DẪN: TS TRỊNH THANH BÌNH Hà Nội - 2014 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Lời mở đầu Với dòng chữ tiên này, xin dành để gửi lời cảm ơn chân thành sâu sắc tới thầy giáo, tiến sỹ Trương Ninh Thuận, tiến sỹ Trịnh Thanh Bình - người tận tình hướng dẫn, bảo tạo cho điều kiện tốt từ bắt đầu hồn thành luận văn Đồng thời, xin trân trọng gửi lời cảm ơn tới tập thể thầy giáo - Bộ môn Công Nghệ Phần Mềm - trường Đại học Công nghệ - Đại học Quốc gia Hà Nội tạo cho môi trường làm việc đầy đủ thuận tiện Xin cảm ơn tất người thân yêu gia đình tơi tồn thể bạn bè, người ln mỉm cười động viên vấp phải khó khăn, bế tắc Cuối cùng, xin chân thành cảm ơn ông Shakti (công ty Katjaksys), anh Nguyễn Minh Qn (cơng ty điện tốn VDC), người đem đến cho tơi lời khun vơ bổ ích để giúp tháo gỡ khó khăn, vướng mắc trình làm luận văn LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Mục lục Lời mở đầu Mục lục Danh sách hình vẽ Bảng từ viết tắt Mở đầu CHƯƠNG 1: TỔNG QUAN CÁC CÔNG NGHỆ PHÂN TÁN 11 1.1 Hoàn cảnh đời .11 1.2 Một số mơ hình hệ thống phân tán 11 1.2.1 CORBA - Common Object Request Broker Architecture 12 1.2.2 DCOM – Distributed Component Object Model 13 1.2.3 EJB – Enterprise Java Bean 13 1.3 Kết luận chương 14 CHƯƠNG 2: KIẾN TRÚC HƯỚNG DỊCH VỤ VÀ CÔNG NGHỆ WCF 16 2.1 Giới thiệu kiến trúc hướng dich vụ SOA 16 2.1.1 Tổng quan 16 2.1.2 Các nguyên tắc hệ thống SOA 17 2.1.3 Các tính chất hệ thống SOA 18 2.1.4 Lợi ích SOA 22 2.1.5 Kiến trúc phân tầng chi tiết SOA 23 2.1.6 Một số mơ hình triển khai SOA 26 2.1.7 Các phương pháp xây dựng hệ thống SOA 26 2.1.8 Chu trình phát triển SOA: 26 2.2 Tổng quan công nghệ WCF 28 2.2.1 Giới thiệu 28 2.2.2 Ưu điểm WCF 29 2.2.3 Kiến trúc WCF 30 2.3 Kết luận chương 30 CHƯƠNG NGHIÊN CỨU XÂY DỰNG GIẢI PHÁP CHO BÀI TOÁN QUẢN LÝ SỰ CỐ BTS 32 3.1 Xây dựng giải pháp 32 3.1.1 Khảo sát toán 32 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 3.1.2 Phân tích tốn 34 3.1.3 Xây dựng giải pháp 37 3.2.1 Xây dựng sở liệu lưu trữ 40 3.3 Kết xây dựng thử nghiệm phần mềm .42 3.3.1 3.4 Một số hình ảnh hoạt động phần mềm: 42 Kết luận chương 44 CHƯƠNG NGHIÊN CỨU XÂY DỰNG GIẢI PHÁP XÁC THỰC BẢO MẬT DỊCH VỤ WEB VỚI OAUTH XAUTH 46 4.1 Tổng quan 46 4.2 Các vấn đề gặp phải 46 4.3 Dịch vụ chia sẻ định danh mở OpenID 47 4.4 Dịch vụ xác thực ủy quyền chia sẻ tài nguyên Oauth 48 4.5 Cơ chế xác thực Oauth đề xuất cho toán 51 4.6 Những vấn đề phát sinh Oauth môi trường thiết bị di động52 4.7 Giải pháp XAuth Service Authorization manager 53 4.8 Xây dựng xử lý xác thực 54 4.9 Kết luận chương 57 KẾT LUẬN 58 Tài liệu tham khảo 59 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Danh sách hình vẽ Hình 1: Mơ hình tương tác đối tượng kiến trúc CORBA [1] 12 Hình 2: Mơ hình tương tác đối tượng kiến trúc DCOM 13 Hình 3: Mơ hình kiến trúc EJB 14 Hình 4: Sơ đồ cộng tác SOA 16 Hình 5: Cơ chế dị tìm dịch vụ động 20 Hình 6: Cơ chế phát dịch vụ dịch vụ Online 21 Hình 7: Kiến trúc phân tầng SOA 24 Hình 8: Chu trình phát triển SOA 27 Hình 9: Mơ hình hoạt động WCF tương tác với thành phần client (Nguồn: Microsoft) 29 Hình 10: Kiến trúc WCF (Nguồn: Microsoft) 30 Hình 11:Mơ hình hệ thống phần mềm hỗ trợ điều hành mạng viễn thơng 32 Hình 12: Mơ hình chức hệ thống 34 Hình 13: Sơ đồ quy trình nghiệp vụ tổng thể 35 Hình 14: Sơ đồ quy trình nghiệp vụ quy trình quản lý danh sách BTS bị cố 36 Hình 15: Sơ đồ quy trình quản lý cố 36 Hình 16: Mơ hình ứng dụng 37 Hình 17: Mơ hình triển khai hệ thống 38 Hình 18: Mơ hình sở liệu phân hệ Hệ thống 40 Hình 19: Mơ hình sở liệu phân hệ Quản lý cố BTS 41 Hình 20: Quy trình xử lý xác thực định danh OpenId 47 Hình 21: Quy trình xử lý xác thực, ủy quyền khai thác tài nguyên dịch vụ (Nguồn: Oauth.net) 49 Hình 22: Quy trình xử lý xác thực, ủy quyền truy xuất tài nguyên đề xuất với toán 51 Hình 23: Xử lý xác thực theo chế XAuth [4] 54 Hình 24:Cơ chế làm việc AuthorizationManager [4] 54 Hình 25: Khai báo AuthorizationManager 55 Hình 26: Đăng ký MyServiceAuthorizationManager với Web server 56 Hình 27: Trạng thái xác thực thành công 56 Hình 28: Trạng thái xác thực thất bại 57 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Bảng từ viết tắt Từ viết tắt Giải nghĩa SOA Service-oriented architecture WCF Windows Communication Foundation OAuth Open standard for authorization BTS Base transceiver station RESTful Representational State Transfer SOAP Simple Object Access Protocol JAXM Java API for XML Messaging CORBA Common Object Request Broker Architecture XSLT Extensible Stylesheet Language Transformations OAUTH Open standard for Authorization DCOM Distributed Component Object Model EJB Enterprise JavaBeans ORB Object Request Broker WSDL Web Services Description Language PDA Personal Digital Assistant BVT Ban Viễn Thông LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Mở đầu Hiện nay, giới nói chung Việt Nam nói riêng, việc ứng dụng sản phẩm phần mềm vào quản lý doanh nghiệp, xử lý nghiệp vụ doanh nghiệp nhu cầu tất yếu Từ ứng dụng đơn lẻ như: quản lý nhân tiền lương, quản lý cơng nợ, quản lý tài chính, quản lý chăm sóc khách hàng, vv… đến giải pháp tổng thể HRM (Human Resource Management) hay ERP (Enterprise Resource Planning), tất mang lại cho doanh nghiệp nhiều lợi ích thiết thực Tập đồn bưu viễn thơng Việt Nam - VNPT tập đồn lớn với nhiều tổng cơng ty, cơng ty thành viên, hoạt động triên nhiễu lĩnh vực khác có cơng ty Viễn thơng Vinaphone Với đặc thù hoạt động mình, cơng ty phải sử dụng hệ thống phần mềm hỗ trợ quản lý điều hành viễn thông để phục vụ công tác quản lý điều hành cơng ty Q trình hoạt động phát triển cơng ty địi hỏi thường xun phải nâng cấp hệ thống phần mềm cũ đồng thời xây dựng hệ thống phần mềm nhằm đáp ứng yêu cầu ngày cao công tác quản lý, báo cáo, giám sát hoạt động công ty thời kỳ Hệ thống phần mềm hỗ trợ quản lý điều hành viễn thông hệ thống bao gồm nhiều module Phát triển thuê bao, Quản lý mạng cáp ngoại vi, Giao tiếp với thiết bị tổng đài, Quản lý cố, Quản lý đánh số, … đa phần xây dựng tảng cũ (mơ hình Client Server, ngơn ngữ lập trình Visual basic CSDL Oracle, …) độ phức tạp lớn dẫn đến chi phí phát triển bảo trì cao Bên cạnh đó, hệ thống cịn phải đối mặt với khó khăn xu vấn đề an ninh bảo mật, vấn đề tái sử dụng mở rộng hệ thống sẵn có, vấn đề khơng tương thích hệ thống BVT với hệ thống phần mềm chạy tảng khác đơn vị phối hợp triển khai kết nối với Hệ thống tính cước đơn vị Viễn thông tỉnh thành, Hệ thống xác thực Visa cơng ty Điện tốn Truyền số liệu (VDC), Hệ thống MyTV Portal công ty Phần mềm truyền thông VASC, … Để khắc phục nhược điểm trên, thành viên đội ngũ phát triển TOS cá nhân tơi ln trăn trở tìm kiếm giải pháp để áp dụng Hiện nay, LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com giải pháp cộng đồng công nghệ thông tin quan tâm, “Kiến trúc hướng dịch vụ” (Service-oriented Architecture - SOA) Giải pháp kỳ vọng chìa khóa giải vấn đề phức tạp “xu tương lai” Ngoài phần giới thiệu, kết luận phụ lục Luận văn chia thành chương trình: Chương – Tổng quan công nghệ phân tán Chương giới thiệu cách tổng quan cơng nghệ sử dụng để phát triển hệ thống phân tán, so sánh ưu nhược điểm công nghệ tiền đề để lựa chọn giải pháp cho tốn nghiên cứu tìm hiểu Chương – Kiến trúc hướng dịch vu (SOA) công nghệ WCF Chương tìm hiểu kiến trúc SOA giải pháp cho hệ thống phân tán, chế hoạt động, tính chất đặc điểm kiến trúc SOA Tìm hiểu cơng nghệ dịch vụ Web WCF Microsoft để lý giải cho việc lựa chọn công nghệ giải pháp cho toán đặt Chương – Nghiên cứu xây dựng giải pháp cho toán quản lý cố trạm BTS Ở chương này, ta tiến hành khảo sát phân tích toán Quản lý cố BTS – toán hệ thống phần mềm quản lý mạng viễn thơng Từ áp dụng kiến trúc công nghệ nghiên cứu chương trước cho toán Chương – Nghiên cứu xây dựng giải pháp xác thực bảo mật dịch vụ web với Oauth Xauth Ở chương luận văn tìm hiểu số giải pháp xác thực bảo mật từ đề xuất xây dựng giải pháp bảo mật xác thực, ủy quyền truy xuất tài nguyên Oauth, đồng thời cải tiến phương pháp xác thực Xauth phục vụ việc xác thực tài khoản người dùng với phần mềm môi trường thiết bị di động 10 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com CHƯƠNG NGHIÊN CỨU XÂY DỰNG GIẢI PHÁP BẢO MẬT XÁC THỰC, ỦY QUYỀN DỊCH VỤ WEB VỚI OAUTH XAUTH 4.1 Tổng quan Giải pháp kiến trúc SOA nghiên cứu xây dựng chương trước phát triển thực nghiệm toán thực Tuy nhiên, trình triển khai giải pháp SOA cho mơ hình Tập đồn, tổng cơng ty phát sinh vấn đề khó khăn liên quan tới chế bảo mật xác thực, phân quyền truy xuất tài nguyên dịch vụ phân tán hệ thống Những vấn đề ảnh hưởng lớn tới hiệu suất làm việc độ bảo mật kiến trúc hệ thống, đòi hỏi phải nghiên cứu để đưa giải pháp giải vấn đề Ở chương này, luận văn tìm hiểu số giải pháp bảo mật xác thực nhà cung cấp dịch vụ web tiếng sử dụng: OpenId, Oauth, từ đề xuất giải pháp tháo gỡ vấn đề gặp phải 4.2 Các vấn đề gặp phải Trong trình triển khai hệ thống phần mềm theo mơ hình SOA, chúng tơi gặp phải vấn đề khó khăn chính: Vấn đề thứ – Khó xác định quyền truy cập tài nguyên hệ thống: Với đặc thù hoạt động theo mô hình Tập đồn – Tổng cơng ty, cơng ty tập đoàn hoạt động theo chế độc lập, tự chủ chịu quản lý từ tập đoàn Từng tốn hệ thống công ty độc lập nắm giữ, bao gồm tài nguyên liệu tài khoản người dùng khai thác Do vậy, gặp nghiệp vụ xử lý đòi hỏi phải truy xuất dịch vụ từ nhiều nhà cung cấp khác nhau, việc xác thực, phân quyền truy xuất phức tạp gây tranh chấp công ty sở hữu tài nguyên Vấn đề thứ – Phức tạp việc quản lý tài khoản cá nhân sử dụng nhiều dịch vụ: Mỗi nhân viên công ty phải quản lý tài khoản cá nhân phục vụ công việc: Tài khoản email cá nhân, email nội bộ, tài khoản đăng nhập phần mềm nghiệp vụ: kế tốn, báo cáo, quản lý cơng việc, vv Việc phải quản lý sử dụng nhiều tài khoản gây nhiều khó khăn cho người sử dụng nguyên nhân ảnh hưởng tới chất lượng bảo mật dịch vụ 46 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Vấn đề thứ – Khó khăn việc cấp phát thu hồi quyền hạn tài khoản với dịch vụ khác nhau: Với hệ thống dịch vụ phân tán, nghiệp vụ cơng việc xử lý đơi địi hỏi phải sử dụng đồng thời tài nguyên từ dịch vụ khác Để làm việc đòi hỏi hệ thống phải có chế cấp phát quyền truy xuất tài nguyên cho người dùng tương ứng với với nghiệp vụ Với mơ hình hoạt động dịch vụ động lập đơn vị hệ thống tại, việc phức tạp Hiện chưa giải vấn đề cấp phát độc lập tài khoản người dùng theo dịch vụ mà phải sử dụng bảng tham chiếu Tập đoàn quản lý Trước vấn đề khó khăn gặp phải, tơi tiến hành tìm hiểu giải pháp có khả áp dụng giải vấn đề: giải pháp dịch vụ chia sẻ định danh mở OpenID, giải pháp xác thực ủy quyền chia sẻ tài nguyên Oauth 4.3 Dịch vụ chia sẻ định danh mở OpenID OpenID dịch vụ chia sẻ định danh mở cho phép người dùng đăng nhập vào nhiều trang web khác cần sử dụng tài khoản định danh Hệ thống sử dụng OpenID bao gồm thành phần chính: OpenId Provider, User Agent, Third party Applications Hình 20: Quy trình xử lý xác thực định danh OpenId 47 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Chi tiết chế xác thực định danh OpenID thể qua bước sau: Bước 1: Người dùng (USER) yêu cầu xác thực lần đầu, yêu cầu người sử dụng gửi tới ứng dụng bên thứ ba (APPS) Bước 2: Tại APPS, USER redirect tới nhà cung cấp dịch vụ OpenID (PROVIDER) Bước 3: Tại đây, PROVIDER kiểm tra thơng tin APPS, có hỗ trợ dịch vụ cho APPS, PROVIDER đưa USER tới hộp thoại Login để USER xác thực tài khoản Bước 4: Xác thực: USER gửi thơng tin tài khoản cho PROVIDER để kiểm tra thơng tin đăng nhập Bước 5: Nếu thông tin tài khoản hợp lệ, PROVIDER redirect USER tới APPS kèm theo tham số kèm chữ ký từ PROVIDER Bước 6: APPS gửi xác nhận chữ ký thông báo tới PROVIDER thông báo xác nhận định danh Bước 7: APPS đồng thời gửi thông báo Login thành công kèm biến lưu session, cookie cho USER, kết thúc trình xác thực Giải pháp OpenId nhiều hãng công nghệ lớn giới sử dụng: Facebook, Yahoo, Amazon, vv… sử dụng việc xác thực định danh người dùng trang web bên thứ có sử dụng dịch vụ hãng Tuy nhiên giải pháp số hạn chế việc chia sẻ sử dụng tài nguyên từ provider 4.4 Dịch vụ xác thực ủy quyền chia sẻ tài nguyên Oauth Oauth giao thức mở Giao thức cho phép người dùng xác thực tài khoản ủy quyền chia sẻ nguồn tài nguyên từ Service Provider cho bên ứng dụng thứ (APPS) mà cung cấp tên đăng nhập mật cho ứng dụng Cũng tương tự OpenID, giao thức xác thực Oauth bao gồm thành phần: nhà cung cấp dịch vụ (Service Provider - SP), người sử dụng dịch vụ (Service User - SU) bên ứng dụng thứ khai thác tài nguyên (Service Consumer - SC) Ở mơ hình chuẩn mở, tổ chức sử dụng Oauth đề xuất quy trình xử lý xác thực, ủy quyền sau: 48 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Hình 21: Quy trình xử lý xác thực, ủy quyền khai thác tài nguyên dịch vụ (Nguồn: Oauth.net) Ở quy trình này, Oauth đề bước để hồn thành xác thực tài khoản ủy quyền truy xuất tài nguyên: Bước - Consumer request: phía SC gửi yêu cầu truy xuất tài nguyên tới SP thông qua Request Token request bao gồm: - Oauth_consumer_key: khóa xác thực consumer đăng ký với SP - Oath_signature_method: Phương thức ký xác thực oauth - Oauth_signature: chữ ký - Oauth_timestamp: thời hạn xác thực - Oauth_nonce: - Oauth_version: phiên Oauth - Oauth_callback: triệu gọi sau xác thực Bước - Grant request token: SP cấp Request Token cho SC Gói tin Request Token SP gửi cho SC bao gồm: - Oauth_token: mã token xác thực (công khai) - Oauth_token_secret: mã token xác thực (bí mật) - Oauth_callback_confirmed: Xác nhận triệu hồi Bước – Direct user: SC chuyển hướng SU hộp thoại xác thực SP kèm theo oauth_token nhận từ SP 49 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Bước – Obtain User Authorization: Tại bước SU tiến hành cung cấp thông tin xác thực tài khoản cho SP, SP tiến hành xác thực thông tin này, chuyển hướng SU trở SC Khi chuyển SC, SP gửi kèm theo thông tin: - Oauth_token: mã token xác thực (công khai) - Oauth_verifier: Xác minh Oauth Bước – Request Access Token: SC sau nhận thơng tin xác thực từ phía SP, lúc SC gửi tiếp yêu cầu Access Token cho SP bao gồm thông tin: - Oauth_consumer_key - Oauth_token - Oath_signature_method - Oauth_signature - Oauth_timestamp - Oauth_nonce - Oauth_version - Oauth_verifier Bước – Grant Access Token: SP tiến hành kiểm tra thông tin yêu cầu từ SC cấp thông tin truy cập cho SC bao gồm: - Oauth_token - Oauth_token_secret Bước – Consumer Access Protected Resource: Kể từ bước này, Consumer truy cập tài nguyên bảo vệ từ SP thông qua thông tin mà SP cung cấp cho SC Mỗi yêu cầu tài nguyên SC lúc bao gồm: - Oauth_consumer_key - Oauth_token - Oath_signature_method - Oauth_signature - Oauth_timestamp - Oauth_nonce - Oauth_version Qua tìm hiểu, nghiên cứu tiến hành thực nghiệm thực tế, phương thức xác thực, ủy quyền chuẩn Oauth cho thấy phù hợp với mô hình thương mại có quy mơ lớn Nếu áp dụng cho toán nêu luận văn tỏ khơng phù hợp có nhiều quy trình phức tạp, lại không thật cần thiết với đặc thù tốn đặt Do vậy, tơi xin đề xuất mơ hình Oauth với chế cải tiến để phù hợp với thực tiễn áp dụng 50 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 4.5 Cơ chế xác thực Oauth đề xuất cho toán Cơ chế đề xuất dựa đặc điểm từ chế Oauth chuẩn, đơn giản hóa cấu trúc gói tin lược bỏ bớt thông tin không thật cần thiết mà đảm bảo sách với bên phát triển ứng dụng thứ Hình 22: Quy trình xử lý xác thực, ủy quyền truy xuất tài nguyên đề xuất với toán Trong đề xuất này, chế xác thực giữ lại đặc điểm quan trọng từ mơ hình chuẩn: token, secret_token, authorization User Service Provider, access token, vv Cụ thể quy trình xử lý tuân theo bước sau: Bước 1: Khi SC muốn sử dụng tài nguyên SP, SU xác nhận yêu cầu SC Bước 2: SC gửi request token tới SP Gói tin bao gồm: - Consumer_key - Consumer_secret_key Bước 3: SP kiểm tra thông tin SC đăng ký SP, thỏa mãn, gửi trả lại lại SC yêu cầu redirect SU tới SP kèm theo thông tin: - Token_key - Secret_token_key Bước 4: SC tiến hành redirect SU tới trang xác thực SP, thông tin gửi kèm bao gồm: - Consumer_key - Token_key 51 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Bước 5: Người dùng tiền hành xác thực tài khoản SP, SP kiểm tra thơng tin, thỏa mãn SP chuyển tiếp SU SC kèm theo trạng thái xác thực cho SC Thông tin gửi SC bao gồm: - Token_key - Oauth_verifier - Oauth_permission Bước 6: SC gửi yêu cầu access token cho SP cho phiên làm việc Thông tin gửi bao gồm: - Consumer_key - Token_key Bước 7: SP kiểm tra thông tin SC gửi, thỏa mãn SP gửi lại access token cho SC Thông tin gửi bao gồm: - Token_key - Access_token Bước 8: Khi cần truy xuất tài nguyên, SC gửi yêu cầu kèm theo access token tới SP Thông tin gửi bao gồm: - Token_key - Access_token - Request_data Bước 9: SP trả lại liệu cho SC, thông tin bao gồm: - Token_key - Data 4.6 Những vấn đề phát sinh Oauth môi trường thiết bị di động Cơ chế xác thực cải tiến từ Oauth phát triển sử dụng thí điểm cho toán hệ thống phần mềm quản lý viễn thông Tuy nhiên, tương lai, hệ thống mở rộng môi trường làm việc thiết bị di động Đây mơi trường có đặc thù riêng, không giống môi trường ứng dụng desktop Trong q trình phát triển chúng tơi gặp phải số vấn đề phức tạp cần giải Có vấn đề lên ta bắt đầu phát triển ứng dụng với thiết bị di động (ở ta xét tới thiết bị di động sử dụng tảng hệ điều hành Android): Vấn đề thứ nhất: Các yêu cầu theo giao thức HTTP không chứng thực, cách ta biết yêu cầu gửi từ user đó? Nếu đưa trực tiếp username password HTTP request khơng an tồn Để giải vấn đề này, Twitter sử dụng OAuth để xác thực yêu cầu người dùng tới dịch vụ Tương tự Yahoo sử dụng OpenId cho mục đích Nhưng giải pháp OAuth OpenId không khả thi với tốn q phức tạp 52 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Ví dụ giải pháp OAuth, giải pháp cần tới bước để truy cập vào token Theo quy trình xử lý trên, User bị redirect từ ứng dụng tới trình duyệt để cấp xác thực cho ứng dụng sau lại redirect lại Nếu trường hợp trình duyệt máy tính, điều hợp lý Nhưng xử lý môi trường thiết bị di động, nơi tốc độ truy cập mạng thường bị giới hạn điều ảnh hưởng lớn tới trải nghiệm người dùng Đây vấn đề quan trọng yêu cầu phải giải Vấn đề thứ hai: Các URL dịch vụ WCF thường khơng đủ tường minh cho lập trình viên di động sử dụng Chúng ta cần phải làm tất dịch vụ WCF minh bạch hơn, từ lập trình viên di động sử dụng phương thức cục Điều làm cho việc phối hợp nhóm thuận tiện đảm bảo trì dịch vụ mở Vấn đề thứ ba: Trong vấn đề xác thực User, tảng Net hỗ trợ giải pháp xác thực như: Windows User Authentication, X509 certificate, Issued Token, vv Vẫn chưa có giải pháp phù hợp hồn tồn với ứng dụng mobile chưa mềm dẻo để mở rộng Các phiên trước WCF 4.0, RequestInterceptor giải pháp hoàn hảo nhiên tới WCF 4.0 RequestInterceptor khơng cịn hỗ trợ 4.7 Giải pháp XAuth Service Authorization manager Để giải vấn đề gặp phải, ta cần phải giải vấn đề Vấn đề đầu tiên, làm để ta phân biệt xác thực User? OAuth nặng nề thường sử dụng môi trường thương mại OAuth phù hợp cho API từ bên thứ ba XAuth an toàn sử dụng cho bên thứ ba, hoàn cảnh này, ta xây dựng dịch vụ cho ứng dụng riêng khơng có tham gia từ bên thứ ba, tương lai Do vậy, XAuth lựa chọn tốt 53 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Hình 23: Xử lý xác thực theo chế XAuth [4] Vấn đề thứ hai, REST (Representational State Translate) lựa chọn tốt để xây dựng dịch vụ thỏa mãn tiêu chí tường dễ sử dụng REST kiểu kiến trúc để xây dựng ứng dụng phân tán lai bao gồm kiến trúc hướng dịch vụ cách định nghĩa công cụ sử dụng chuẩn HTTP (GET, POST, PUT, DELETE) định vị URL Và kể từ Net 3.5, WCF hỗ trợ xây dựng kiểu dịch vụ REST Vấn đề thứ việc Host cho dịch vụ XAuth ServiceAuthorizationManager cơng cụ thích hợp cho u cầu ServiceAuthorizationManager cung cấp phương thức CheckAccessCore, phương thức hỗ trợ can thiệp vào lời gọi tới dịch vụ WCF Mặc dù ServiceAuthorizationManager không thiết kế dành riêng cho ứng dụng loại Sau thực xác thực, cần phải đăng ký với file cấu hình, sau xác thực có hiệu lực với tất lời gọi tới dịch vụ Hình 24:Cơ chế làm việc AuthorizationManager [4] 4.8 Xây dựng xử lý xác thực 54 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Sau xác định vấn đề tìm kiếm giải pháp ta tiến hành xây dựng demo giải pháp với hệ thống có Đầu tiên, ta xây dựng dịch vụ RESTful WCF Dịch vụ kiểm tra header yêu cầu để trả lại thông tin mà User cần Để làm dịch vụ dễ sử dụng, URL WCF cần tuân theo dạng REST Ví dụ: http://203.160.20.118/OAuthService/appService/notice/latest http://203.160.20.118/OAuthService/appService/more/{id} Tiếp theo ta tạo Request Filter MyServiceAuthorizationManager kế thừa từ lớp ServiceAuthorizationManager Sau ghi đè lên phương thức CheckAccessCore Hình 25: Khai báo AuthorizationManager Các công việc xác thực XAuth hoàn thành phương thức Validate Phương thức kiểm tra Header, yêu cầu hợp lệ, trả lại True, yêu cầu dịch vụ WCF xử lý Nếu yêu cầu không qua xử lý xác thực XAuth, phương thức Validate trả lại False yêu cầu bị từ chối Bước 3, cần đăng ký filter MyServiceAuthorizationManager với web server 55 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Hình 26: Đăng ký MyServiceAuthorizationManager với Web server Cuối cùng, sau cơng việc server hồn thành, phía client ta xây dựng ứng dụng tảng Android để kiểm tra dịch vụ RESTful Hình 27: Trạng thái xác thực thành cơng 56 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Hình 28: Trạng thái xác thực thất bại 4.9 Kết luận chương Trong chương luận văn nghiên cứu chế xác thực tài khoản OpenID Oauth Từ phân tích ưu, nhược điểm chế đưa lựa chọn giải pháp thích hợp cho tốn Đồng thời đề xuất cải tiến giao thức Oauth nhằm tối ưu trình xử lý xác thực đặc thù tốn đặt Ngồi ra, qua tìm hiểu ta thấy chế xác thực tài khoản có ưu nhược điểm riêng, OAuth tỏ chế xác thực phù hợp với ứng dụng SOA chạy môi trường PC hỗ trợ tham gia từ phía đơn vị thứ 3, XAuth lại tỏ phù hợp với ứng dụng SOA chạy môi trường di động Từ đặc thù u cầu tốn ta vận dụng linh hoạt chế hồn cảnh riêng biệt Trong phạm vi tốn này, áp dụng công nghệ OAuth vấn đề xác thực bảo mật cho toán Đồng thời tìm hiểu thử nghiệm cơng nghệ XAuth phục vụ cho việc mở rộng môi trường làm việc lên thiết bị di dộng sau 57 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com KẾT LUẬN Các kết đạt được: Như vậy, sau trình nghiên cứu tìm hiểu giải pháp kiến trúc SOA cho “Hệ thống phần mềm hỗ trợ quản lý điều hành viễn thơng”, luận văn phân tích lựa chọn giải pháp công nghệ WCF áp dụng cho toán “Phần mềm quản lý cố trạm BTS” thu kết tích cực, phần mềm hoàn thành thử nghiệm thu kết khả quan Từ kết đạt trình xây dựng phần mềm, tương lai tơi tiếp tục phát triển chuẩn hóa dịch vụ tảng kiến trúc SOA tạo thành hệ thống thư viện dịch vụ hỗ trợ phát triển, phục vụ cho việc mở rộng hệ thống thời xây dựng hệ thống phần mềm theo kiến trúc SOA sau Bên cạnh đó, luận văn nghiên cứu giải pháp XAuth Service Authorization manager vấn đề chế xác thực người dùng môi trường thiết bị di động, kết giải pháp đề hướng việc ứng dụng công nghệ di động vào công tác quản lý điều hành doanh nghiệp Vấn đề tồn hướng phát triển Luận văn dừng lại việc nghiên cứu giải pháp kiến trúc cơng nghệ để giải tốn Phần mềm hồn thành, nhiên để đánh giá xác hiệu giải pháp cần có phương pháp đặc thù riêng Hiện nay, toán “Hệ thống phần mềm hỗ trợ quản lý điều hành viễn thông” phát triển theo kiến trúc SOA Hiệu suất toán lại ảnh hưởng trực tiếp tới hiệu suất toán khác hệ thống ảnh hưởng chung lên hiệu suất tồn hệ thống Phương pháp cơng cụ đánh giá hiệu suất sử dụng phương pháp cổ điển, áp dụng chung cho công nghệ cũ Những phương pháp công cụ tỏ khơng hiệu mơ hình SOA Điều địi hỏi phải nghiên cứu tìm hiểu giải pháp đánh giá chất lượng phù hợp với mơ hình kiến trúc SOA Việc nghiên cứu bảo mật xác thực dừng lại mức độ thử nghiệm thiết bị điện thoại chạy hệ điều hành Android Trong tương lai hy vọng đề xuất chấp nhận, đề tài phát triển diện rộng để tương thích với nhiều loại thiết bị di động nhiều tảng hệ điều hành 58 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Tài liệu tham khảo Steve Vinoski (1997) - CORBA: Integrating Diverse Applications Within Distributed Heterogeneous Environments – http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=565655 Dean Thompson (1997) - Distributed Component Object Model(DCOM) Published in: Proceedings Technology of Object-Oriented Languages TOOLS 24 (Cat No.97TB100240) Borland Software Corporation (2002) - Enterprise JavaBeans™ Developer’s Guide http://portal.aauj.edu/portal_resources/downloads/programming/enterprise_java_beans _developers_guide.pdf IBM DeveloperWorks (2004) - Migrating to a service-oriented, ftp://service.boulder.ibm.com/eserver/zseries/audio/pdfs/G224-729800_FinalMigratetoSOA.pdf Microsoft Corp - Developing Service-Oriented Applications with WCF, http://msdn.microsoft.com/ Guixue Cheng, Wei Zhang (2009) - A Service-Oriented Distributed FrameworkWCF, http://ieeexplore.ieee.org/xpl/articleDetails.jsp?tp=&arnumber=5368237 Gaoyuan Pan, Yongbin Wang (2012) - Securing RESTful WCF Services with XAuth and Service Authorization Manager - A Practical Way for User Authorization and Server Protection, http://ieeexplore.ieee.org/xpl/articleDetails.jsp?tp=&arnumber=6274810 Leiba (2012) - OAuth Web Authorization Protocol, http://ieeexplore.ieee.org/xpl/articleDetails.jsp?tp=&arnumber=6123701 David Recordon and Brad Fitzpatrick OpenID Authentication 1.1, 2006 http://openid.net/specs/openid-authentication-1_1.html 10 H.S.Al-Sinani, “Browser Extension-based Interoperation Between OAuth and Information Card-based Systems”, Technical Report: RHUL–MA–2011–15 (Department of Mathematics, Royal Holloway, Univer-sity of London), 2011, http://www.ma.rhul.ac.uk/static/techrep/2011/RHUL-MA-2011-15.pdf 11 Eran Hammer-Lahav The OAuth 1.0 Protocol | RFC5849, 2010 59 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com http://tools.ietf.org/html/rfc5849 12 David Recordon, D.Balfanz, D Recordon and J Smarr OpenID OAuth Extension, 10 september 2008, http://step2.googlecode.com/svn/spec/openid_oauth_extension/drafts/0/openid_oaut h_extension.html 13 Axel Bucker (2005) Federated Identity Management And Web Services Security With IBM Tivoli Security Solutions An IBM Redbooks 14 Microsoft (2005), “ Microsoft’s Vision for an Identity Metasystem”, http://www.identityblog.com/stories/2005/10/06/IdentityMetasystem.pdf 60 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com ... TRƯỜNG ĐẠI HỌC CÔNG NGHỆ BÙI ĐỨC HIẾU NGHIÊN CỨU CÔNG NGHỆ SOA VÀ BẢO MẬT XÁC THỰC XAUTH ÁP DỤNG XÂY DỰNG GIẢI PHÁP QUẢN LÝ MẠNG VIỄN THƠNG Ngành: Cơng nghệ thơng tin Chuyên ngành: Công nghệ phần... trúc công nghệ nghiên cứu chương trước cho toán Chương – Nghiên cứu xây dựng giải pháp xác thực bảo mật dịch vụ web với Oauth Xauth Ở chương luận văn tìm hiểu số giải pháp xác thực bảo mật từ... Chương – Nghiên cứu xây dựng giải pháp cho toán quản lý cố trạm BTS Ở chương này, ta tiến hành khảo sát phân tích tốn Quản lý cố BTS – toán hệ thống phần mềm quản lý mạng viễn thơng Từ áp dụng kiến