Ứng dụng công nghệ Web với cơ sở dữ liệu trong điều hành quản lý
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 một số đơ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ũ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. Bài báo này với mục đích giúp người đọc có cái nhìn
cụ thể hơn về công nghệ này cũng như khả năng ứng dụng rộng rãi của nó.
1.Mở đầu
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 một số đơ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ũ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. Bài báo này với
mục đích giúp người đọc có cái nhìn cụ thể hơn về công nghệ này cũng như
khả năng ứng dụng rộng rãi của nó.
2. Cơ sở dữ liệu với web
Hiện nay, các trang web tĩnh được phát triển từ HTML đang bị cạnh tranh
bởi các trang web kết hợp với cơ sở dữ liệu : chúng lấy nội dung từ CSDL
và hiển thị lên trang web bằng trình duyệt. Tách giao diện người dùng khỏi
chức năng ứng dụng đã cho phép người thiết kế dễ dàng thay đổi cả thiết kế
trang lẫn nội dung động. Thông tin được đưa lên trang web theo phương
thức động (thay đổi số liệu trong CSDL) cho phép giải phóng nhiều sức lao
động khỏi việc tạo thông tin trực tuyến.
Một số vấn đề cần lưu ý khi tổ chức dữ liệu trên web là :
- Loại cơ sở dữ liệu nào ? Một số lựa chọn : CSDL quan hệ/SQL, kiểu text
thuần tuý, kiểu phân cấp. Quyết định chọn phụ thuộc vào cấu trúc dữ liệu và
kiểu của hệ thống tra cứu và tìm kiếm mà ta muốn.
- Đây là dữ liệu dạng text, hay nó là bảng hoặc có cấu trúc mắt lưới ?
- Nếu dữ liệu là bảng, ta có muốn tìm kiếm trên một hay nhiều cột một lúc
hoặc muốn tìm kiếm qua công thức sử dụng tập hợp giá trị luận lý (boolean)
Có một số cách mà người dùng có thể xác định, tìm kiếm dữ liệu trong
một hệ thống thông tin hoặc nguồn dữ liệu.
Nếu dữ liệu có thể được bố trí như một bảng nhỏ và muốn lấy một số
bản ghi theo một hoặc hai giá trị trường, thì một chương trình nhỏ cũng là
đủ. Theo cách khác, nếu muốn có thể tìm kiếm những tương quan trong dữ
liệu, có thể sử dụng một cơ sở dữ liệu quan hệ.
Đơn giản mà nói, một cơ sở dữ liệu là một hệ thống lưu trữ bản ghi
trong máy tính. Hơn nữa, đó là một hệ thống tập trung dữ liệu, phần cứng
lưu giữ về vật lý, phần mềm sử dụng hệ thống các file của phần cứng để: -
Lưu trữ dữ liệu - Cung cấp một phương pháp chuẩn để kết xuất hoặc thay
đổi dữ liệu, và cuối cùng là người sử dụng có thể liệt kê và xem nội dung dữ
liệu sau khi đã xử lý.
Cơ sở dữ liệu (CSDL) được tạo ra để giải quyết các vấn đề với các hệ
thống hướng tệp mà trong đó dữ liệu sắp xếp, tìm kiếm dễ dàng, nhanh
chóng, chính xác, cho phép dễ chia xẻ tài nguyên với nhiều người cùng sử
dụng, và an toàn.
Một cơ sở dữ liệu nên hoàn chỉnh và đạt yêu cầu như một hệ thống hiệu
chỉnh giám sát tài khoản thường được sử dụng trong các nhà băng để quản lý
việc thay đổi các tài khoản của hàng nghìn khách hàng. Một cơ sở dữ liệu
phải cho phép chứa dữ liệu, nhập vào hoặc sửa đổi nó khi cần đến thao tác
trên đó.
Thông thường, các cơ sở dữ liệu chạy những ứng dụng lớn trên những
máy chủ mạnh (mainframe). Ví dụ như Oracle 8, Sybase hay SQL Server.
Tuy nhiên với những máy tính cá nhân nhỏ, cơ sở dữ liệu cần trở thành tiện
dụng hơn với số đông người dùng có máy tính, ví dụ như Microsoft Access
hay Borland Paradox.
Quan trọng hơn nữa là cơ sở dữ liệu phải có thể kết hợp cho dịch vụ,
phát triển và thiết kế phục vụ các trang web.
Cơ sở dữ liệu phân tích (OLAP - On Line Analytical Processing) là một
CSDL tĩnh và chỉ dùng cho đọc số liệu chứa trong đó, đó là các số liệu lưu
trữ dùng cho phân tích. Trên web, đôi khi ta gặp một CSDL phân tích ở
dạng bảng tra cứu thống kê, ví dụ như Amazon.com. Một CSDL kiểu như
vậy thường lưu giữ thông tin về tất cả những sản phẩm nằm trong danh mục.
Trang web được tạo động qua việc truy xuất dữ liệu trong danh sách, khác
với việc tìm kiếm theo một số tham số. Trang được tạo động sẽ hiển thị dữ
liệu về những mục chứa trong CSDL.
Cơ sở dữ liệu thao tác (OLPT - On Line Transaction Processing), theo
một cách khác, được sử dụng để quản lý những phần động của dữ liệu.
Những kiểu CSDL như thế cho phép thực hiện việc trình bày dữ liệu lưu trữ
đơn giản hơn. CSDL thao tác cho phép sửa đổi dữ liệu . Kiểu CSDL này
thường được sử dụng để giám sát thông tin thời gian thực.
3. Các tính năng cần thiết cho cơ sở dữ liệu cho các chương trình Web
Đối với một hệ CSDL nằm phân tán trên mạng máy tính thì hệ quản trị
CSDL có ý nghĩa rất quan trọng vì phải đảm bảo tính thống nhất và toàn vẹn
của dữ liệu, đảm bảo cho các chương trình người dùng truy xuất đến CSDL
phân tán như là một khối CSDL duy nhất.
Ngoài ra hệ quản trị CSDL còn phải đảm bảo chức năng phân quyền
truy nhập và bảo mật trên đường truyền.
Trong các hệ quản trị CSDL phân tán hiện nay thì hệ quản trị CSDL
Oracle được đánh giá là ưu việt nhất với các chức năng tiên tiến: phân tán,
sao bản (replication), bảo mật cao, tính nhất quán dữ liệu, thủ tục chạy ngầm
(procedure storeg), xử lý sự kiện kích hoạt (triggers), khoá dữ liệu đến từng
hàng, chạy thông suốt trên 120 loại phần cứng từ máy lớn đến máy nhỏ và
19 hệ điều hành, hỗ trợ hầu hết các giao thức mạng, là CSDL đầu tiên trên
thế giới tích hợp Web. Do đó bài báo này sẽ phân tích kỹ hệ quản trị này
giúp người đọc có cái nhìn cụ thể .
Oracle database là một tập hợp được xử lý như một khối thống nhất,
nhằm mục đích lưu trữ và kết xuất thông tin có liên quan với nhau.
Để đảm bảo quy tắc nghiệp vụ và để bảo đảm tính toàn vẹn về dữ liệu,
Oracle cung cấp một số quy tắc ràng buộc dữ liệu
Constraints
Database Trigger
Application Code
Những quy tắc này được xác định bởi người quản lý CSDL hoặc người
phát triển ứng dụng tuỳ theo yêu cầu nghiệp vụ.
Oracle cung cấp hệ thống bảo mật ở nhiều mức , người quản trị CSDL
sẽ thực hiện phân quyền cho từng người sử dụng được phép. Đối với CSDL
, Oracle phân các quyền nhập mới, sữa chữa, xoá, xem, index trên các đối
tượng như bảng (table), khung nhìn (view) Như vậy chỉ những người có
mật khẩu mới sử dụng được dữ liệu của hệ thống.
Oracle cung cấp các quyền và quy tắc có sẵn cho người sử dụng. Mỗi
người sử dụng (user) sử dụng cơ sở dữ liệu Oracle đều phải đăng ký một tài
khoản (account) trong cơ sở dữ liệu bao gồm:
Use namer: mỗi người sử dụng kết nối với cơ sở dữ liệu với tên duy
nhất, được gắn liền với mật khẩu. Các trạm làm việc cùng chia sẻ tài nguyên
và cơ sở dữ liệu.
User password: gắn với User name.
Database name: định nghĩa tên của cơ sở dữ liệu mà người sử dụng muốn
kết nối vào. SQL* Net là phần mềm truyền thông cho phép các trạm làm
việc kết nối với cơ sở dữ liệu trên oracle Server và thao tác trên oracle
server.
+ Chỉ tiêu tablespace (không gian đĩa có sẵn) cho người sử dụng.
+ Giới hạn nguồn tài nguyên hệ thống cho người sử dụng.
Sau khi tạo ra người dùng, người quản trị cơ sở dữ liệu (DBA- database
Adminitrator) phải gán quyền cho người dùng có thể truy cập được vào cơ
sở dữ liệu.
Quyền của người sử dụng CSDL Oracle có thể chia thành hai loại:
- System privilege (quyền hệ thống) cho phép người sử dụng thực hiện
trên hệ thống rộng riêng hoặc một hoạt động đặc biệt trên một kiểu đối
tượng đặc biệt. Ví dụ, quyền tạo bảng, chỉ mục trên bất kỳ một tablespace
nào, quyền tạo người dùng mới, quyền cập nhật hỏi đáp dữ liệu trên bất kỳ
bảng nào đó là quyền của hệ thống.
- Object privileges (quyền với các đối tượng) cho phép người sử dụng thực
hiện hành động riêng trên một đối tượng cụ thể nào đó. Ví dụ như quyền cập
nhật dữ liệu trên một bảng nào đó hoặc quyền đọc dữ liệu từ một view nào
đó quyền đối tượng là quyền cuối cùng của người sử dụng.
Khái niệm nhóm quyền (role): để giúp cho việc quản lý các quyền của
người dùng một cách hiệu quả, Oracle đưa ra khái niệm nhóm quyền. Thực
chất đây là một tập các quyền thực hiện việc gán và thay đổi một nhóm
quyền cho một nhóm người dùng.
Như vậy, với các quyền đối tượng và quyền hệ thống,cũng như bằng
cách sử dụng nhóm quyền, hệ quản trị CSDL Oracle cho phép ta gán những
quyền hạn thích hợp cho người dùng và nhóm người dùng một cách linh
hoạt, hiệu quả. Do đó đảm bảo được tính bảo mật của hệ thống.Với Oracle ta
có thể tạo sẵn một số người sử dụng nào đó và thực hiện phân quyền cho họ
khi thiết kế dữ liệu, có thể phân quyền trực tiếp trên các đối tượng dữ liệu
cho từng người sử dụng hoặc tạo ra các nhóm (role) quyền sử dụng dữ liệu
và gán người sử dụng vào các nhóm này.
4. Vấn đề bảo mật cho việc điều hành quản lý qua Web
Bảo vệ ứng dụng là vấn đề đặc biệt quan trọng nhất là với các số liệu đòi hỏi
tính bảo mật cao và ngăn chặn người không đủ thẩm quyền có thể truy nhập
vào hệ thống ứng dụng. Việc tổ chức bảo mật đã được nhiều tài liệu đề cập
đến và nhiều hướng nghiên cứu đang tiếp tục được phát triển. Một số cơ chế
bảo vệ theo phạm vi tác động có thể sử dụng là
+ firewall (mức truy nhập mạng)
+ database security (bảo mật cơ sở dữ liệu)
+ application security (bảo mật trên ứng dụng)
Với Orcle: Oracle Application Server cung cấp một số sơ đồ hay chức
năng bảo mật cho phép người phát triển kiểm soát việc truy nhập đến các
trang web và ứng dụng .
Browser - có thể là Netscape Navigator, Internet Explorer hoặc loại
khác.
Listener - là HTTP daemon (httpd) dùng để nghe yêu cầu dịch vụ .
Dispatcher - Dispatcher quản lý yêu cầu HTTP gọi đến cartridges. Mỗi
dispatcher cho mỗi listener. Dispatcher tập hợp của một loạt các khối như
Auth Server, Configuration Provider, Logger
- Database - tham chiếu đến một Oracle database. Web cartridges hoặc
CORBA components (ECOs, C++ cartridge, EJBs) có thể giao tiếp với một
Oracle database qua Oracle Call Interface (OCI) hay các thủ tục khác. Nếu
database nằm trên máy khác nhau, chúng sẽ kết nối qua Net8.
- RM Proxy - proxy quản lý tài nguyên (Resource Manager - RM) là một
dich vụ Web Request Broker bao gồm cả đối tượng tham chiếu đến đối
tượng ECO/Java, EJB, C++ và trả lại cho client.
Mật mã cổng máy chủ cho phép các máy chủ bảo vệ thông tin với sơ đồ
mã hoá mạnh (128 bit) khi kết nối để xuất các phiên bản trình duyệt (40 bit).
Oracle Application Server cung cấp nhận thực máy chủ tuỳ thuộc vào
nguồn gốc người ký nhận đến trình duyệt máy client. Trình duyệt được đáp
ứng với nhận thực của máy chủ. Việc tạo lập ràng buộc nhận thực không yêu
cầu bổ dung cấu hình máy chủ.
Một firewall được sử dụng để bảo vệ máy chủ Oracle Application
Server qua kết nối Internet/ Intranet. Một firewall có thể đặt ở :
- Trước listener - trong trường hợp này firewall đảm bảo truy nhập cho
HTTP đối với liên lạc browser-to-listener.
- Giữa các khối của Oracle Application Server
- Kết nối giữa Oracle Application Server và Oracle databases thông qua
Net8. Do vậy, bảo mật giữa Oracle Application Server và một Oracle
database do Net8 quản lý, mà không do Oracle Application Server.
Net8 là một lớp tin báo vận hành một cách trong suốt qua các giáo thức
mạng chung nhất hay trong bộ nhớ của máy đơn . Nó cho phép một Oracle
database liên lạc với một loạt khối khác của Oracle , gồm cả Oracle
Application Server, mà không cần phải quan tâm tới các giáo thức mạng hay
cấu hình . Net8 có một bộ phương pháp mã hoá của nó để bảo vệ các tin
báo.
PL/SQL cartridge có trong Oracle Application Server cho mục đích
chạy các ứng dụng PL/SQL trên một Oracle database. PL/SQL cartridge
cung cấp khả năng bảo mật bổ sung cho các client của nó vượt xa hơn mức
bảo mật do WRB API cung cấp . Một URL kích hoạt PL/SQL cartridge sẽ
xác định DAD (Database Access Descriptors)được dùng cho yêu cầu đó .
Database Access Descriptors sử dụng để điều khiển truy nhập database
từ PL/SQL và JServlet cartridges. Nó có thể, và có thể không, được sử dụng
bởi cartridge mà người phát triển viết để truy nhập vào Oracle database.
PL/SQL Cartridge cho phép một client nhập vào một URL xác định trực
tiếp một PL/SQL procedure được chạy bởi Oracle database. Chỉ có thủ tục
(procedure) đã được thiết lập khả năng cho trường hợp này là có thể trở
thành điểm truy nhập vào ứng dụng Bản thân các thủ tục này phải có khả
năng gọi tới các thủ tục khác mà không lộ thủ tục sau cùng.
PL/SQL Cartridge cho ta khả năng này bằng cách bảo vệ các packages. Một
package được bảo vệ chỉ có thể chạy thông qua một thủ tục đã được lưu
khác mà không thông qua URL. Tất cả các chức năng OWA do Oracle
Application Server cung cấp đều được bảo vệ.
5. Khả năng ứng dụng điều hành quản lý qua Web
Với các tính năng nổi trội ở trên, công nghệ này có khả năng ứng dụng rộng
rãi, với các công ty, đơn vị có các chi nhánh trải rộng trên các vùng miền
khác nhau. Với cấu hình mạng như hình 4. Gồm một máy chủ cơ sở dữ liệu,
một máy chủ ứng dụng, các máy trạm có thể truy nhập vào máy chủ này qua
một modem vào Internet dưới dạng Web với user name, password của mình,
tiến hành gửi các báo cáo định kỳ, các báo cáo đột xuất, nhận các thông tin
của nhà quản lý đối với đơn vị mình. Căn cứ vào sự phân quyền truy nhập,
trang Web sẽ hiển thị các thông tin cần thiết đối với từng user name,
password, cũng như giới hạn các quyền sửa, gửi báo cáo, phân tích, tổng
hợp báo cáo, đồng thời với nhà quản trị mạng có thể giám sát chặt trẽ việc
truy nhập cũng như gửi báo cáo của các đơn vị thành viên. Một trong những
đơn vị áp dụng thành công công nghệ này là Ban viễn thông thuộc Tổng
công ty bưu chính viễn thông Việt Nam với bộ chương trình viết bởi trung
tâm ứng dụng công nghệ mới thuộc Viện khoa hoc kỹ thuật Bưu điện. Trang
Web này đã giúp ban viễn thông giảm thiểu được việc nhận Fax các báo cáo,
nhanh chóng nắm được tình hình viễn thông với các ứng dụng như :
+ Điều hành thông tin
+ Thu thập và tổng hợp báo cáo ngày, tuần
+ Quản lý mạng chuyển mạch và truyền dẫn
+ Quản lý kế hoạch phát triển
+ Phổ biến văn bản nghiệp vụ
+ Quản lý phát triển dịch vụ
Với các chức năng cơ bản cho mỗi ứng dụng (tuỳ theo quyền truy
nhập):
+ Nhập số liệu
+ Sửa đổi
+ Giám sát quản lý số liệu và thực hiện quy trình nghiệp vụ
+ Lập báo cáo
+ Tra cứu nhiều chiều (theo đối tượng, theo vết thời gian, theo lĩnh vực
chuyên môn của chủ đề quản lý ă)
+ Tổng hợp số liệu phân tích tình hình
+ Biểu đồ hoá số liệu
6. Kết luận
Ư'ng dụng công nghệ Web với cơ sở dữ liệu thống nhất trong điều hành
quản lý là một hướng đi đúng đắn nhằm từng bước tin học hoá công tác
quản lý. Nó giảm thiểu được công tác nhân công đồng thời tăng tính thời
gian thực cũng như khả năng của hệ thống quản lý. Điều này rất cần thiết
trong công tác quản lý hiện nay.
Theo VNPT