CƠ SỞ LÝ THUYẾT
Quy trình quản lý văn bản đi tại Trung tâm CNTT VNPT-IT
2.1.1 Mô hình quản lý văn bản
Quy trình quản lý văn bản đi tại Trung tâm CNTT VNPT-IT đóng vai trò quan trọng trong hệ thống quản lý văn bản, giúp giải quyết kịp thời, đầy đủ và chính xác các vấn đề, đồng thời bảo mật thông tin cần thiết Quá trình này bao gồm nhiều bước từ soạn thảo đến ban hành, với sự tham gia của các thành phần như văn thư, lãnh đạo phòng và lãnh đạo trung tâm Mỗi giai đoạn xử lý và chuyển tiếp văn bản được cụ thể hóa theo nhiệm vụ của từng thực thể, đảm bảo hiệu quả trong công việc và thúc đẩy sản xuất kinh doanh của toàn đơn vị.
1 Nghiên cứu soạn thảo văn bản
Xác định mục đích soạn thảo, phạm vi điều chỉnh, đối tượng áp dụng và lựa chọn tên loại VB
Chuyển hồ sơ trình ký LĐP
Hoàn thiện hồ sơ trình ký gồm:
- Các VB giấy tờ có liên quan
Hoàn thiện bản thảo VB Lấy ý kiến của các đơn vị, cá nhân liên quan (nếu có)
Dự thảo VB Xây dựng đề cương; Thông qua đề cương (nếu có)
Người soạn thảo văn bản
- Nội dung bản thảo văn bản
- Thể thức, kỹ thuật trình bày bản thảo văn bản
- Ký nháy/ký tắt bản thảo văn bản
3 Kiểm tra và trình ký:
- Thể thức, kỹ thuật trình bày bản thảo văn bản
4 Xét duyệt, ký văn bản:
- Bản thảo văn bản đã được ký nháy/ký tắt
Nhân bản và đóng dấu Trung tâm cho văn bản giấy
- Bản lưu tại văn thư cơ quan
- Bản lưu và hồ sơ trình ký lưu tại đơn vị soạn thảo
Theo dõi việc chuyển phát
Phát hành và chuyển phát văn bản theo các hình thức (theo đối tượng nhận văn bản)
Văn thư chuyển văn bản
Văn thư chuyển văn bản
Văn thư chuyển văn bản
Văn thư chuyển văn bản
Hình 2.1: Quy trình xử lý văn bản đi
- Bước 1: Nghiên cứu, soạn thảo văn bản
Người được giao soạn thảo văn bản cần dựa vào tính chất và nội dung của văn bản để hoàn thành dự thảo và hồ sơ trình ký kèm theo Cần đề xuất số lượng bản gốc, bản lưu, cũng như mức độ khẩn, mật và đóng dấu giáp lai nếu cần thiết Đối với văn bản giấy, bản thảo cần được in ra và trình lãnh đạo các cấp ký duyệt theo quy định.
Lãnh đạo đơn vị có trách nhiệm tiếp nhận, kiểm tra và duyệt văn bản trình ký, bao gồm việc xem xét nội dung dự thảo và các hồ sơ kèm theo Họ cần đảm bảo văn bản đáp ứng các yêu cầu về thể thức và kỹ thuật trình bày Đơn vị soạn thảo phải chịu trách nhiệm về cả nội dung lẫn hình thức của văn bản Nếu bản thảo đạt yêu cầu về nội dung, quá trình duyệt sẽ tiếp tục.
➢ LĐP ký tắt/ký nháy vào cuối dòng của dòng cuối cùng phần nội dung của mỗi trang văn bản
Để đảm bảo quy trình soạn thảo văn bản được thực hiện hiệu quả, cần chuyển trả tài liệu cho người soạn thảo hoặc văn thư của đơn vị để gửi đến bộ phận văn thư Trong trường hợp phát hiện sai sót, lãnh đạo đơn vị sẽ trực tiếp sửa chữa trên bản dự thảo văn bản, sau đó chuyển trả lại cho người soạn thảo để kiểm tra và hoàn thiện theo yêu cầu.
Bước 3: Văn thư Trung tâm sẽ tiếp nhận bản thảo văn bản và hồ sơ trình ký từ đơn vị soạn thảo dưới dạng bản giấy Sau đó, cần kiểm tra thể thức và kỹ thuật trình bày của bản thảo văn bản trước khi tiến hành ký.
Bản thảo văn bản phải tuân thủ đúng thể thức và kỹ thuật trình bày theo quy định trước khi gửi tới lãnh đạo trực tiếp hoặc người có thẩm quyền để ký duyệt.
Bản thảo văn bản có sai sót và không tuân thủ đúng thể thức, kỹ thuật trình bày theo quy định sẽ bị bộ phận văn thư Trung tâm trả lại hoặc từ chối tiếp nhận, do đó không được trình lên lãnh đạo hoặc người có thẩm quyền để ký duyệt.
- Bước 4: Lãnh đạo Trung tâm/Người có thẩm quyền ký duyệt VB
Tiếp nhận bản thảo văn bản và hồ sơ trình ký, xem xét nội dung để ký duyệt ban hành nếu đạt yêu cầu Nếu bản thảo chưa đạt yêu cầu, cần cho ý kiến sửa chữa, bổ sung trên bản giấy và trả lại cho văn thư Trung tâm/đơn vị để chỉnh sửa.
Bước 5 trong quy trình phát hành và lưu trữ văn bản (VB) do bộ phận Văn thư Trung tâm thực hiện bao gồm các hoạt động quan trọng như cấp số và thời gian ban hành văn bản, nhân bản và đóng dấu Trung tâm, quét văn bản thành file PDF Sau khi hoàn tất, văn bản sẽ được chuyển phát trực tiếp, qua bưu điện, mạng, fax hoặc chuyển phát nhanh đến các đơn vị nhận.
Số lượng văn bản hàng tháng mà đơn vị xử lý là rất lớn, việc quản lý văn bản truyền thống như hiện tại có một số hạn chế:
Thời gian xử lý văn bản có thể kéo dài do nhiều yếu tố ngoại cảnh như địa lý, thời tiết, dịch bệnh và giao thông Ngoài ra, quy trình văn thư cũng phải trải qua nhiều bước khác nhau để hoàn tất.
- Phát sinh chi phí khá nhiều cho việc in ấn, chuyển phát, lưu trữ các văn bản
- Khó khăn trong việc tìm kiếm, kiểm tra trạng thái xử lý văn bản
- Gặp rủi ro như bị ăn cắp thông tin, bị làm giả thông tin
- Bộ máy hành chính cồng kềnh do phát sinh các công việc thực hiện thủ công nhiều: in ấn, luân chuyển, lưu trữ, trình ký…
Trong bối cảnh công nghệ 4.0 đang bùng nổ, việc vận hành hành chính công vẫn còn thủ công và chưa được số hóa sẽ ảnh hưởng tiêu cực đến uy tín và hình ảnh của đơn vị Sự chậm trễ trong việc áp dụng công nghệ hiện đại có thể làm giảm hiệu quả hoạt động và gây mất lòng tin từ phía người dân.
Lý thuyết về mã hóa, ký số
Mã hóa thông tin là quá trình chuyển đổi dữ liệu thành một dạng khác, mang ý nghĩa khác biệt so với dữ liệu gốc Mục tiêu của việc mã hóa này là chỉ cho phép một nhóm người nhất định có khả năng truy cập và đọc hiểu dữ liệu ban đầu.
8 qua việc giải mã dữ liệu sau khi biến đổi [7] Có thể mô tả quy trình thực hiện mã hóa dữ liệu và giải mã dữ liệu như sau [22]:
Hình 2.2: Quy trình mã hóa dữ liệu
Sau đây là một số khái niệm và kí hiệu liên quan về vấn đề mã hóa dữ liệu :
- E (Encryption - Mã hóa): Là quá trình chuyển đổi dữ liệu gốc thành dữ liệu được mã hóa sao người khác không thể đọc hiểu
- D (Decryption - Giải mã): Là quá trình ngược lại của mã hóa, biến đổi dữ liệu đã được mã hóa thành dạng gốc ban đầu
- M (Message - Thông điệp), bản gốc hay bản rõ (Plaintext): Là tệp dữ liệu chưa được mã hóa hoặc đã được giải mã
- C (Ciphertext - Bản mã): Tệp dữ liệu đã được mã hóa
- K (Key - Khóa): Là dãy các bít 0, 1 thường được đưa ra dạng xâu ký tự, số
- KE: Là khóa dùng để mã hóa
- KD: Là khóa dùng để giải mã
Theo quy ước, khi mã hóa thì C = E(M) và khi giải mã thì M = D(C) D(E(M))
Theo phương pháp truyền thống, hệ thống mã hóa cổ điển sử dụng cùng một khóa cho cả mã hóa và giải mã, đòi hỏi khóa phải được giữ bí mật tuyệt đối Ngược lại, phương pháp mã hóa bất đối xứng, hay còn gọi là hệ thống hai khóa, sử dụng một khóa công khai để mã hóa và một khóa riêng để giải mã, mang lại sự linh hoạt và bảo mật cao hơn.
Các khóa công khai và riêng tư là hai loại khóa khác nhau, tạo thành một cặp chuyển đổi ngược nhau mà không khóa nào có thể suy ra từ khóa kia Quy trình mã hóa khóa công khai bao gồm các bước cơ bản như sau:
- Mỗi một hệ thống đầu cuối tạo một cặp khóa dùng cho quá trình mã hóa và giải mã mà hệ thống đó sẽ nhận
Mỗi hệ thống mã hóa đều có hai loại khóa: khóa công khai để công bố và khóa bí mật (hay khóa riêng) cần được bảo mật an toàn.
- Nếu Bên gửi muốn gửi thông điệp cho Bên nhận, Bên gửi mã hóa thông điệp sử dụng khóa công khai của Bên nhận
- Khi Bên nhận nhận thông điệp, Bên nhận giải mã bằng khóa riêng của Bên nhận b Mã hóa đối xứng
Mã hóa đối xứng, hay còn gọi là mã hóa khóa bí mật, là phương pháp mà hai bên tham gia truyền thông sử dụng chung một khóa bí mật để mã hóa và giải mã thông điệp Điều này có nghĩa là cùng một khóa được sử dụng cho cả hai quá trình, tạo nên tính đối xứng trong việc bảo mật thông tin.
- Mô hình hệ mã hóa đối xứng [22]
Hình 2.3: Hệ mã hóa đối xứng
Mức độ bảo mật của mã hóa đối xứng phụ thuộc vào độ an toàn của khóa bí mật K được trao đổi giữa các bên tham gia truyền thông Để đảm bảo tính bảo mật, việc trao đổi khóa cần phải hoàn toàn bí mật Các phương pháp tấn công phổ biến đối với hệ mã hóa này bao gồm phân tích mã hóa và tìm kiếm vét cạn.
Quá trình 10 hóa là nỗ lực nhằm phát hiện khóa hoặc khôi phục bản tin gốc Tìm kiếm vét cạn là phương pháp tấn công toàn bộ khóa, dựa trên khả năng tính toán hiện có.
Ngày nay, với sự phát triển mạnh mẽ của tốc độ tính toán và xử lý, việc mã hóa sử dụng thuật toán mã hóa khóa công khai có thể trở nên không an toàn Điều này dẫn đến sự cần thiết phải xem xét và áp dụng các phương pháp mã hóa bất đối xứng để bảo đảm an toàn thông tin.
Mã hóa bất đối xứng, hay còn gọi là mã hóa khóa công khai, được giới thiệu lần đầu vào năm 1976 bởi các nhà khoa học Diffie và Hellman Sự ra đời của hệ thống mã hóa này đã đánh dấu một bước ngoặt quan trọng trong lĩnh vực mã hóa, mở ra nhiều ứng dụng và thành tựu đáng kể trong công nghệ bảo mật thông tin.
Thuật toán mã hóa khóa công khai sử dụng các hàm toán học thay vì các phép tính bit thông thường Hệ thống này mang tính bất đối xứng, nghĩa là nó sử dụng hai khóa khác nhau: một khóa để mã hóa và một khóa để giải mã Điều này trái ngược với phương pháp mã hóa đối xứng truyền thống, nơi chỉ cần một khóa duy nhất cho cả hai quá trình mã hóa và giải mã.
- Việc sử dụng hai khóa được ứng dụng nhiều trong các lĩnh vực như về độ tin cậy, phân phối khóa hay chứng thực
- Mô hình hệ mã hóa bất đối xứng [22]
Hình 2.4: Hệ mã bất đối xứng
Mã hóa khóa công khai là một công nghệ quan trọng, được ứng dụng rộng rãi trong việc đảm bảo độ tin cậy, phân phối khóa và chứng thực văn bản So với mã hóa đối xứng, mã hóa bất đối xứng mang lại mức độ an toàn cao hơn, vì các bên tấn công không thể sử dụng phân tích mã hóa hay tấn công vét cạn để xâm nhập vào hệ thống mã hóa công khai.
11 rất phức tạp về mặt tính toán khi biết khóa công khai và bản tin ciphertext để tìm được plaintext
Hệ mã hóa khóa công khai đặc trưng bởi việc sử dụng hai khóa: một khóa công khai để mã hóa và một khóa riêng để giải mã Bên gửi sử dụng khóa công khai của bên nhận để thực hiện mã hóa, cho phép bất kỳ ai cũng có thể mã hóa thông tin Tuy nhiên, chỉ có người nhận thực sự mới có khả năng giải mã thông điệp, vì họ là người duy nhất sở hữu khóa riêng Điều này ngăn chặn các bên thứ ba không có khóa riêng giả mạo tin nhắn.
- Các bước thực hiện mã hóa theo hệ mã hóa khóa công khai:
1) Mỗi người dùng sinh một cặp khóa sử dụng để mã hóa và giải mã bản tin
2) Người dùng đăng ký 1 trong 2 khóa là công khai hoặc chứa trong tệp để người khác có thể truy nhập được Đó là khóa công khai
3) Nếu người dùng A muốn gửi bản tin tới người dùng B, thì A mã hóa bản tin sử dụng khóa công khai của B
4) Khi B nhận được bản tin, B sẽ thực hiện giải mã nó sử dụng khóa riêng Không ai có thể giải mã được bản tin đó vì chỉ có B biết, đó là khóa riêng của B Với cách tiếp cận này, các bên tham gia truyền thông đều có thể truy nhập tới khóa công khai, còn khóa riêng được sinh cục bộ bởi mỗi bên và do đó không bao giờ bị phân tán để kẻ thứ ba có thể biết Miễn là người dùng bảo vệ tốt khóa riêng của mình thì bảo mật truyền thông được đảm bảo
Hệ mã hóa khóa công khai yêu cầu hai bên tham gia truyền thông, A và B, đảm bảo tính bảo mật trong quá trình gửi tin nhắn A cần sử dụng khóa công khai của B để mã hóa thông tin, đảm bảo chỉ B mới có thể giải mã bằng khóa riêng của mình Điều này giúp bảo vệ dữ liệu khỏi sự truy cập trái phép và đảm bảo rằng thông tin được truyền đạt một cách an toàn.
1) Dễ dàng về mặt tính toán để bên B có thể sinh ra cặp khóa public/private Khóa công khai là KPU và khóa riêng là KPR
2) Dễ dàng cho bên gửi A biết được khóa công khai và bản tin cần mã hóa
M để sinh ra ciphertext tương ứng
3) Dễ dàng cho bên nhận B thực hiện giải mã ciphertext sử dụng khóa riêng
KPR để phục hồi lại bản tin gốc
4) Việc tính toán của bên thứ 3, từ khóa công khai KPU để tìm được KPR là điều không thể
5) Việc tính toán của bên thứ 3, từ khóa công khai KPU và ciphertext C để tìm được bản tin gốc M là điều không thể
6) Một trong hai khóa được dùng để mã hóa thì khóa còn lại được dùng để giải mã
M = DKpr[EKpu(M)] = DKpu[EKpr(M)] d Thuật toán RSA (Rivest Shamir Aldeman)
Thuật toán RSA, được phát triển vào năm 1977 bởi Ron Rivest, Adi Shamir và Len Adleman, là một trong những thuật toán khóa công khai đầu tiên RSA cho phép mã hóa và giải mã dữ liệu với độ dài khóa linh hoạt, trong đó việc sử dụng khóa dài sẽ nâng cao mức độ an toàn nhưng đồng thời làm tăng thời gian tính toán Đây là một khối mã hóa (block cipher) mà trong đó cả plaintext và ciphertext đều là các số nguyên trong khoảng từ 0 đến (n-1), với n được xác định.
Khối plaintext M và khối ciphertext C
MÔ HÌNH ĐỀ XUẤT KÝ SỐ SIM ỨNG DỤNG TRONG QUẢN LÝ VĂN BẢN
Mô hình đề xuất
Để đáp ứng nhu cầu quản lý văn bản hành chính và cải thiện tình hình chữ ký số tại Việt Nam, đặc biệt là tại Trung tâm CNTT VNPT-IT, cần thiết phải xây dựng một webportal quản lý văn bản tập trung Webportal này sẽ tích hợp công nghệ chữ ký số nhằm tối ưu hóa quy trình ký kết các văn bản.
Webportal quản lý văn bản đi tập trung giúp tối ưu hóa quy trình quản lý văn bản hành chính, đồng thời tích hợp công nghệ chữ ký số để nâng cao tính bảo mật và hiệu quả trong việc xử lý tài liệu.
- Quản lý, lưu trữ tập trung các văn bản hành chính
- Rút ngắn thời gian xử lý và phát hành văn bản để các chính sách được triển khai áp dụng phục vụ phát triển kinh doanh của đơn vị
- Tiết kiệm thời gian, công sức chi phí do việc in ấn, chuyển phát, lưu trữ
- Có thể thực hiện xử lý văn bản ở mọi nơi, thao tác đơn giản qua trình duyệt Web
- Thể hiện sự chuyên nghiệp, theo kịp xu hướng công nghệ của một công ty trong công cuộc số hóa
Để đảm bảo tính bảo mật cho hệ thống, cần xác định rõ các vùng ứng dụng công khai trên internet và các vùng ứng dụng nằm trong mạng nội bộ, được bảo vệ bởi các lớp tường lửa của Trung tâm CNTT VNPT-IT.
Để triển khai chương trình trên đa nền tảng như web app và mobile app, mô hình thiết kế cần được công khai trên internet để các ứng dụng di động có thể truy cập dữ liệu Để đảm bảo an toàn dữ liệu, hệ thống sẽ được chia thành hai vùng: vùng có kết nối internet và vùng nội bộ không kết nối internet Mô hình đề xuất cho hệ thống được thể hiện trong hình 3.1.
Người dùng ký số qua app Mobile hoặc qua ứng dụng web
Hình 3.1: Mô hình đề xuất cho hệ thống
Mô hình chi tiết về SIM KPI
Chữ ký trên di động có thể áp dụng cho tất cả các ứng dụng, không chỉ giới hạn ở các ứng dụng di động Thiết bị di động hoạt động như một công cụ ký, tương tự như bút điện tử dùng để ký số Việc ký số thông qua ứng dụng trên mạng di động và các kênh điện tử cần có sự cho phép từ người dùng.
Hình 3.2: Thiết bị di động trở thành công cụ ký số [9]
Trong triển khai dựa trên SIM PKI, việc tạo chữ ký đạt được bằng cách sử dụng bộ xử lý mã hóa trên thẻ SIM
Hình 3.3: Xử lý mã hóa ký số trên thẻ SIM [9]
Yêu cầu ký số trên thiết bị di động kích hoạt ứng dụng "ký" trên thẻ SIM, cho phép hiển thị văn bản giao dịch và yêu cầu người dùng nhập mã PIN ký tên Việc nhập mã PIN chính xác sẽ bắt đầu quá trình tạo chữ ký di động trong thẻ SIM và truyền chữ ký đến dịch vụ chữ ký di động Khi nhập mã PIN đúng, người dùng xác nhận ý định của mình để tiến hành giao dịch hiển thị trên màn hình di động.
Nhà cung cấp dịch vụ
Bộ phận chứng thực Bộ phận xác nhận
Bước 1: Người dùng gửi MSSP yêu cầu ký số
Bước 2: Chuyển tiếp thông tin về CTS và tài liệu cần ký
Bước 3: Yêu cầu xác thực CTS
Bước 4: Gửi kết quả xác thực CTS
Bước 5: Gửi yêu cầu ký số đến SIM PKI
Bước 6: Gửi yêu cầu ký số đến SIM PKI
Bước 7: Gửi kết quả ký
Bước 9: Gửi kết quả ký Bước 10: Hiển thị bản thể hiện cho người dùng xem
Hình 3.4: Quá trình ký SIM PKI 3.2.2 Kiến trúc sim PKI
Thẻ SIM: Thiết bị tạo chữ ký di động (Mobile SCD):[9]
Hình 3.5 Kiến trúc tổng thể
PKI SIM sử dụng hệ điều hành với kiến trúc 3 lớp:
- Lớp điều hành: xây dựng theo Java Framework
Lớp phần cứng được phát triển độc lập, hỗ trợ các thuật toán mã hóa 3DES, AES và RSA cho kiến trúc thượng tầng Nó có khả năng tương thích với mọi loại chip trên toàn thế giới, bao gồm cả những chip sản xuất tại Việt Nam trong tương lai.
- Lớp ứng dụng : phát triển mở sẵn sàng cho các loại ứng dụng thẻ thông minh trên lĩnh vực chữ ký số
SIM PKI phát triển dựa trên thư viện RSA được cứng hóa trong chip có chứng chỉ CC EAL5+, như chip của Infineon và SAM SUNG PKI SIM Applet sử dụng thuật toán mã hóa RSA với cặp khóa công khai và bí mật, cho phép thực hiện mã hóa, giải mã, ký điện tử và xác thực ngay bên trong chip Khóa bí mật được lưu trữ an toàn trong chip như một hộp đen tuyệt đối PKI SIM Applet kết hợp với thẻ SIM để tạo ra PKI SIM, sử dụng với các thiết bị như Handset hoặc USB 3G/4G.
- Module sinh khóa: cặp khóa bí mật và khóa công khai được sinh ngay trong thẻ
- Module lưu khóa: lưu trữ khóa bí mật bên trong thẻ để giải mã hoặc ký điện tử
- Module mã hóa và giải mã: mã hóa bằng khóa công khai và giải mã bằng khóa bí mật
- Module ký điện tử: ký chuỗi dữ liệu thành một đoạn dữ liệu gửi kèm cùng với thông tin
- Module xác thực: xác thực chữ ký và dữ liệu được truyền vào
Nhà cung cấp ứng dụng (AP):
Nhà cung cấp ứng dụng có trách nhiệm đảm bảo rằng ứng dụng an toàn và đáng tin cậy, thúc đẩy việc sử dụng chữ ký điện tử AP cam kết rằng dữ liệu cần ký phải chính xác theo yêu cầu của người sử dụng, đồng thời áp dụng các biện pháp bảo mật cần thiết để bảo vệ thông tin.
Giao tiếp giữa MSSP và các AP của đối tác, cũng như hệ thống nghiệp vụ của nhà cung cấp dịch vụ khác, được bảo mật thông qua giao thức HTTPS với tính năng mã hóa SSL.
Mỗi AP được cấp một mã định danh và chứng thư số để mã hóa dữ liệu khi giao tiếp với MSSP Giao tiếp giữa AP và MSSP được xác thực mạnh mẽ thông qua chứng thư số Để sử dụng dịch vụ, AP cần ký số lên yêu cầu trước khi tiến hành.
Khi nhận được yêu cầu từ AP, MSSP sẽ tiến hành xác thực chữ ký để xác định danh tính của AP Nếu chữ ký được xác nhận hợp lệ, MSSP sẽ xử lý yêu cầu và trả lại kết quả cho AP.
AP Ngược lại, MSSP sẽ bỏ qua yêu cầu của AP
Hệ thống cung cấp dịch vụ ký (MSSP)
MSSP: Máy chủ cung cấp các dịch vụ ký số và xác thực trên di động thực hiện các chức năng chính sau:
Quản lý và cấp phép truy cập cho các hệ thống nghiệp vụ của các nhà cung cấp dịch vụ là yếu tố quan trọng để đảm bảo việc thực hiện các yêu cầu nghiệp vụ một cách hiệu quả.
Trung tâm chung chuyển thực hiện yêu cầu cấp phát chứng thư số thông qua hệ thống RA, đồng thời yêu cầu ký điện tử giữa AP và hạ tầng mạng của điện thoại người dùng Quá trình này cũng bao gồm việc xác thực chữ ký số với hệ thống CORE-CA của CA công cộng.
MSSP đảm bảo rằng người dùng chỉ thấy những thông tin mà họ đã ký, đồng thời tăng cường bảo mật hệ thống cho khách hàng và đối tác Dịch vụ này giúp ngăn ngừa và phát hiện các truy cập trái phép vào cơ sở dữ liệu, cũng như theo dõi và xử lý các điểm yếu có nguy cơ bị tấn công.
- Ghi lịch sử giao dịch, lưu và báo cáo các thông tin về truy nhập hệ thống để phục vụ kiểm tra, giám sát hệ thống
3.2.3 Quy trình ký sim PKI
Quy trình ký điện tử với chứng thư số trên SIM PKI bao gồm các bước thực hiện trên hệ thống Để thực hiện, người dùng cần có SIM PKI đã kết nối với chứng thư số đang hoạt động Ngoài ra, người dùng phải đăng ký dịch vụ chữ ký số di động với nhà cung cấp dịch vụ AP, trong khi các AP cũng cần đăng ký kết nối với dịch vụ chữ ký số của CA.
Tham gia vào quy trình có các tác nhân: Người dùng
Người dùng Phần mềm ứng dụng Mobile Signature Service Provider(MSSP)
SIMPKI Gửi yêu cầu ký số
Gửi dữ liệu cần ký số theo định dạng của MSSP
Gửi dữ liệu cần ký số theo định dạng của SIM PKI
Nhập mã PIN trên điện thoại Chữ ký số
Gắn chữ ký số và thông điệp dữ liệu File thể hiện cho người dùng
Hình 3.5: Quy trình nghiệp vụ ký điện tử
- Bước 1: Người dùng gửi yêu cầu ký số thông qua giao diện ứng dụng như: website trực tuyến, ứng dụng mobi…
Đối với các giao dịch điện tử yêu cầu chữ ký trực tiếp, AP sẽ chuyển toàn bộ nội dung cho MSSP Nếu dữ liệu là văn bản dài hoặc cần ký trên file, AP cần chuyển đổi thành mã băm để giảm kích thước file và tăng cường bảo mật thông tin cho nội dung ký số.
- Bước 3: Máy chủ cung cấp dịch vụ - AP, chuẩn bị dữ liệu theo định dạng chuẩn để gửi dữ liệu yêu cầu ký tới MSSP
Dữ liệu cần ký sẽ được đóng gói và gửi đến điện thoại của người sử dụng, đảm bảo rằng đường truyền được bảo mật theo tiêu chuẩn viễn thông.
Bước 5: Thông tin cần ký hoặc dữ liệu mô tả sẽ được hiển thị trên SIM cho người dùng, đảm bảo tuân thủ nguyên tắc "Ký trên những gì bạn thấy" Sau đó, màn hình sẽ yêu cầu người dùng nhập mã PIN để xác nhận việc ký.
- Bước 6: Dữ liệu đã ký được đóng gói và gửi trở lại MSSP Dữ liệu được đảm bảo đường truyền được bảo mật theo chuẩn viễn thông
- Bước 7: MSSP gửi về ứng dụng dữ liệu đã ký
PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
Các tác nhân
Hệ thống gồm các tác nhân là nhân viên, lãnh đạo, văn thư và quản lý hệ thống
- Quản trị hệ thống: Quản trị các chức năng quản trị, phân quyền người dùng
- Lãnh đạo: Xử lý văn bản theo vai trò được phân công
- Nhân viên: Xử lý dữ liệu theo vai trò, nhiệm vụ được phân công
- Văn thư: Quản lý các văn bản đi của đơn vị.
Các chức năng chính của hệ thống
Hệ thống gồm các chức năng chính:
- Đăng nhập bảo mật 3 lớp: chức năng này nhằm mục đích xác thực người dùng truy cập sử dụng hệ thống
Quản lý luồng xử lý văn bản giúp quản trị hệ thống thực hiện các công việc liên quan đến việc quản lý cây từ điển luồng xử lý cho các dịch vụ, bao gồm các chức năng thêm, sửa, xóa và gán luồng cho các dịch vụ.
Quản lý văn bản cho phép người dùng thực hiện các công việc từ việc soạn thảo đến ký kết văn bản Nếu văn bản chưa đạt yêu cầu ký, người dùng có thể từ chối để nhân viên chỉnh sửa lại.
Quản lý dịch vụ cho phép quản trị hệ thống thực hiện các thao tác liên quan đến thông tin dịch vụ như thêm, sửa và xóa dịch vụ Hệ thống cũng hỗ trợ gán luồng xử lý văn bản cho từng dịch vụ, giúp tối ưu hóa quy trình làm việc.
Quản lý người dùng là chức năng quan trọng cho phép quản trị hệ thống thực hiện các thao tác như thêm, sửa, xóa, và khóa tài khoản người dùng Ngoài ra, hệ thống cũng hỗ trợ phân quyền người dùng dựa trên các chức năng được ủy quyền, giúp tối ưu hóa quản lý và bảo mật thông tin.
Biểu đồ Usecase tổng quan
Quản lý luồng xử lý văn bản
Ký số văn bản với SIM KPI
Từ chối ký văn bản
Biểu đồ phân rã chức năng
Người dùng có quyền quản lý hệ thống sẽ thực hiện các chức năng như thêm, sửa, xóa và khóa tài khoản người dùng, đồng thời phân quyền theo chức năng được ủy quyền trong hệ thống.
Sửa thông tin người dùng
Hình 4.2: Usecase quản lý người dùng 4.4.2 Quản lý luồng xử lý văn bản
Người dùng có quyền quản lý hệ thống để thực hiện các thao tác liên quan đến quản lý cây từ điển luồng xử lý, bao gồm các chức năng thêm, sửa, xóa và gán luồng cho các dịch vụ.
Gán luồng vào dịch vụ xử lý
Quản lý luồng xử lý văn bản
Hình 4.3: Usecase quản lý luồng xử lý văn bản 4.4.3 Quản lý văn bản
Người dùng có thể thực hiện các công việc từ soạn thảo đến ký các văn bản Nếu văn bản chưa đạt yêu cầu ký, người dùng có quyền từ chối để nhân viên chỉnh sửa lại.
Tải văn bản về máy cá nhân Nhân viên
Hình 4.4: Usecase quản lý văn bản
Người dùng có quyền quản lý hệ thống để thực hiện các tác vụ liên quan đến thông tin dịch vụ, bao gồm thêm, sửa và xóa dịch vụ Hệ thống cũng cho phép gán luồng xử lý văn bản cho từng dịch vụ để nâng cao hiệu quả quản lý.
Map luồng xử lý văn bản
Hình 4.5: Usecase quản lý dịch vụ
Đặc tả Use-case
Tên Usecase: Đăng nhập Mức độ BMT: A
Tác nhân chính: Tất cả các tác nhân Tác nhân phụ: Hệ thống
Mô tả Usecase: Hệ thống ký số sử dụng SIM-KPI để đăng nhập, nhằm nâng cao bảo mật cho chức năng đăng nhập Hệ thống này được thiết kế với 03 lớp bảo mật khác nhau.
- Lớp 1: Đăng nhập sử dụng tài khoản LDAP
- Lớp 2: Đăng nhập sử dụng mã PIN của SIM-KPI
Để bắt đầu sử dụng chức năng đăng nhập bằng mã OTP trong lớp 3, cán bộ cần có tài khoản được cấp để truy cập vào hệ thống Sau khi hoàn tất quá trình đăng nhập, hệ thống sẽ hiển thị giao diện ký số cho người dùng, đánh dấu việc đăng nhập thành công.
Trình tự các sự kiện:
Bước 1: Người dùng nhập userName và password mà quản trị đã cấp khi đăng ký tài khoản trên hệ thống và nhấn “Đăng nhập” trên giao điện đăng nhập
Bước 2: Chương trình truy xuất vào DB và thực hiện kiểm tra thông tin người dùng:
• Nếu thông tin user có trong DB thì chương trình chuyển sang Bước 3
• Nếu thông tin user không có trong DB thì chương trình cảnh báo “Tài khoản không hợp lệ” cho người dùng
Bước 3: Hệ thống thực hiện kiểm tra tài khoản thông qua API gọi lên LDAP server
• Nếu server trả về tài khoản đúng thì hệ thống chuyển qua đăng nhập lớp 02 bằng SIM-KPI
• Nếu sai thông tin tài khoản thì hệ thống thông báo “Tài khoản sai” cho user Đăng nhập lớp 2 – Đăng nhập sử dụng mã pin của SIM-KPI:
Bước 1: Sau khi người dùng đăng nhập thành công qua lớp 1 Hệ thống tiếp tục thực hiện đăng nhập lớp 2 sử dụng SIM-KPI
Bước 2: Hệ thống đọc danh sách các CTS kết nối tới máy client và thực hiện hiển thị danh sách các CTS này cho người sử dụng
Bước 3: Người sử dụng chọn CTS của mình và kích vào “OK”
Bước 4: Hệ thống thực hiện lấy thông tin CTS và kiểm tra thông tin CTS đã được đăng ký cho user đăng nhập trên hệ thống CKS chưa
• Nếu đã được đăng ký thì chuyển sang Bước 5
• Nếu chưa được đăng ký thì thông báo cho người dùng “CTS chưa được đăng ký cho user trên hệ thống CKS”
Hệ thống sẽ gọi hàm login vào SIM-KPI và hiển thị hộp thoại yêu cầu người dùng nhập mật khẩu của SIM-KPI, chỉ những người sở hữu tài khoản mới có quyền truy cập.
Bước 6: Người dùng nhập pass SIM-KPI
Bước 7: SIM-KPI thực hiện valid thông tin pass SIM-KPI mà người dùng nhập vào
• Nếu hợp lệ thì thực hiện gửi mã OTP cho người dùng
• Nếu sai pass thì thông báo cho người dùng và yêu cầu nhập lại Đăng nhập lớp 3 – Đăng nhập sử dụng mã OTP:
Hệ thống sẽ gửi mã OTP đến số điện thoại đã đăng ký, mã này có hiệu lực trong 60 giây Người dùng cần nhập 6 số OTP vào form yêu cầu.
Bước 2: Người dùng nhập 6 số OTP và kích vào “Xác thực”, hệ thống kiểm tra:
• Nếu OTP sai, hệ thống báo lỗi và yêu cầu người dùng nhập lại
Nếu người dùng không nhập mã OTP trong vòng 60 giây hoặc nhập sai, hệ thống sẽ thông báo và tự động đóng Form OTP Người dùng sẽ cần phải thực hiện lại quá trình đăng nhập từ đầu.
• Nếu OTP đúng, hệ thống hiển thị giao diện báo cáo
Hệ thống đọc hiển thị chứng thư số trong SIM-KPI kết nối với PC cá nhân
Người dùng chọn CTS và bấm “OK”
Hệ thống kiểm tra CTS có gắn với người dùng không
Hệ thống thực hiện login vào SIM-
SIM-KPI hiển thị dialog nhập pass và người dùng thực hiện nhập pass
SIM-KPI kiểm tra pass
Hệ thống gửi mã OTP cho người dùng
Hệ thống hiển thị form nhập mã OTP và người dùng thực hiện nhập mã
Hệ thống kiểm tra OTP người dùng nhập
Cảnh báo sai thông tin tài khoản cho người dùng
Hiển thị giao diện người dùng
Tên Usecase: Ký số văn bản Mức độ BMT: B
Tác nhân chính: Chuyên viên, lãnh đạo, đối tác, văn thư
Tác nhân phụ: Hệ thống
Usecase này cho phép người dùng có quyền ký số thực hiện ký số văn bản bằng SIM-KPI Để bắt đầu, người dùng cần đăng nhập và có văn bản chờ ký Khi quá trình ký số hoàn tất, hệ thống sẽ hiển thị popup thông báo văn bản đã được ký số thành công.
Trình tự các sự kiện:
• Sau khi nhận được thông báo: Có văn bản đang chờ ký, người dùng đăng nhập hệ thống để thực hiện ký văn bản
Dựa trên thông tin tài khoản đăng nhập, hệ thống sẽ tìm kiếm và hiển thị các văn bản đang chờ ký phù hợp với thông tin tài khoản đó.
• Dựa vào tài khoản đăng nhập, hệ thống xác định được danh sách các dịch vụ mà người dùng đang quản lý
Khi người dùng đã có danh sách các dịch vụ quản lý, hệ thống sẽ tự động tìm kiếm và hiển thị danh sách các văn bản chờ ký cho từng dịch vụ trên menu “Văn bản chờ ký”.
• Trên giao diện menu “Văn bản chờ ký”, người dùng thực hiện chọn văn bản cần ký và kích vào “Ký văn bản”
• Hệ thống thực hiện ký duyệt văn bản, văn bản sau khi được ký duyệt xong sẽ vào giao diện “Văn bản đã ký”
• Hệ thống cảnh báo sms, email đến các user liên quan đến văn bản
Người dùng chọn văn bản cần ký trong danh sách biên bản chờ ký
Nguời dùng bấm vào nút “ký văn bản”
Hệ thống thực hiện cập nhật lại trạng thái văn bản trên DB và tên file trên
Hệ thống kiểm tra thông tin văn bản có đúng định dạng A4
Gửi cảnh báo cho những user đã tác động lên văn bản
Cảnh báo cho người dùng lỗi
Hiện thị dialog chọn ký
4.5.3 Từ chối ký văn bản
Tên Usecase: Từ chối ký văn bản Mức độ BMT: B
Tác nhân chính: Chuyên viên, lãnh đạo, đối tác, văn thư
Tác nhân phụ: Hệ thống
Trong quá trình ký số, các văn bản có thể gặp lỗi về font chữ, ngày tháng mà không được phát hiện kịp thời, dẫn đến việc văn bản đã được dự thảo và xử lý trên hệ thống Khi người ký phát hiện lỗi, họ cần từ chối văn bản để thực hiện chỉnh sửa Điều kiện bắt đầu use-case là người dùng đã đăng nhập và có văn bản đang chờ ký Kết thúc use-case xảy ra khi văn bản từ chối thành công và hiển thị popup thông báo cho người dùng.
Trình tự các sự kiện:
Bước 1: Người dùng chọn văn bản cần từ chối ký trên giao diện “Văn bản chờ ký” và kích vào “Từ chối”
Bước 2: Hệ thống hiển thị dialog yêu cầu người dùng nhập thông tin từ chối ký văn bản
Bước 3: Người dùng nhập thông tin từ chối ký và kích vào “OK”
Bước 4: Hệ thống kiểm tra thông tin người dùng nhập
➢ Nếu chưa nhập thông tin từ chối, hệ thống báo lỗi cho người dùng
➢ Nếu nhập đủ thông tin, chương trình chuyển sang bước 5
➢ Hệ thống cập nhật lại tên văn bản
➢ Hệ thống cập nhật trạng thái văn bản trong DB về trạng thái “Từ chối”, tên và đường dẫn văn bản từ chối
➢ Văn bản sau khi bị từ chối sẽ nằm trong giao diện “Văn bản”
• Bước 6: Chương trình thực hiện cảnh báo sms/email cho người dùng đã từng tác động lên văn bản
Người dùng chọn văn bản cần từ chối trong danh sách biên bản chờ ký
Nguời dùng nhập thông tin về nguyên nhân từ chối văn bản
Hệ thống thực hiện cập nhật lại trạng thái văn bản trên DB và tên file trên
Hệ thống kiểm tra thông về việc từ chối văn bản
Gửi cảnh báo cho những user đã tác động lên văn bản
Cảnh báo cho người dùng vì chưa nhập nguyên nhân từ chối
4.5.4 Báo cáo quản lý văn bản chờ xử lý
Tên Usecase: Quản lý các văn bản chờ ký Mức độ BMT: B
Tác nhân chính: Tất cả các tác nhân Tác nhân phụ: Hệ thống
Trong usecase này, người dùng sẽ quản lý các văn bản chờ ký của mình Điều kiện bắt đầu là người dùng đã đăng nhập vào hệ thống và có văn bản chờ ký đã được dự thảo Khi hoàn thành usecase, hệ thống sẽ hiển thị giao diện danh sách các văn bản đang chờ ký cho người dùng.
Trình tự các sự kiện:
Bước 1: Người dùng chọn menu “Văn bản” trên giao diện chương trình
Bước 2: Hệ thống kiểm tra thông tin tài khoản của người dùng, từ đó sẽ lấy danh sách các văn bản theo user này
Bước 3: Hiển thị danh sách các văn bản cho người dùng
4.5.5 Báo cáo quản lý văn bản đã xử lý
Tên Usecase: Quản lý các văn bản đã ký Mức độ BMT: B
Tác nhân chính: Tất cả các tác nhân Tác nhân phụ: Hệ thống
Usecase mô tả quản lý văn bản đã ký cho người dùng, cho phép hiển thị danh sách các văn bản liên quan Người dùng có quyền cao nhất sẽ có chức năng hủy ký văn bản Điều kiện bắt đầu use-case là người dùng đã đăng nhập và có văn bản đã ký trên hệ thống Sau khi hoàn tất, hệ thống sẽ hiển thị giao diện danh sách các văn bản đã ký cho người dùng.
Trình tự các sự kiện:
Bước 1: Người dùng chọn menu “Văn bản đã ký” trên giao diện chương trình
Bước 2: Hệ thống kiểm tra thông tin tài khoản của người dùng, từ đó sẽ lấy danh sách các văn bản theo user này
Bước 3: Hiển thị danh sách các văn bản
Người dùng chọn văn bản đã xử lý trong menu “văn bản”
Thông báo lỗi cho quản trị viên
Hiển thị dữ liệu cho người dùng
Hệ thống load cở sở dữ liệu trong DB
Tên Usecase: Quản lý các user trên hệ thống Mức độ BMT: B
Tác nhân chính: quản trị viên Tác nhân phụ: Hệ thống
Trong use case quản lý thông tin người dùng trên hệ thống, điều kiện tiên quyết là người dùng phải đăng nhập thành công Sau khi hoàn tất các thao tác, hệ thống sẽ hiển thị giao diện danh sách các người dùng hiện có.
Trình tự các sự kiện:
Bước 1: Người dùng thực hiện vào menu “Quản lý User”
Bước 2: Hệ thống thực hiện tìm kiếm và hiển thị danh sách các user được quản lý bởi User đăng nhập
Bước 3: Hệ thống hiển thị danh sách người dùng
Người dùng chọn quản lý user trong menu “hệ thống”
Thông báo lỗi cho quản trị viên
Hiển thị dữ liệu cho người dùng
Hệ thống load cở sở dữ liệu trong DB
Tên Usecase: Quản lý các dịch vụ trên hệ thống Mức độ BMT: B
Tác nhân chính: quản trị viên, chuyên viên, lãnh đạo
Tác nhân phụ: Hệ thống
Quản lý thông tin dịch vụ trên hệ thống yêu cầu mã dịch vụ duy nhất Để bắt đầu, người dùng cần đăng nhập vào hệ thống Sau khi hoàn tất, giao diện sẽ hiển thị danh sách các dịch vụ mà người dùng đang quản lý.
Trình tự các sự kiện:
Bước 1: Người dùng thực hiện vào menu “Quản lý dịch vụ”
Bước 2: Hệ thống thực hiện tìm kiếm và hiển thị danh sách các dịch vụ được quản lý bởi User
Bước 3: Hệ thống hiển thị danh sách dịch vụ cho User
Người dùng chọn quản lý dịch vụ trong menu “văn bản”
Thông báo lỗi cho quản trị viên
Hiển thị dữ liệu cho người dùng
Hệ thống load cở sở dữ liệu trong DB
4.5.8 Từ điển luồng ký văn bản
Tên Usecase: Quản lý các từ điển luồng Mức độ BMT: B
Tác nhân chính: quản trị viên, chuyên viên Tác nhân phụ: Hệ thống
Quản lý thông tin luồng xử lý văn bản theo định nghĩa của người dùng yêu cầu điều kiện bắt đầu là người dùng đã đăng nhập vào hệ thống Sau khi hoàn thành, hệ thống sẽ hiển thị các luồng user được quản lý theo nhóm người dùng.
Trình tự các sự kiện:
Bước 1: Người dùng thực hiện vào menu “Từ điển luồng”
Bước 2: Hệ thống thực hiện tìm kiếm và hiển thị danh sách các luồng xử lý được quản lý bởi User
Bước 3: Hệ thống hiển thị danh sách luồng cho User
Người dùng chọn luồng xử lý trong menu “văn bản”
Thông báo lỗi cho quản trị viên
Hiển thị dữ liệu cho người dùng
Hệ thống load cở sở dữ liệu trong DB
Tên Usecase: Dự thảo văn bản ký số Mức độ BMT: B
Tác nhân chính: chuyên viên Tác nhân phụ: Hệ thống
Usecase mô tả quy trình cho phép người dùng soạn thảo các file văn bản để ký số trên hệ thống Điều kiện tiên quyết để bắt đầu là người dùng phải đăng nhập vào hệ thống Sau khi hoàn tất, điều kiện kết thúc sẽ là việc dự thảo văn bản ký số được thực hiện thành công trên hệ thống.
Trình tự các sự kiện:
Bước 1: Người dùng thực hiện lựa chọn các tham số trong giao diện “Dự thảo văn bản” để thực hiện upload:
Bước 2: Người dùng thực hiện kích vào “Dự thảo văn bản”
Cơ sở dữ liệu
4.6.1 Biểu đồ lớp tổng quát
Sau khi nghiên cứu và phân tích tổng quan về Usecase, chúng tôi đã xác định định hướng phát triển ứng dụng theo mô hình MVC Để đơn giản hóa việc quản lý các đối tác trong hệ thống, chúng tôi sẽ thiết kế các đối tượng Model nhằm lưu trữ thông tin về các đối tượng trong ứng dụng.
- Đối tượng Vanban: chứa các thông tin của 1 văn bản: ID, file_name, file_owner, note, file_path…
- Đối tượng dichvu: chứa các thông tin của 1 dịch vụ được quản lý trên hệ thống: ID, id_flow, id_user, start_date…
- Đối tượng Nguoidung: thực hiên lưu trữ và quản lý các thông tin của 1 người dùng: ID, user, pass, email, số điện thoại, chứng thư số…
Đối tượng luongky là một cây từ điển chứa thông tin cần thiết để ký một văn bản cho dịch vụ, bao gồm các thông tin quan trọng như ID, bước thực hiện (step), ID người dùng (id_user), và ngày nhập liệu (import_date).
Logkyso là một hệ thống lưu trữ thông tin liên quan đến việc xử lý biên bản, nhằm mục đích quản lý lịch sử tác động lên các biên bản Hệ thống này ghi lại các thông tin quan trọng của đối tượng, bao gồm ID, id_user, id_vanban và import_date.
Class DatabaseControl trong mô hình MVC đóng vai trò quan trọng trong việc quản lý các yêu cầu tương tác với cơ sở dữ liệu Class này xử lý các chức năng như cập nhật thông tin văn bản, lấy danh sách văn bản, luồng và dịch vụ, cũng như cập nhật thông tin người dùng Các phương thức chính bao gồm update_van_ban, update_user, update_dich_vu, update_luong_ky, getUser , editUser , edit_dich_vu và edit_luong, giúp tối ưu hóa quy trình quản lý dữ liệu một cách hiệu quả.
Để đáp ứng các yêu cầu của từng nhóm chức năng như đăng nhập, quản lý văn bản, quản lý luồng và quản lý dịch vụ, chúng ta sẽ thiết kế các lớp điều khiển tương ứng Các lớp điều khiển này sẽ đảm nhiệm việc xử lý các yêu cầu từ từng nhóm chức năng, giúp tối ưu hóa quá trình quản lý và tương tác trong hệ thống.
LoginControl là một lớp điều khiển trong mô hình MVC, có vai trò quan trọng trong việc quản lý truy cập ứng dụng và phiên làm việc của người dùng Lớp này thực hiện các yêu cầu kiểm tra thông tin tài khoản và xác thực tính hợp lệ của mã OTP.
LuongControl là lớp điều khiển trong mô hình MVC, có chức năng quản lý luồng xử lý văn bản trên hệ thống Lớp này cho phép thực hiện các thao tác thêm, sửa và xóa luồng một cách hiệu quả.
- VanbanControl: class control trong mô hình MVC, thực hiện quản lý các văn bản Thực hiện các chức năng tương tác với văn bản:
Khi có yêu cầu từ các view, mỗi view sẽ tương ứng với một control riêng, nhưng tất cả đều sử dụng chung class DatabaseControl để tương tác với cơ sở dữ liệu Để đảm bảo an toàn lưu trữ cho các văn bản, thông tin đi kèm như mã người dùng và mã văn bản cần được lưu trữ khi log văn bản đã hình thành Điều này tạo ra mối quan hệ Generalization giữa các class người dùng, log ký số và văn bản.
Từ những phân tích trên, đã đưa đến việc xây dựng và hoàn thành biểu đồ lớp tổng quát như sau:
Hình 4.6: Biểu đồ lớp tổng quát 4.6.2 Bảng LOGKYSO a Thông tin trường
Bảng 4.1: Bảng log ký văn bản
STT Tên trường Kiểu dữ liệu index Bắt buộc có dữ liệu
2 ID_USER number x x Id của user, khóa chính trong bảng user
3 ID_REPORT number x x Id của văn bản, khóa chính trong bảng văn bản
4 TYPE number x x Loại xử lý:
0: dự thảo văn bản 1: Ký số sử dụng usbtokend
Bảng 4.2: Index của bảng log ký văn bản
STT Tên index Kiểu index Tên trường
1 IDX1_ Log_ky_so NORMAL ID_USER
2 IDX2_ Log_ky_so NORMAL ID_REPORT c Contraint
Bảng 4.3: Contraint của bảng log ký văn bản
STT Tên constraint Kiểu constraint
Tên trường Tên bảng quan hệ
1 Log_ky_so_PK foreign key ID_REPORT VANBAN id
3 Log_ky_so _FK_1 foreign key ID_USER NGUOIDUNG id
4.6.3 Bảng LUONGKY a Thông tin trường
Bảng 4.4: Bảng luồng ký văn bản
STT Tên trường Kiểu dữ liệu index Bắt buộc có dữ liệu
2 STEP varchar2(4000) x Luồng xử lý văn bản
4 Id_user number x Id của user định nghĩa luồng
5 Import_date Date Thời gian cập nhật gần nhất của luồng b Contraint
Bảng 4.5: Contraint bảng luồng ký văn bản
STT Tên constraint Kiểu constraint
Tên trường Tên bảng quan hệ
1 luongky_FK_1 foreign key ID_USER Nguoidung ID
4.6.4 Bảng NGUOIDUNG a Thông tin trường
Bảng 4.6: Bảng tài khoản người dùng
STT Tên trường Kiểu dữ liệu index Partition Bắt buộc có dữ liệu
2 GROUPUSER varchar2(10) Nhóm người dùng
3 USERNAME varchar2(4000) X User người sử dụng
5 CERNUMBER varchar2(4000) X Serial chứng thư số
6 EMAIL varchar2(4000) X Email người dùng
7 MOBIFONENUMBER varchar2(4000) X SĐT người dùng
8 PAGE varchar2(4000) X Các trang được phân quyền truy cập
4.6.5 Bảng DICHVU a Thông tin trường
Bảng 4.7: Bảng dịch vụ
STT Tên trường Kiểu dữ liệu index Bắt buộc có dữ liệu
2 Id_follow number x Mã luồng ký
3 Id_user number x Mã user
4 Start_date date x Thời gian bắt đầu dịch vụ
5 End_date date x Thời gian kết thúc dịch vụ
7 Group_content varchar2(4000) Nhóm nội dung dịch vụ
Bảng 4.8: Contraint bảng dịch vụ
STT Tên constraint Kiểu constraint
Tên trường Tên bảng quan hệ
1 DICHVUFK_1 foreign key ID_FLOW LUONGKY ID
2 DICHVUFK_2 foreign key ID_USER NGUOIDUNG ID
4.6.6 Bảng VANBAN a Thông tin trường
Bảng 4.9: Bảng quản lý văn bản
STT Tên trường Kiểu dữ liệu index Bắt buộc có dữ liệu
1 ID number x Mã văn bản
2 OWNER varchar2(4000) Người dự thảo văn bản
3 FILE_NAME varchar2(4000) x x Tên file văn bản
4 HISTORY varchar2(4000) x Lịch sử tác động văn bản
8 TYPE varchar2(4000) Loại hình văn bản:
10 PROCESS varchar2(4000) x Trạng thái xử lý văn bản
11 FILE_PATH varchar2(4000) x Đường dẫn file văn bản
12 FILE_PATH_ATT varchar2(4000) Đường dẫn file attach
13 FILE_NAME_ATT varchar2(4000) Tên file attach
14 NEXT_PERSON varchar2(400) Người xử lý tiếp theo
15 ID_FLOW number x ID luồng xử lý văn bản b Contraint
Bảng 4.10: Contraint bảng quản lý văn bản
STT Tên constraint Kiểu constraint
Tên trường Tên bảng quan hệ
1 VANBANFK foreign key ID_FLOW LUONGKY ID
4.6.7 Mô hình thực thể liên kết
Hình 4.7: Sơ đồ cơ sở dữ liệu