Đánh giá chung về kiểm soát truy cập bằng cơ chế phân quyền trong

Một phần của tài liệu Nghiên cứu kiểm soát truy cập dựa trên phân vai và ứng dụng vào hệ thống quản lý nhân hộ khẩu việt nam luận văn ths công nghệ thông tin 60 48 01 04 pdf (Trang 52)

trong phân hệ dữ liệu nhân hộ khẩu hiện nay

Ưu điểm: Các phần mềm quản lý dữ liệu được sử dụng rộng rãi trên thị trường hiện nay đều dùng công nghệ RBAC trong cơ chế kiểm soát truy cập.

Khó khăn gặp phải:

-Phân vùng dữ liệu: Theo địa lý, cấp quản lý...

-Xác định quyền cho nhóm sử dụng, xác định nhóm cho user khi đối tượng cấp user có vai trò phức tạp liên quan đến nhiều vùng dữ liệu

-Dung hòa yêu cầu bảo mật cao và dễ dàng cho người sử dụng -Đảm bảo tính động của user khi vai trò của người dùng thay đổi 3.3. Thiết kế cơ sở dữ liệu

Trong phần này sẽ trình bày về thiết kế các bảng trong cơ sở dữ liệu của chức năng Quản trị hệ thống của hệ thống quản lý nhân hộ khẩu.

3.3.1. Một số khái niệm cơ bản 3.3.1.1. Nhóm chức năng 3.3.1.1. Nhóm chức năng

Là tên xác định công việc mà một nhóm người dùng có thể tác động vào một số thao tác cụ thể của hệ thống, hiện tại có một số nhóm cơ bản sau:

+ Nhóm quản trị: Chỉ rõ chức năng quản trị hệ thống

+ Nhóm Quận huyện: Là nhóm mà người dùng được thao tác vào CSDL với các chức năng được quy định tại mức Quận, huyện (giải quyết các vấn đề về nhân, hộ khẩu, tàng thư nhưng không giải quyết các vấn đề về tạm trú).

+ Nhóm phường, xã: Giải quyết các vấn đề về nhân, hộ khẩu, tạm trú nhưng không giải quyết các vấn đề về tàng thư.

+ Nhóm tàng thư: Chỉ thao tác trên công việc tạo lập hồ sơ về tàng thư không thao tác trên các vấn đề về giải quyết nhân, hộ khẩu.

3.3.1.2 Chức năng hay còn gọi là các chức năng hệ thống

Chỉ các tác động lên hộ khẩu, nhân khẩu của công dân (như tạo hộ khẩu, quản lý thường trú, cấp sổ tạm trú…)

Như vậy có thể thấy việc phân loại nhóm chức năng, các chức năng của hệ thống nhằm hướng tới việc quản lý người dùng trong việc truy nhập vào hệ thống quản lý nhân, hộ khẩu theo luật cư trú và theo quy trình nghiệp vụ đã định sẵn.

3.3.1.3. Bảng danh mục

Là các bảng được phân loại phù hợp với quy trình nghiệp vụ và quản trị hệ thống

+ Nhóm bảng danh mục cơ bản: Là các bảng mã sử dụng trong hệ thống quản lý nhân, hộ khẩu - hiện tại có 35 bảng danh mục cơ bản

+ Nhóm bảng danh mục hành chính: Là các bảng mã mô tả việc quản lý hành chính (tỉnh, huyện, xã, đơn vị, nhân viên…)

+ Nhóm bảng danh mục quy trình: Là các bảng mã phục vụ việc chuẩn hoá dữ liệu trong các quy trình xử lý, thụ lý, hoàn trả hồ sơ.

3.3.2. Mô hình tổng quát

Hình 3.1. Mô hình tổng quát hệ thống quản lý nhân hộ khẩu Quản trị hệ thống Cơ sở dữ liệu Các bảng dữ liệu Các bảng dữ liệu Các bảng danh mục Các bảng quy trình ….

Danh sách Nhân viên truy nhập

Các nhóm chức năng

(Quận, xã, tàng thư, Quản trị…)

Các Chức năng hệ thống Quản lý hộ khẩu Quản lý thường trú Quản lý tạm trú Quản lý tàng thư ….

3.3.3. Các bảng dữ liệu

Tên bảng SYS_FUNCTION

Mô tả bảng Danh mục các chức năng hệ thống (adsbygoogle = window.adsbygoogle || []).push({});

Thuộc tính của Bảng "SYS_FUNCTION" Tên thuộc

tính

Loại dữ liệu Mô tả No

Null

Khóa chính

Khóa phụ ChucNang_id VARCHAR2(16) Mã chức năng của hệ

thống

Yes Yes No Tên_chucNang VARCHAR2(32) Tên chức năng hệ

thống

No No No

Mo_ta NVARCHAR2(255) Mô tả, ghi chú No No No

Thoi_gian DATE Thời gian thêm mới, sửa đổi dữ liệu

No No No

Tên bảng SYS_GROUP

Mô tả bảng Danh mục nhóm người sử dụng trong hệ thống, luôn luôn có một nhóm người sử dụng mặc định là ADMINS và không thể xóa hoặc đổi mã nhóm người sử dụng này.

Thuộc tính của Bảng "SYS_GROUP"

Tên thuộc tính Loại dữ liệu Mô tả No Null

Khóa chính

Khóa phụ Nhom_id NVARCHAR2(8) Mã nhóm người sử

dụng.

Yes Yes No Ten_nhom NVARCHAR2(32) Tên nhóm người sử

dụng

No No No

Duong_dan_nhom NVARCHAR2(32) Đường dẫn đến ứng dụng của nhóm

Yes No No

Thuộc tính của Bảng "SYS_GROUP"

Tên thuộc tính Loại dữ liệu Mô tả No Null

Khóa chính

Khóa phụ

Thoi_gian DATE Lần thay đổi No No No (adsbygoogle = window.adsbygoogle || []).push({});

Tên bảng

SYS_USER Mô tả

bảng

Danh sách các người sử dụng được quyền đăng nhập vào hệ thống, một người sử dụng được gán quyền theo nhóm. Luôn luôn có một người sử dụng mặc định là ADMIN và không thể xóa hoặc đổi mã người sử dụng này.

Thuộc tính của Bảng "SYS_USER"

Tên thuộc tính Loại dữ liệu Mô tả No

Null

Khóa chính

Khóa phụ nguoiDung_id NVARCHAR2(20) Mã người sử dụng Yes Yes No Ma_nhanVien NVARCHAR2(5) Mã nhân viên (theo số

thứ tự)

Yes Yes Yes Nhom_id NVARCHAR2(8) Mã nhóm người sử

dụng.

No No Yes

Mat_khau NVARCHAR2(16) Mật khẩu của người sử dụng đã được mã hóa theo thuật toán riêng.

Yes No No

Mo_ta NVARCHAR2(255) Mô tả, ghi chú No No No

admin BOOLEAN Là System Admin có tất

cả các quyền

No No No

nguoiDungLap_id NVARCHAR2(16) User_id của người thiết lập ID này

No No No

KichHoat BOOLEAN user có được Kích hoạt không?

No No No

Tên bảng GROUP_FUNCTION

Mô tả bảng Chức năng hệ thống theo nhóm người sử dụng Thuộc tính của Bảng "GROUP_FUNCTION"

Tên thuộc tính

Loại dữ liệu Mô tả No Null

Khóa chính

Khóa phụ Nhom_id VARCHAR2(8) Mã nhóm người sử dụng. Yes Yes Yes ChucNang_id VARCHAR2(16) Mã chức năng của hệ thống Yes Yes Yes

Thoi_gian INTEGER Lần thay đổi No No No (adsbygoogle = window.adsbygoogle || []).push({});

Tên bảng LOGIN_HISTORY

Mô tả bảng Lưu lại các tham số của một user khi login vào hệ thống như máy tính sử dụng, thời gian vào và ra khỏi hệ thống, người sử dụng... Thuộc tính của Bảng "LOGIN_HISTORY"

Tên thuộc tính Loại dữ liệu Mô tả No

Null

Khóa chính

Khóa phụ nguoiDung_id VARCHAR2(20) Mã người sử dụng Yes Yes Yes ThoiGian_DangNhap TIMESTAMP Thời gian đăng nhập

hệ thống

No No No

ThoiwGian_DangXuat TIMESTAMP Thời gian đăng xuất hệ thống

No No No

DiaChi_ip VARCHAR2(20) IP khi login No No No

ThoiGian_Chamdut TIMESTAMP ngày giờ lúc bị hệ thống timeout

No No No

Kieu_TrinhDuyet NVARCHAR2(16) Loại trình duyệt sử dụng

No No No

Thoi_gian INTEGER No No No

Tên bảng NHAN_VIEN

Mô tả bảng Bảng chứa các thông tin về nhân viên sử dụng hệ thống. Khi một nhân viên thay đổi đơn vị và chức vụ thì phải tạo nhân viên mới,

đổi trạng thái của nhân viên cũ thành không sử dụng để các thông tin liên quan đến nhân viên trong các hồ sơ không bị ảnh hưởng.

Thuộc tính của Bảng "NHAN_VIEN" Tên thuộc

tính

Loại dữ liệu Mô tả No

Null

Khóa chính

Khóa phụ ma_donvi VARCHAR2(8) Mã đơn vị quản lý ==

ma_tinh + 99999 (5 số thứ tự), đây là bộ mã cần thiết lập ngay từ đấu cho tất cả các đơn vị tham gia vào QL cư trú.

Yes Yes Yes

ma_nhanvien VARCHAR2(5) Mã nhân viên (theo số thứ tự) Yes Yes No

ma_chucvu VARCHAR2(3) Mã chức vụ No No Yes

ten_nhanvien VARCHAR2(32) Tên nhân viên No No No ghichu NVARCHAR2(255) Ghi chú đặc biệt No No No (adsbygoogle = window.adsbygoogle || []).push({});

diachi NVARCHAR2(100) địa chỉ No No No

dienthoai VARCHAR2(20) Số điện thoại No No No

email VARCHAR2(32) địa chỉ email No No No

thoigian INTEGER Thời gian thêm mới, sửa đổi dữ liệu

No No No

Tên bảng DM_CHUCVU

Mô tả bảng Danh mục chức vụ

Thuộc tính của Bảng "DM_CHUCVU" Tên thuộc

tính

Loại dữ liệu Mô tả No

Null

Khóa chính

Khóa phụ

ma VARCHAR2(3) Mã chức vụ Yes Yes No

ten VARCHAR2(32) Tên chức vụ No No No

Thuộc tính của Bảng "DM_CHUCVU" Tên thuộc

tính

Loại dữ liệu Mô tả No

Null Khóa chính Khóa phụ thutu NUMBER(3) No No No thoigian DATE No No No DangNhap_id NVARCHAR2(20) No No No Tên bảng DM_DONVI

Mô tả bảng Danh mục cơ quan quản lý đăng ký hộ khẩu: Công an Tỉnh, PC64, Công an quận/huyện/thị xã, Công an phường/xã.

Thuộc tính của Bảng "DM_DONVI" Tên thuộc

tính

Loại dữ liệu Mô tả No

Null

Khóa chính

Khóa phụ ma_donvi VARCHAR2(8) Mã đơn vị quản lý ==

ma_tinh + 99999 (5 số thứ tự). đây là bộ mã cần thiết lập ngay từ đấu cho tất cả các đơn vị tham gia vào QL cư trú.

Yes Yes No

ma_dvi_captren VARCHAR2(8) Mã đơn vị cấp trên No No Yes ma_cap_dvi VARCHAR2(3) Mã cấp đơn vị == 0: Bộ; 1:

Tỉnh/TP; 2: Quận Huyện; 3: Phường xã (adsbygoogle = window.adsbygoogle || []).push({});

Yes No Yes

ma_tinh VARCHAR2(2) Mã tỉnh thành tương ứng với đơn vị, nếu đơn vị cấp tỉnh thì ma_huyen = NULL và ma_xa = NULL

Yes No Yes

ma_huyen VARCHAR2(3) Mã quận huyện tương ứng với đơn vị, nếu đơn vị cấp huyện thì ma_xa = NULL

Yes No Yes

Thuộc tính của Bảng "DM_DONVI" Tên thuộc

tính

Loại dữ liệu Mô tả No

Null Khóa chính Khóa phụ với đơn vị

ten VARCHAR2(80) Tên đơn vị No No No

ten_inra_dong1 VARCHAR2(80) Tên in ra trong báo cáo, dòng 1

No No No

ten_inra_dong2 VARCHAR2(80) Tên in ra trong báo cáo, dòng 2

No No No

dia_chi NVARCHAR2(100) Địa chỉ của đơn vị No No No dien_thoai VARCHAR2(20) Điện thoại của đơn vị No No No

fax VARCHAR2(20) Fax của đơn vị No No No

email VARCHAR2(32) Email của đơn vị nếu có No No No thu_truong NVARCHAR2(40) Họ tên thủ trưởng đơn vị No No No thoigian INTEGER Thời gian thêm mới, sửa đổi

dữ liệu

No No No

Tên bảng DM_CAP_DVI

Mô tả bảng Danh mục cấp đơn vị: Cấp trung ương, Cấp tỉnh, Cấp huyện, Cấp xã.

Thuộc tính của Bảng "DM_CAP_DVI" Tên thuộc

tính

Loại dữ liệu Mô tả No

Null Khóa chính Khóa phụ ma VARCHAR2(3) Mã cấp đơn vị == 0: Bộ; 1: Tỉnh/TP; 2: Quận Huyện; 3: Phường xã Yes Yes No

ten NVARCHAR2(30) Tên cấp đơn vị Yes No No

viet_tat NVARCHAR2(20) No No No

Thuộc tính của Bảng "DM_CAP_DVI" Tên thuộc

tính

Loại dữ liệu Mô tả No (adsbygoogle = window.adsbygoogle || []).push({});

Null Khóa chính Khóa phụ thoigian DATE No No No DangNhap_id NVARCHAR2(20) No No No

3.4. Cài đặt chương trình và thực nghiệm

3.4.1. Môi trường và công cụ cần thiết

Hệ điều hành: Windows 2008 Server

Windows XP Professional Windows 7 Professional

Hề quản trị cơ sở dữ liệu: Oracle 11G Standard/Enterprise

Công cụ lập trình: Microsoft Visual Studio.NET

3.4.2. Tổ chức khai thác chương trình

Sử dụng công nghệ web vào các ứng dụng tin học là một xu hướng cho các hệ thống quản lý hiện nay. Ưu điểm nổi bật đầu tiên của công nghệ web là khả năng tải tự động ứng dụng từ máy chủ. Ưu điểm này hơn hẳn mô hình client-server ở khả năng triển khai rộng. Tại Việt Nam hiện nay rất nhiều đơn vị đã ứng dụng hiệu quả công nghệ này, từ đó giảm bớt chi phí nhân công, đặc biệt là côn tác triển khai dự án, bảo trì hệ thống, cũng như thuận tiện trong việc điều hành và quản lý từ đó có các biện pháp quản lý hiệu quả nhanh chóng đưa ra các quyết định sáng suốt, phù hợp.

Hệ thống Web site Nhân - Hộ Khẩu được phát triển theo mô hình 3 lớp với các công nghệ tiên tiến: ASP.Net, ODP.Net, Oracle 11G, Web Service. Kiến trúc tổng thể của hệ thống được mô tả như sau:

Hình 3.2. Mô hình ba lớp

3.4.3. Mô hình triển khai hệ thống

Hệ thống có thể được triển khai như là một ứng dụng Intranet hoặc trên mạng Internet. Mô hình triển khai hệ thống được thể hiện như trong hình vẽ sau:

Hình 3.3. Mô hình triển khai hệ thống

Hệ thống được cài đặt trên một máy tính mạnh được sử dụng làm Web

Server. Thông qua mạng Intranet hoặc mạng Internet (tùy thuộc máy chủ Web

thông qua kết nối bằng trình duyệt Internet Explorer. Phía máy trạm không cần cài đặt thêm phần mềm. Đối với người quản trị hệ thống Web site Nhân hộ khẩu, họ có thể sử dụng máy tính được kết nối LAN với Web Server để làm các công việc quản trị thông qua các chức năng do hệ thống cung cấp và thông qua Remote Desktop của Window.

3.5. Kết quả của ứng dụng

Trong phần này chúng tôi sử dụng mô hình thực tế là thành phố Cần thơ [10] bao gồm các tên các đơn vị hành chính quận, huyện, xã…( ví dụ quận Ninh kiều, Cờ đỏ..), để Demo chương trình.

<username> = Tên người dùng <Password> = Mật khẩu người dùng

3.5.1. Giới thiệu các chức năng quản trị

3.5.1.1. Các chức năng cơ bản trong chức năng quản trị hệ thống

Gồm:

Quản trị hệ thống Quản trị người dùng Quản trị danh mục

Hình 3.4. Chức năng cơ bản của hệ thống

Các chưc năng cơ bản

Mục đích chức năng này là quản trị các bảng, trong hệ thống cho phù hợp với các nhóm chức năng . Chức năng phần này gồm:

Thông tin hệ thống Lịch sử truy cập Thông tin lỗi hệ thống

3.5.1.2. Quản trị người dùng

Việc quản trị người dùng gồm 3 chức năng chính: Chức năng của hệ thống (adsbygoogle = window.adsbygoogle || []).push({});

Nhóm chức năng hệ thống Tài khoản hệ thống

3.5.1.2.1 Chức năng của hệ thống

Hình 3.5. Các chức năng quản trị người dùng Các chức

năng quản trị người dùng

3.5.1.2.2. Nhóm chức năng hệ thống

Kết quả hiển thị nhóm chức năng hệ thống Kết quả hiển thi nhóm chức năng hệ thống

3.5.1.2.3. Tài khoản hệ thống

kết quả hiển thị tài khoản hệ thống

Chọn chức năng nhóm

3.5.1.3. Quản trị danh mục

Từ menu ngang “Quản trị danh mục” chọn menu thả xuống “Danh mục cơ bản”

Kết quả chức năng danh mục cơ bản

3.5.1.3.1. Danh mục hànhchính

Từ menu ngang “Quản trị danh mục” chọn menu thả xuống “Danh mục hành chính”

Hình 3.6. Các chưc năng quản trị danh mục Chức năng

danh mục cơ bản

Chức năng sửa nội dung bảng

3.5.1.3.1.1 Danh mục tỉnh

3.5.1.3.1.2. Danh mục huyện

Kết quả danh mục huyện

Chức năng sửa nội dung danh mục tỉnh

Chức năng sửa nội dung danh mục huyện

3.5.1.3.1.3. Danh mục xã

Kết quả danh mục xã

3.5.2. Các bước tạo tài khoản mới và phân quyền cho người dùng

Chọn cán bộ để xác định các quyền truy nhập hệ thống Nhấn “Thêm mới” để tạo một cán bộ mới

Thêm mới một cán bộ Thông tin bắt buộc

<Đơn vị>: Chỉ đơn vị cán bộ đó làm việc. Việc xác định đơn vị để gán quyền truy nhập hệ thống cho cán bộ ứng với Nhóm chức năng (Quận, huyện, xã..) và Chức năng (thao tác trên các tác vụ của hệ thống.

Kết quả sau khi khai báo cán bộ

Sau khi khai báo được cán bộ, tiếp theo tạo tài khoản cho cán bộ đó. Từ menu ngang Quản trị người dùng” chọn menu thả xuống “Tài khoản trong hệ thống” (adsbygoogle = window.adsbygoogle || []).push({});

Chọn “Thêm mới” để khai báo các quyền cho tài khoản Tạo Tài khoản

Khai báo các quyền cho nhân viên “Nguyễn Văn A” Mã truy cập “98765”

Nhóm nguười dùng “Quản trị” Mật khẩu “1234”

Kết quả sau khi xác định tài khoản cho nhân viên

Sau khi tạo được tài khoản cho nhân viên “Nguyên Văn A” với “Mã truy cập ABCD”, “Mật khẩu=123456”, “Nhóm chức năng = Quản trị”.

Giao diện truy nhập hệ thống dành cho nhân viên “Nguyễn Văn A” được biểu diễn dưới đây.

Ví dụ tạo tài khoản cho “Nguyên Văn B” làm việc tại nhóm “Tàng thư” - Kết quả tài khoản này chỉ được tác động lên chức năng tàng thư”

Truy nhập với tài khoản mới

Hình 3.7. Kết quả của quá trình phân quyền Thay đổi mật khẩu

Vào quyền truy nhập cao nhất, chọn “Tài khoản trong hệ thống”

Thay đổi mật khẩu được thực hiện bởi người quản trị

3.5.3. Quản trị nhóm chức năng hệ thống

Nhóm chức năng hệ thống chỉ ra tên nhóm mà tại đó các tài khoản có thể thao tác một số phần công việc quản quản lý nhân, hộ khẩu (Ví dụ: nhóm tàng thư, nhóm quận, huyện, phường xã, quản trị).

a. Tạo mới một nhóm chức năng hệ thống

Từ menu ngang “Quản trị người dùng”, chọn menu thả xuống “Nhóm chức năng hệ thống”

Danh sách các nhóm chức năng được biểu diễn sau đây: Chọn “Nhóm chức năng hệ thống”

Chọn “thêm mới” để tạo một chức năng mới

Ví dụ: Thêm nhóm mới có mã “T01” với mô tả “Theo yêu cầu nghiệp vụ”

Kết quả sau khi tạo nhóm mới

Có thể sửa lại đặc trưng của nhóm này

Một phần của tài liệu Nghiên cứu kiểm soát truy cập dựa trên phân vai và ứng dụng vào hệ thống quản lý nhân hộ khẩu việt nam luận văn ths công nghệ thông tin 60 48 01 04 pdf (Trang 52)