Ngôn ngữ mô hình hóa chuyên biệt miền cho các yêu cầu bảo mật Chu Thị Minh Huệ Trường Đại học Công nghệ Luận văn Thạc sĩ ngành: Công nghệ phần mềm; Mã số: 60 48 10 Người hướng dẫn: TS Đặng Đức Hạnh Năm bảo vệ: 2011 Abstract: Giới thiệu chung về cơ sở lý thuyết của phương pháp phát triển phần mềm hướng mô hình với hướng tiếp cận là mô hình hóa chuyên biệt miền (DSML), phân tích lợi ích của DSML, cũng như các công cụ hỗ trợ cho mô hình hóa chuyên biệt miền. Nghiên cứu về miền bảo mật, xác định metamodel, các luật ràng buộc cho miền bảo mật theo mô hình điều khiển truy cập dựa trên vai trò của người dùng (RBAC). Trình bày về cài đặt và kết quả thử nghiệm DSML cho miền bảo mật trên phần mềm mã nguồn mở Eclipse. Vận dụng DSML cho RBAC. Keywords: Phần mềm; Mô hình hóa; Bảo mật; An toàn dữ liệu Content Các hệ thống phần mềm hiện đại ngày nay càng ngày càng trở lên phức tạp. Khi phát triển đòi hỏi giảm thời gian, giảm chi phí nhưng lại phải tăng chất lượng phần mềm để tăng tính cạnh tranh và đáp ứng các nhu cầu sử dụng phần mềm trên tất cả các lĩnh vực khác nhau của đời sống con người. Để giải quyết vấn đề nghịch lý trong phát triển phần mềm người ta đề xuất giải pháp phát triển các framework phục vụ cho phát triển phần mềm. Tuy nhiên những giải pháp đó cũng không đủ để đáp ứng các nhu cầu của ngành công nghiệp phần mềm và việc phát triển phần mềm vẫn thủ công dựa vào con người là chủ yếu. Vì vậy việc nghiên cứu và đưa ra một giải pháp tăng tính tự động trong phát triển phần mềm đã được đề xuất và phát triển. Giải pháp phát triển phần mềm hướng mô hình (MDD) được xem là một giải pháp phù hợp cho vấn đề gặp phải trong phát triển phần mềm. Phát triển hướng mô hình là đặt mô hình hóa là vấn đề trọng tâm trong phát triển phần mềm, từ các mô hình sẽ được dịch chuyển sang mã trương trình triển khai nhờ bộ sinh mã nguồn (code generator). P hát triển hướng mô hình đặc biệt phù hợp với phát triển các sản phần mềm cùng dòng (software product line). Một trong các hướng tiếp cận của phát triển hướng mô hình là mô hình hóa chuyên biệt miền (DSM), trong đó việc xây dựng ngôn ngữ mô hình hóa chuyên biệt miền (DSML) thường được triển khai dưới dạng một dự án nhỏ khởi đầu trong một dự án lớn. K ết quả của dự án mô hình hóa chuyên biệt miền là một ngôn ngữ m ô hình hóa chuyên biệt miền. Ngôn ngữ cho phép mô hình hóa các vấn đề trong dự án, kết quả thu được là sự dịch chuyển các mô hình của dự án sang code triển khai, điều này làm giảm thời gian và chi phí phát triển phần mềm. 2 Bảo mật đóng một vai trò trung tâm trong phát triển và hoạt động của các hệ thống phần mềm phân tán với quy mô lớn, như thương mại điện tử. Bảo mật là một khía cạnh ngang trong phát triển phần mềm. Nó là vấn đề gặp phải đối với hầu hết các dự án phần mềm tuy nhiên vấn đề thiết kế bảo mật trong thiết kế tổng thể thường bị bỏ quên hoặc chỉ tích hợp trong gia đoạn quản trị hệ thống. Hạn chế này là do thiếu công cụ hỗ trợ kỹ nghệ bảo mật, tích hợp bảo mật thủ công rất khó và thường phát sinh lỗi do người phát triển hệ thống thiếu kinh nghiệm vì họ không phải là chuyên gia về bảo mật. Vì vậy việc tích hợp bảo mật trong dự án phần mềm nếu thực hiện được một cách trực quan và tự động, sẽ làm giảm chi phí và tăng chất lượng của phần mềm [1] Với những ưu điểm của mô hình hóa chuyên biệt miền và lợi ích mang lại tícần thiết phải phát triển một ngôn ngữ cho phép mô hình hóa chính xác các yêu cầu bảo mật. Xuất phát từ những lý do trên chúng tôi đã lựa chọn đề tài “Ngôn ngữ mô hình hóa cho các yêu cầu bảo mật”. Mục tiêu của đề tài là tìm hiểu phương pháp phát triển phần mềm hướng mô hình với hướng tiếp cận là mô hình hóa chuyên biệt miền. Trong đề tài này chúng tôi tập trung tìm hiểu nền tảng, phương pháp, công cụ phát triển ngôn ngữ mô hình hóa chuyên biệt miền và cài đặt thử nghiệm cho miền bảo mật với tool Eclipse. Việc xây dựng bộ sinh code tự động cũng như tích hợp ngôn ngữ mô hình hóa chuyên biệt miền với các ngôn ngữ mô hình hóa khác như UML hoặc ngôn ngữ mô hình hóa hóa chuyên biệt miền với miền khác, sẽ không được xem xét trong đề tài này. Luận văn được cấu trúc thành 4 chương như s au : o Chương 1. Tổng quan về mô hình hóa chuyên biệt m iề n Chương này giới thiệu chung về cơ sở lý thuyết của phương pháp phát t r iển phần mềm hướng mô hình với hướng tiếp cận là mô hình hóa chuyên biệt miền, phân tích lợi ích của DSML, cũng như các công cụ hỗ trợ cho mô hình hóa chuyên biệt miền. o Chương 2. Mô hình hóa chuyên biệt miền cho miền bảo m ậ t Chương này trình bày về miền bảo mật, xác định metamodel, các luật r à ng buộc cho miền bảo mật theo mô hình điều khiển truy cập dựa trên vai trò của người dùng (RBAC). o Chương 3. Xây dựng ngôn ngữ chuyên biệt miền RBAC trên E cli p se Chương này trình bày về cài đặt và kết quả thử nghiệm DSML cho miền b ả o mật trên phần mềm mã nguồn mở Eclipse. o Chương 4. Vận dụng DSML cho RBAC. Mục tiêu chính của chương này là để kiểm nghiệm kết quả thử nghiệm t r ong chương 3, cho một bài toán thực tế. o Chương 5. Kết luận và hướng phát triển. References [1] David Basin, and Jürgen Doser Torsten Lodderstedt, "SecureUML: A UML-Based Modeling Language for Model-Driven Security", University of Freiburg, Germany, Institute for Computer Science [2] Sanna Sivonen, "Domain-specific modelling language and code generator for developing repositorybased", VTT Publications, Oulu, research project 2008. [3] Robert A. Maksimchuk, Michael W. Engle, Bobbi J. Young, Ph.D.Jim Conallen, Kelli A. Houston Grady Booch, “Object-Oriented Analysis and Design with Applications”, the United States on recycled paper at Courier in Westford, Massachusetts, April, 2007. [4] Group Object Management, "Object Constraint Language", OMG, formal/06-05-01, 2006. [5] Richard C. Gronback, “Eclipse Modeling Project A Domain-Specific Language”, United States of America, 2009 3 [6] Rick Kuhn, "Role Based Access Control" American National Standards, Apr. 2003. [7] David Dean, Anna Gerber, Gunnar Wagenknecht, Philippe Vanderheyden Bill Moore, “Eclipse Development using the Graphical Editing Framework and the Eclipse Modeling Framework”, ibm.com/redbooks, 2004. [8] Đặng Văn Đức, “Phân tích thiết kế OPP bằng UML”, NXB Giáo dục, 2002. [9] Petter Graff Vladimir Bacvanski, “Mastering Eclipse Modeling Framework”, 2005, Elipse. [10] Reena Cherukuri Dr. Saeed Rajput, Role Based Access Control Models, Slide. [11] Elisa Chiarani (UNITN),Edith Felix (THA),Benjamin Fontan (THA), Charles Haley (OU), Fabio Massacci (UNITN), Zoltán Micskei (BME), Bashar Nuseibeh (OU), Federica Paci (UNITN), Thein Tun (OU) Yijun Yu (OU), Dániel Varró (BME) Gábor Bergmann (BME), "Methology For Evolutionary", 1.33, 2010 [12] Beatriz Marín, Oscar Pastor Giovanni Giachetti, "Integration Of Domain- Specific Modeling Languages and UML", ©Technomathematics Research Foundation, 2009. . là mô hình hóa chuyên biệt miền, phân tích lợi ích của DSML, cũng như các công cụ hỗ trợ cho mô hình hóa chuyên biệt miền. o Chương 2. Mô hình hóa chuyên. điểm của mô hình hóa chuyên biệt miền và lợi ích mang lại tícần thiết phải phát triển một ngôn ngữ cho phép mô hình hóa chính xác các yêu cầu bảo mật. Xuất