Tải bản đầy đủ - 0 (trang)
CHƯƠNG 3. CÀI ĐẶT VÀ THỰC NGHIỆM

CHƯƠNG 3. CÀI ĐẶT VÀ THỰC NGHIỆM

Tải bản đầy đủ - 0trang













Tạo dự án tên “TVTK_Project” mới : File > New > Others > Activiti

Project

Tạo Diagram tên “QuyTrinhDieuXe” : chuột phải thư mục diagram

chọn File > New > Others > Activiti Diagram

Giao diện mơ hình hóa quy trình nghiệp vụ bao gồm Editor, Palette và

Properties. Trong đó, Palette và Properties đã mở rộng thêm tab

“Security” cho việc định nghĩa các chính sách an ninh SoD và BoD.

Kéo thả các component trong Palette để mơ hình hóa quy trình điều xe.

Các thuộc tính của từng component phải được cung cấp đầy đủ, bao

gồm id, form,.. Sử dụng SeparationOfDuty và Security Flow để rằng

buộc phân quyền đối với trưởng phòng và người quản lý điều xe.



Hình 3.11: Quy trình điều xe trên Acitivi Designer





Một Form được sử dụng để mơ tả phiếu u cầu. Để thêm/sửa/xóa các

thuộc tính cho Form, nhấn chuột vào nút New/Edit/Delete. Form được

cài đặt tại Start Event cho phép bất kỳ người dùng vào bắt đầu quy

trình sẽ nhìn thấy Form và được u cầu điền thơng tin.



Hình 3.12: Khai báo các data objects của quy trình điều xe





Định nghĩa một exclusive gateway sau khi người dùng điền thông tin

vào Form. Nó sẽ kiểm tra chức vụ của người u cầu là “Nhân viên”

hay “Trưởng phòng”. Có hai đầu ra từ gateway, một nếu chức vụ là

“Nhân viên” thì yêu cầu phải được chuyển đến trưởng phòng; hai nếu

chức vụ đã là “Trưởng phòng” thì u cầu được chuyển trực tiếp đến

quản lý điều xe.



Hình 3.13: Cấu hình rẽ nhánh cho Gateway





Trường hợp chức vụ là nhân viên, yêu cầu sẽ được chuyển đến task

Manager Aproval. Task này được gán cho người dùng hoặc nhóm

người dùng có quyền thực hiện. Ngoài ra, task chỉ thực hiện đồng ý



hoặc từ chối yêu cầu nền cần thuộc tính bắt buộc requestResult kiểu

enum có hai giá trị true và false.





Để thiết lập Permission cho UserTask vào tab Security, chọn Action và

Role và ấn nút Add. Một Permission được định nghĩa bởi một Action

và một Role, một UserTask có thể chứa nhiều Permission.







Để rằng buộc người đã có quyền thực hiện task Manager Approval thì

khơng thể là người quyền thực hiện task Car Supervisor Approval,

SeparationOfDuty được sử dụng. SeparationOfDuty sử dụng các

SecurityFlow để xác định các task phải rằng buộc; sau đó, liệt kê tất cả

các Permission được định nghĩa trong các task; cuối cùng, lựa chọn các

Permission mà SeparationOfDuty sẽ thực hiện.



Hình 3.16: Cấu hình SeparationOfDuty









Nếu Manager đã đồng ý u cầu thì luồng sẽ chuyển đến Car

Supervisor Approval - một UserTask, được cấu hình tương tự với

Manager Approval.

Dựa vào quyết định của Manager và Car Supervisor mà quy trình sẽ tự

động gửi thông báo bằng mail cho những người liên quan sử dụng Mail

Task. Nếu yêu cầu được chấp nhận thì thông báo sẽ được gửi cho cả lái

xe và người u cầu về lịch trình. Còn nếu u cầu bị từ chối thì người

u cầu sẽ nhận được thơng báo về lý do bị yêu cầu bị từ chối.



Hình 3.18: Cấu hình MailTask

3.2. Thực thi và giám sát quy trình trên Activiti Explorer

Quy trình điều xe trên sẽ được triển khai trên Activiti Designer như sau:

















Đăng nhập hệ thống dưới vai trò Admin

Tạo các nhóm người dùng tương ứng với các vai trò trong quy trình:

Staff, Manager và Car Supervisor. Vào Manage > Groups > Create

Group.

Tạo người dùng và gán cho các nhóm người dùng: Vào Manage >

Users > Create User.

Triển khai quy trình : Manage > Deployments > Upload New và lựa

chọn tệp QuyTrinhDieuXe.bpmn20.xml đã được mơ hình hóa trong

Activti Designer. Sau đó, quy trình đã sẵn sàng được thực thi.

Thực thi quy trình : Bất kì người dùng nào trong tổ chức đăng nhập vào

hệ thống đều có quyền đều có khởi tạo riêng một instance của quy trình

cho yêu cầu của mình. Vào Process > Process definitions > chọn quy

trình > Start process, một Form xuất hiện, người dùng cần điền đầy đủ

thơng tin.



Hình 3.22: Biểu mẫu thơng tin u cầu





Phê duyệt u cầu: Từ thơng tin mà người yêu cầu xe cung cấp, hệ

thống sẽ kiểm tra trường Role, nếu Role là Staff thì yêu cầu sẽ được

chuyển cho người có vai trò Manager để phê duyệt. Người này đăng

nhập hệ thống, vào Tasks > Queued. Do task này được gán cho Group

nên chưa có một Assignee cụ thể nào được gán, vì vậy mọi thơng tin

trong task đều ẩn.







Gán người thực hiện quy trình: Khi nhấn Reassign, hệ thống sẽ bắt đầu

kiểm tra chính sách an ninh của người được gán cho Task. Ở đây,

Separation Of Duty được dùng để rằng buộc cho Manager và

CarSupervisior nên bất kì người dùng nào thuộc cả hai nhóm này đều

khơng có quyền thực hiện Task. Nếu user đăng nhập vi phạm:



Hình 3.24: Thơng báo vi phạm chính sách RBAC



Còn nếu khơng vi phạm thì người đăng nhập có thể gán lại task cho

người khác trong cùng nhóm. Một cửa sổ hiện lên danh sách người

dùng thuộc nhóm. Nếu người đăng nhập lại chọn một user vi phạm

Separation Of Duty thì thơng báo lỗi lại hiện ra, còn khơng thì Task sẽ

được gán cho user vừa được chọn. Khi user đó đăng nhập thì mọi thơng

tin trong task đều hiện lên và user có quyền thực hiện Task.





Gửi thơng báo cho các bên liên quan: thực thiện bởi MailTask, cấu hình

gửi mail được thiết lập trong Activiti Designer, kết quả nhận được là :



Hình 3.27: Mail thơng báo kết quả phê duyệt

Như vậy, quy trình đã được triển khai cơng, các chính sách an ninh đã

được kiểm tra trước khi gán cho người dùng.



KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

BPM là một công cụ giúp cho việc quản lý và vận hành doanh

nghiệp được hiệu quả hơn. Vấn đề an ninh là một trong các vấn đề quan

trọng cần phải được xem xét trong tất cả các pha của vòng đời BPM và việc

cài đặt chính sách an ninh vào BPM là thực sự cần thiết. Trong luận văn,

tác giả đã trình bày phương pháp tích hợp các chính sách truy nhập (cụ thể

là điều khiển truy nhập theo vai trò RBAC) vào pha mơ hình hóa của vòng

đời BPM bằng mở rộng ngôn ngữ BPMN 2.0 cho các yêu cầu an ninh. Ứng

dụng phương pháp để mở rộng công cụ Activiti BPM cho việc cài đặt các

chính sách an ninh. Tại pha mơ hình hóa của Activti, xây dựng metamodel

cho BPMN tích hợp RBAC và sinh ra cú pháp trừu tượng; sau đó, tại pha

thực thi quy trình, kiểm tra một số chính sách an ninh trước khi phân quyền

cho người sử dụng. Kết quả của luận văn đã được ứng dụng vào việc xây

dựng một số quy trình nghiệp vụ tại Trung tâm Tư vấn Thiết kế Mobifone.

Tuy nhiên, trong luận văn mới chỉ dừng lại ở bước tích hợp các

chính sách an ninh vào pha mơ hình hóa của BPM và tại pha thực thi, việc

kiểm tra tính thỏa mãn của các chính sách an ninh khi phân quyền cho

người dùng đang dừng lại ở các trường hợp đơn giản. Hệ thống lớn lên, các

chính sách an ninh ngày càng phức tạp thì việc kiểm tra, phát hiện việc vi

phạm các rằng buộc lại trở nên nan giải hơn. Ví dụ, trong trường hợp,

người dùng được gán nhiều quyền, các quyền lại được kế thừa lẫn nhau,…

làm sao để kiểm tra người dùng có quyền thực thi quy trình hay khơng. Để

giảm sự phức tạp của việc quản lý an ninh, cần phải sử dụng các công cụ hỗ

trợ việc kiểm tra tính đúng đắn, tính tồn vẹn của các yêu cầu an ninh trong

BPM. USE tool là một cơng cụ cho phép mơ hình hóa phần mềm và kiểm

tra tính chính xác của các mơ tả UML, USE rất đơn giản và hiệu quả cho

việc kiểm tra các chính sách an ninh. Vì vậy, hướng phát triển tiếp theo của

luận văn là sử dụng USE tool cho việc thực thi chính sách an ninh của

BPM. Hy vọng trong thời gian tới, tác giả có thể phát triển và hoàn thiện

nội dung này.



TÀI LIỆU THAM KHẢO

[1]http://www.bacs.vn/en/news/press/bpm-giai-phap-cong-nghe-khong-thethieu-cua-doanh-nghiep-367.html , truy nhập lần cuối vào ngày 20/30/2018

[2] Steven Kelly, Juha-Pekka Tolvanen, “Domain-Specific Modeling”

[3] American National Standards Institute Inc. Role Based Access Control,

ANSI-INCITS 359-2004, 2004.

[4] R. Sandhu, E. Coyne, H. Feinstein, C. Youman. Role-based access

control models, IEEE Computer, vol. 29, no. 2, pp. 38–47, Feb. 1996.

[5] Implementing Advanced RBAC Administration Functionality with

USE, Tanveer Mustafa, Karsten Sohr, Duc-Hanh Dang, Michael

Drouineaud, 2008

[6] Chu Thị Minh Huệ, Đặng Đức Hạnh, “Ngơn ngữ mơ hình chun biệt

miền cho mơ hình bảo mật RBAC”, 2011

[7] Marlon Dumas, “Business Process Management Course - Lecture 1:

Introduction to BPM” , 2014

[8] Alfonso RODRIGUEZ, Eduardo FERNANDEZ-MEDINA, Marlo

PIATTINI, “A BPMN Extension for the Modeling of Security Requirement

in Business Processes”, 2007

[9] Zakir Laliwala, Irshad Mansuri, Activiti 5.x Business Process

Management, 2014

[10] https://en.wikipedia.org/wiki/Activiti_(software), truy cập lần cuối

21/03/2018

[11] Achim D.Brucker, Isabelle Hang, Gero Luckemeyer, Raj Ruparel

“SecureBPMN: Modeling and Enforcing Access Control Requirements in

Business Processes”, 2012



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

CHƯƠNG 3. CÀI ĐẶT VÀ THỰC NGHIỆM

Tải bản đầy đủ ngay(0 tr)

×