Mở rộng công cụ activiti cho đặc tả và cài đặt chính sách an ninh

57 9 0
Mở rộng công cụ activiti cho đặc tả và cài đặt chính sách an ninh

Đ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

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐỖ ANH VIỆT MỞ RỘNG CÔNG CỤ ACTIVITI CHO ĐẶC TẢ VÀ CÀI ĐẶT CHÍNH SÁCH AN NINH Ngành: Công nghệ Thông tin Chuyên ngành: Kỹ thuật phần mềm Mã số: 60480103 LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN NGƯỜI HƯỚNG DẪN KHOA HỌC: TS ĐẶNG ĐỨC HẠNH Hà Nội – 2018 L LỜI CAM ĐOAN Tôi xin cam đoan luận văn thạc sĩ “Mở rộng công cụ Activiti cho đặc tả cài đặt sách an ninh” cơng trình nghiên cứu riêng tơi hướng dẫn TS Đặng Đức Hạnh Các nội dung nghiên cứu kết đề tài trung thực chưa công bố cơng trình khác Những phân tích, đánh giá tác giả thu thập từ nguồn khác có ghi rõ tài liệu tham khảo Học viên thực Đỗ Anh Việt LỜI CẢM ƠN Để hoàn thành luận văn thạc sĩ, bên cạnh nỗ lực thân cịn có hướng dẫn nhiệt tình q Thầy Cơ, động viên ủng hộ gia đình bạn bè suốt trình nghiên cứu thực luận văn Tơi xin chân thành bày tỏ lịng biết ơn sâu sắc đến Thầy TS Đặng Đức Hạnh, người tận tình hướng dẫn tạo điều kiện tốt cho tơi hồn thành luận văn Xin chân thành cảm ơn thầy cô khoa Công nghệ thông tin, Trường đại học Công Nghệ truyền đạt kiến thức quý báu giúp đỡ trình học tập nghiên cứu trường Xin chân thành cảm ơn Trung tâm Tư vấn Thiết kế Mobifone cho phép tạo điều kiện để triển khai kết nghiên cứu luận văn Cuối cùng, xin gửi lời cảm ơn đến gia đình, bạn bè, đồng nghiệp, người hỗ trợ suốt trình học tập, nghiên cứu thực luận văn Học viên thực Đỗ Anh Việt MỤC LỤC Trang DANH SÁCH CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT Từ viết tắt API Ý nghĩa Thuật ngữ Application Programming Interface BoD Binding Of Duty BPM Business Process Management BPMN Business Process Model and Notation DSM Domain-Specific Modeling DSML Domain-Specific Modeling Language EMF Eclipse Model Framework Giao diện lập trình ứng dụng Ràng buộc nhiệm vụ thực người Quản lý quy trình nghiệp vụ Tiêu chuẩn mơ hình quy trình nghiệp vụ Mơ hình hóa chun biệt miền Ngơn ngữ mơ hình hóa chun biệt miền Nền tảng mơ hình hóa Eclipse PEP SoA SLA SoD Policy Enforcement Point Service Oriented Architecture Service-level agreement Separation Of Duty Điểm thực thi sách Kiến trúc hướng dịch vụ Cam kết chất lượng dịch vụ Tách biệt nhiệm vụ Điều khiển truy cập dựa theo vai trò RBAC Role-Based Access Control REST REpresentational State Transfer Web Services Business Process Ngôn ngữ thực thi quy trình Execution Language nghiệp vụ Web services eXtensible Access Control Markup Language WSBPEL XACML DANH SÁCH CÁC HÌNH VẼ Hình 1.1: Thu hẹp khoảng cách trừu tượng ý tưởng miền cài đặt chúng Hình 1.2: Kiến trúc DSM Hình 1.3: Core RBAC Hình 1.4: MetaModel RBAC Hình 1.5: MetaModel RBAC Hình 1.6: Quy trình nghiệp vụ Hình 1.7: Vịng đời BPM Hình 1.8: Metamodel BPMN Hình 1.9: Các thành phần Activiti Hình 1.10: Các thành phần Activiti Engine Hình 2.1: Yêu cầu an ninh kết hợp với ký hiệu Hình 2.2: Metamodel BPMN tích hợp với số sách an ninh Hình 2.3: Ecore Diagram RBAC Eclipse Hình 2.4: Mơ hình Ecore RBAC thu từ EcoreDiagram Hình 2.5: Lớp JAVA sinh từ mơ hình Hình 2.6: Tab Security Patelle Hình 2.7: Tab Security Properties Hình 3.1: Cơ cấu tổ chức trung tâm Tư vấn Thiết kế Hình 3.2: Màn hình đăng nhập Activiti Designer Hình 3.3: Màn hình quản lý Task Activiti Designer Hình 3.4: Màn hình quản lý Process Activiti Designer Hình 3.5: Màn hình quản lý cấu hình Activiti Designer Hình 3.6: Tạo dự án Activti BPM Eclipse Hình 3.7: Tạo sơ đồ Activiti Diagram Eclipse Hình 3.8: Visual Editor Activiti Hình 3.9: Quy trình điều xe Activiti Designer Hình 3.10: Khai báo data objects quy trình điều xe Hình 3.11: Cấu hình rẽ nhánh cho Gateway Hình 3.12: Cấu hình kết phê duyệt Manager Approval Hình 3.13: Cấu hình Security cho Manager Approval Hình 3.14: Cấu hình SeparationOfDuty Hình 3.15: Cấu hình Form thơng tin CarSupervisor Approval Hình 3.16: Cấu hình MailTask Hình 3.17: Tạo nhóm người dùng Activiti Explorer Hình 3.18: Tạo người dùng Activiti Explorer Hình 3.19: Triển khai quy trình Activit Explorer Hình 3.20: Biểu mẫu thơng tin u cầu Hình 3.21: Màn hình Task Manager Approval Hình 3.22: Thơng báo vi phạm sách RBAC Hình 3.23: Chọn người thực Task Hình 3.24: Thực phê duyệt u cầu Hình 3.25: Mail thơng báo kết phê duyệt Hình 3.26: Thống kê số lần quy trình thực theo tháng MỞ ĐẦU Quy trình nghiệp vụ đóng vai trị then chốt để doanh nghiệp quản lý vận hành cách nhịp nhàng, đạt hiệu cao Có thể khẳng định, doanh nghiệp xây dựng quy trình tốt phát triển bền vững có tính cạnh tranh cao Để triển khai trước tiên quy trình nghiệp vụ phải mơ hình hóa Mơ hình hóa quy trình nghiệp vụ khơng sử dụng việc trao đổi yêu cầu chuyên gia nghiệp vụ chuyên gia hệ thống mà sử dụng để cài đặt hệ thống thực tế Các quy trình nghiệp vụ đại thường kết hợp tác vụ người với tác vụ tự động (ví dụ, cài đặt webservice), nên ngơn ngữ mơ hình hóa quy trình nghiệp vụ cần phải thu hẹp khoảng cách giữa chuyên gia nghiệp vụ chuyên gia hệ thống [2] Mô hình hóa quy trình nghiệp vụ thường tập trung vào mơ hình hóa xác chức quy trình mà bỏ qua yêu cầu an ninh Nguyên nhân chủ yếu thực tế chuyên gia lĩnh vực quy trình nghiệp vụ khơng phải chuyên gia an ninh Các yêu cầu an ninh thường xuyên xem xét sau định nghĩa hệ thống Cách tiếp cận dẫn đến lỗ hổng an ninh rõ ràng cần thiết phải tăng cường nỗ lực an ninh giai đoạn trước phát triển việc sửa lỗi hiệu tiết kiệm chi phí Các nghiên cứu thực nghiệm cho thấy mức thiết kế quy trình nghiệp vụ khách hàng người dùng cuối biểu diễn yêu cầu an ninh họ sau thể mức cao, yêu cầu an ninh dễ dàng xác định người mơ hình hóa quy trình nghiệp vụ [2] Các u cầu an ninh mơ hình hóa quy trình nghiệp vụ cần thiết phải xem xét yêu cầu an ninh ứng dụng mức độ trừu tượng cao Một yêu cầu an ninh điều khiển truy nhập tức kiểm soát việc truy cập thực hành động nguồn tài nguyên hệ thống được bảo vệ RBAC (Role-Based Access Control) điều khiển truy cập theo vai trò phương pháp điều khiển truy cập hiệu [3,4] Tuy nhiên, tảng cho phép mơ hình hóa quy trình nghiệp vụ Oracle BPM, Acitivi BPM chưa tích hợp đầy đủ điều khiển truy cập theo vai trị RBAC [5] Chính vậy, tơi xin chọn đề tài “Mở rộng công cụ Activiti cho đặc tả cài đặt sách an ninh” Trong luận văn, tơi trình bày phương pháp tích hợp sách an ninh RBAC vào quy trình nghiệp vụ BPM cách mở rộng tiêu chuẩn BPMN cho đặc tả sách an ninh [2], đồng thời ứng dụng phương pháp vào việc mở rộng công cụ Activiti BPM cho đặc tả cài đặt RBAC dựa vào [5] Kết cụ thể đạt được: thứ nhất, tích hợp sách RBAC vào pha mơ hình hóa để u cầu an ninh xem xét từ đầu Thứ hai, kiểm tra sách pha thực thi để đảm bảo an toàn an ninh cho hệ thống Về phần bố cục, luận văn chia thành chương sau: Chương Kiến thức tảng : Trình bày sở lý thuyết cơng nghệ sử dụng luận văn Bao gồm: Mơ hình hóa chun biệt miền, mơ hình hóa đặc tả sách truy cập RBAC, mơ hình hóa quy trình nghiệp vụ cuối cùng, giới thiệu cơng cụ mã nguồn mở Activiti BPM Chương Tích hợp mơ đun sách truy cập RBAC với Activiti : Trình bày phương pháp tích hợp sách an ninh vào quy trình nghiệp vụ ứng dụng phương pháp vào việc tích hợp sách truy cập RBAC vào Activiti BPM Chương Cài đặt thực nghiệm : Trình bày tốn vận tải triển khai Trung tâm Tư vấn Thiết kế Mobifone, ứng dụng kết luận văn để giải toán cài đặt Activiti BPM Cuối kết đạt CHƯƠNG KIẾN THỨC NỀN TẢNG 1.1 Giới thiệu chương Chương trình bày sở lý thuyết cơng nghệ sử dụng luận văn Bao gồm ba nội dung là: • Mơ hình hóa chun biệt miền: khái niệm kiến trúc DSM; cú pháp ngữ nghĩa ngôn ngữ mô hình hóa chun biệt miền DMSL • Mơ hình hóa đặc tả sách truy cập RBAC: khái niệm Core RBAC ràng buộc phân quyền Từ đó, xây dựng mơ hình metamodel cho RBAC • Mơ hình hóa thực thi quy trình nghiệp vụ với Activiti BPM: khái niệm, thành phần, vòng đời tiêu chuẩn ký hiệu BPMN quy trình nghiệp vụ Cuối cùng, giới thiệu công cụ mã nguồn mở Activti BPM cho việc mơ hình hóa thực thi quy trình nghiệp vụ cách tự động 1.2 Mơ hình hóa chun biệt miền Các hệ thống phần mềm ngày trở nên phức tạp, muốn cải thiện hiệu suất phát triển phần mềm không tốc độ mà chất lượng hệ thống tạo ra, nhà nghiên cứu cố gắng tìm phương pháp tự động chuyển từ mơ hình sang code Do đó, mơ hình hóa chun biệt miền (DSM) đời DSM sử dụng ngơn ngữ mơ hình hóa chuyên biệt miền (DSML) để sinh code đầy đủ từ mơ hình code sinh có lỗi code viết tay [6] 1.2.1 Khái niệm DSM chủ yếu tập trung vào hai vấn đề Đầu tiên, nâng cao mức độ trừu tượng lập trình cách xác định ngơn ngữ trực tiếp sử dụng khái niệm luật từ miền vấn đề cụ thể Thứ hai, tạo sản phẩm cuối ngơn ngữ lập trình chọn hình thức khác từ đặc tả mức cao Thơng thường, sinh code tiếp tục hỗ trợ số tảng (framework) Tự động hóa phát triển phần mềm trở nên phổ biến ngơn ngữ mơ hình hóa, sinh code code framework phù hợp với yêu cầu miền ứng dụng Nói cách khác chúng chuyên biệt miền chúng hoàn toàn kiểm soát người dùng Các mức độ trừu tượng cao Sự trừu tượng quan trọng phát triển phần mềm Trong suốt lịch sử phát triển phần mềm, nâng cao mức độ trừu tượng nguyên nhân bước nhảy vọt hiệu suất nhà phát triển Nếu nâng cao mức độ trừu tượng làm giảm tính phức tạp để tiếp tục nâng cao Hình 1.1 thể hiện, nhà phát triển thời điểm khác thu hẹp khoảng cách trừu tượng ý tưởng miền cài đặt chúng Hình 1.1: Thu hẹp khoảng cách trừu tượng ý tưởng miền cài đặt chúng Bước phát triển phần mềm nghĩ giải pháp liên quan đến miền vấn đề - giải pháp mức độ trừu tượng cao (bước 1) Ví dụ, định nên hỏi tên người trước hay hỏi phương thức toán trước đăng ký hội thảo Sau tìm giải pháp ánh xạ sang đặc tả số ngôn ngữ (bước 2) Trong lập trình truyền thống, bước nhà phát triển ánh xạ khái niệm miền vào việc code khái niệm Trong UML ngơn ngữ mơ hình hóa mục đích chung khác, nhà phát triển ánh xạ giải pháp miền vấn đề vào đặc tả ngơn ngữ mơ hình hóa Bước 3, cài đặt đầy đủ giải pháp: đưa điều kiện nội dung code cho vòng lặp Tuy nhiên, sử dụng ngơn ngữ mơ hình hóa mục đích chung, cần ánh xạ bổ sung từ mơ hình sang code Điều đáng nhà phát triển phải thực từ bước mà khơng có cơng cụ hỗ trợ, đặc biệt để giải lỗi phát sinh giai đoạn phát triển thường tốn nhiều chi phí Tự động sinh code Trong bước 3, việc sinh code tự động từ thiết kế UML Thay yêu cầu nhà phát triển nắm vững miền vấn đề lập trình, giải pháp tốt cho phép nhà phát triển đặc tả ứng dụng dạng biết sử dụng, sau có sinh code sử dụng đặc tả tạo loại code giống họ viết tay Điều làm tăng mức độ trừu tượng đáng kể; từ việc lập trình với byte/bit, thuộc tính kết trả về; lên đến khái niệm luật lệ miền vấn đề mà nhà phát triển làm việc với Sau đó, ngơn ngữ lập trình hợp với bước bước tự động hóa hồn tồn bước Mức độ trừu tượng nâng lên gắn liền với code sinh tự động mục đích DSM 10 ... Activiti cho đặc tả cài đặt sách an ninh? ?? Trong luận văn, tơi trình bày phương pháp tích hợp sách an ninh RBAC vào quy trình nghiệp vụ BPM cách mở rộng tiêu chuẩn BPMN cho đặc tả sách an ninh [2],... dụng phương pháp vào việc mở rộng công cụ Activiti BPM cho đặc tả cài đặt RBAC dựa vào [5] Kết cụ thể đạt được: thứ nhất, tích hợp sách RBAC vào pha mơ hình hóa để yêu cầu an ninh xem xét từ đầu...LỜI CAM ĐOAN Tôi xin cam đoan luận văn thạc sĩ ? ?Mở rộng công cụ Activiti cho đặc tả cài đặt sách an ninh? ?? cơng trình nghiên cứu riêng hướng dẫn TS Đặng

Ngày đăng: 09/03/2021, 17:41

Mục lục

  • LỜI CAM ĐOAN

  • LỜI CẢM ƠN

  • MỤC LỤC

  • DANH SÁCH CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT

  • DANH SÁCH CÁC HÌNH VẼ

  • MỞ ĐẦU

  • CHƯƠNG 1. KIẾN THỨC NỀN TẢNG

    • 1.1. Giới thiệu chương

    • 1.2. Mô hình hóa chuyên biệt miền

      • 1.2.1. Khái niệm

      • 1.2.2. Ngôn ngữ mô hình hóa chuyên biệt miền

      • 1.3. Mô hình hóa đặc tả chính sách truy nhập RBAC

        • 1.3.1. RBAC và các ràng buộc phân quyền

        • 1.3.2. MetaModel cho RBAC

        • 1.4. Mô hình hóa và thực thi quy trình nghiệp vụ với Activiti

          • 1.4.1. Mô hình hóa quy trình nghiệp vụ

            • 1.4.1.1. Vòng đời quy trình nghiệp vụ

            • 1.4.1.2. Tiêu chuẩn ký hiệu BPMN

            • 1.4.2. Công cụ Activiti

            • 1.5. Tổng kết chương

            • CHƯƠNG 2. TÍCH HỢP MÔ ĐUN CHÍNH SÁCH TRUY CẬP RBAC VỚI ACTIVITI

              • 2.1. Giới thiệu chương

              • 2.2. Phương pháp tích hợp RBAC vào BPM

              • 2.3. Tích hợp RBAC vào Activiti BPM

                • 2.3.1. Một số khái niệm

                  • 2.3.1.1. Data models và Eclipse EMF

                  • 2.3.1.2. Eclipse Plug-in

                  • 2.3.2. Mô hình hóa các chính sách truy nhập RBAC

                    • 2.3.2.1. Xây dựng mô hình dữ liệu RBAC sử dụng Eclipse EMF

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

Tài liệu liên quan