Luận văn Xây dựng và bảo mật hệ thống tích hợp
Luận văn tốt nghiệp
Đề tài: Xây dựng và bảo mật
hệ thống tích hợp
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
LỜI CẢM ƠN
Em xin chân thành cảm ơn khoa Tin học Quản lý, trường Đại học Tài
chính – Marketing đã tạo điều kiện cho em thực hiện đề tài tốt nghiệp này.
Em xin nói lên lòng biết ơn sâu sắc với ThS. Trần Minh Tùng. Xin cảm
ơn Thầy đã luôn quan tâm, tận tình hướng dẫn trong quá trình học tập, nghiên cứu và
thực hiện đề tài.
Em xin chân thành cảm ơn Công ty cổ phần phần mềm BRAVO, anh
Nguyễn Lê Quốc Huy đã giúp đỡ em trong quá trình thực tập để thực hiện đề tài tại
công ty.
Em xin chân thành cảm ơn quý Thầy Cô trong khoa Tin học Quản lý đã
tận tình giảng dạy, trang bị cho em những kiến thức quý báu, đã truyền thụ cho em
những kiến thức, kinh nghiệm, đã quan tâm dìu dắt và giúp đỡ em trong quá trình học
tập cũng như trong thực hiện đề tài này.
Con luôn nhớ mãi công ơn của Ông Bà, Ba Mẹ đã luôn yêu thương, lo
lắng, chăm sóc và nuôi dạy con thành người.
Cuối cùng em xin gửi lời cảm ơn đến các anh chị, các bạn đã quan tâm
động viên và giúp đỡ em trong quá trình thực hiện đề tài.
Mặc dù đã cố gắng hoàn thành trong phạm vi khả năng cho phép nhưng
chắc chắn sẽ không tránh khỏi những thiếu sót, kính mong nhận được sự tận tình chỉ
bảo của quý Thầy Cô và các bạn.
Một lần nữa, em xin chân thành cảm ơn và mong luôn nhận được những
tình cảm chân thành nhất của mọi người.
TP. Hồ Chí Minh ngày 19 tháng 05 năm 2010
Lê Quang Tuyến
GVHD: ThS. Trần Minh Tùng
- Trang 3 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
NHẬN XÉT CỦA ĐƠN VỊ THỰC TẬP
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
TP.Hồ Chí Minh, ngày
Đại diện doanh nghiệp
(Ký tên và ghi rõ họ tên, chức vụ)
tháng 5 năm 2010
GVHD: ThS. Trần Minh Tùng
- Trang 4 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
NHẬN XÉT CỦA GIẢNG VIÊN
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
Kết quả chấm điểm:………………….
Ghi bằng chữ:………………………...
TP. Hồ Chí Minh, ngày
tháng 05 năm 2010
ThS. Trần Minh Tùng
GVHD: ThS. Trần Minh Tùng
- Trang 5 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
LỜI MỞ ĐẦU
Ngày nay, công nghệ thông tin phát triển rất nhanh và được ứng dụng
rộng rãi trong đời sống. Công nghệ thông tin mang lại cho con người rất nhiều hữu ích,
đặc biệt là trong lĩnh vực quản lý dữ liệu, truy cập thông tin, tra cứu thông tin… Đối
với các tổ chức, doanh nghiệp thì công tác quản lý đòi hỏi ngày càng gọn nhẹ nhưng
phải đảm bảo được việc tra cứu, tìm kiếm, lưu trữ thông tin phải được thực hiện một
cách nhanh chóng, tiện lợi và phải mang tính chính xác cao nhất. Đứng trước những
yêu cầu trên, các tổ chức, doanh nghiệp ngày càng thấy được tầm quan trọng của việc
tin học hóa các quy trình, nghiệp vụ liên quan đến hoạt động của mình.
Để đáp ứng được nhu cầu thực tế của các tổ chức, doanh nghiệp nhiều
công ty đã xây dựng những phần mềm phục vụ cho việc quản lý, kinh doanh cho các tổ
chức, doanh nghiệp. Không ngoài mục đích này, chương trình “Xây dựng và bảo mật
hệ thống tích hợp” là chương trình được xây dựng nhằm để liên kết các phân hệ con:
phân hệ quản lý khách hàng (CRMS), phân hệ quản lý bán hàng (SMS), phân hệ quản
lý lương – nhân sự (HMS), phân hệ quản lý kho (StMS), phân hệ quản lý tài sản cố
định (FMS) thành một chương trình lớn, thống nhất về dữ liệu, giúp cho các cấp quản
lý của các tổ chức, công ty truy xuất, kiểm tra các thông tin một cách nhanh chóng và
chính xác. Các thao tác tìm kiếm thông tin, xuất báo cáo thực hiện rất nhanh chóng
theo từng yêu cầu của người dùng.
Chương trình còn được xây dựng cơ chế bảo mật và phân quyền dữ
liệu rất chi tiết, cụ thể, giúp cho nhà quản trị có thể quản lý được người sử dụng theo
nhóm người dùng, quản lý dữ liệu thông qua việc cấp quyền cho từng người dùng, từng
đối tượng dữ liệu.
GVHD: ThS. Trần Minh Tùng
- Trang 6 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
MỤC LỤC
CHƢƠNG I: GIỚI THIỆU ........................................................................................14
1. Lý do hình thành đề tài.....................................................................................14
2. Mục tiêu của đề tài ...........................................................................................15
3. Nội dung đề tài .................................................................................................16
4. Phạm vi đề tài...................................................................................................16
5. Kết quả đạt được ..............................................................................................18
CHƢƠNG II: CƠ SỞ LÝ THUYẾT ........................................................................19
A. Giới thiệu chung ...............................................................................................19
4.Trigger...........................................................................................................31
Tìm hiểu về .Net Framework.........................................................................32
A. Cơ chế bảo mật.................................................................................................43
B. Mã hóa dữ liệu..................................................................................................45
C. Các thuật toán đề xuất......................................................................................51
1. Thuật toán SHA-1.........................................................................................52
3. Thuật toán Tiger...........................................................................................59
4. Thuật toán Whirlpool ...................................................................................63
5. So sánh SHA-1, Tiger, Whirlpool.................................................................72
GVHD: ThS. Trần Minh Tùng
- Trang 7 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
V. Tìm hiểu về XML...............................................................................................74
A. Giới thiệu..........................................................................................................74
B. Những thành phần của một tài liệu XML .........................................................75
C. Lược đồ XML (Schema XML)...........................................................................76
VI. Tìm hiểu về Power Designer 12.5..................................................................77
A. Giới thiệu chung ...............................................................................................77
A. Giới thiệu chung ...............................................................................................81
B. Trụ sở và các chi nhánh ...................................................................................82
A. KHẢO SÁT HIỆN TRẠNG................................................................................82
1. Phần cứng.....................................................................................................83
2. Phần mềm .....................................................................................................83
3. Mạng.............................................................................................................83
4. Dữ liệu ..........................................................................................................84
5. Nhân sự.........................................................................................................84
6. Các quy trình nghiệp vụ ...............................................................................84
7. Cơ cấu tổ chức..............................................................................................86
B. KHẢO SÁT NHU CẦU .....................................................................................88
C. PHÂN TÍCH....................................................................................................100
3. Ràng buộc toàn vẹn ....................................................................................102
III. THIẾT KẾ.....................................................................................................103
A. Thiết kế mô hình mức quan niệm....................................................................103
B. Thiết kế mô hình mức logic ............................................................................104
GVHD: ThS. Trần Minh Tùng
- Trang 8 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
C. Thiết kế mô hình mức vật lý............................................................................104
D. CÀI ĐẶT .........................................................................................................109
2.Cài đặt ràng buộc toàn vẹn .........................................................................110
E. TỪ ĐIỂN DỮ LIỆU........................................................................................112
A. KẾT QUẢ..........................................................................................................118
B. KẾT LUẬN .......................................................................................................147
PHỤ LỤC ....................................................................................................................................... 150
GVHD: ThS. Trần Minh Tùng
- Trang 9 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
DANH SÁCH HÌNH
Hình 1: Toàn cảnh nền tảng dữ liệu SQL Server 2008..................................................19
Hình 3: Giao diện SQL Server 2008..............................................................................24
Hình 5: Giao diện SQL Server với các thủ tục được cài đặt .........................................30
Hình 8: Mô hình Secret key Crytography ......................................................................45
Hình 9: Mô hình Public key Crytography......................................................................48
Hình 11: Ví dụ lược đồ XML..........................................................................................77
Hình 12: Giao diện tạo mô hình mức ý niệm (CDM) ....................................................78
Hình 13: Thuộc tính của thực thể trong mô hình CDM.................................................78
Hình 14: Bước 1 chuyển từ CDM sang PDM................................................................79
Hình 15: Bước 2 chuyển từ CDM sang PDM................................................................80
Hình 16: Bước 3 chuyển từ CDM sang PDM...............................................................80
Hình 17: Trụ sở và các chi nhánh của công ty BRAVO ................................................82
Hình 18: Quy trình đăng ký tài khoản người dùng........................................................84
Hình 19: Quy trình đăng nhập hệ thống........................................................................85
Hình 20: Quy trình đăng xuất khỏi hệ thống .................................................................86
Hình 21: Sơ đồ tổ chức công ty BRAVO........................................................................87
GVHD: ThS. Trần Minh Tùng
- Trang 10 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
Hình 22: Mô hình mức quan niệm ...............................................................................103
Hình 23: Mô hình mức vật lý .......................................................................................105
Hình 25: Mô hình chức năng .......................................................................................114
Hình 26: Mô hình dòng dữ liệu mức ngữ cảnh ...........................................................115
Hình 27: Phân rã chức năng quản lý hệ thống............................................................116
Hình 28: Phân rã chức năng quản lý người dùng .......................................................116
Hình 29: Phân rã chức năng đăng nhập hệ thống.......................................................117
Hình 30: Phân rã chức năng đăng xuất hệ thống........................................................117
Hình 31: Giao diện menu hệ thống..............................................................................121
Hình 32: Giao diện menu dữ liệu.................................................................................122
Hình 33: Menu phân hệ................................................................................................122
Hình 34: Menu danh mục chung..................................................................................123
Hình 35: Menu danh mục báo cáo...............................................................................124
Hình 36: Menu tìm kiếm...............................................................................................124
Hình 37: Menu về chương trình...................................................................................124
Hình 38: Giao diện đăng nhập hệ thống......................................................................125
Hình 39: Giao diện báo lỗi đăng nhập ........................................................................125
Hình 40: Giao diện quản lý người dùng ......................................................................126
Hình 41: Giao diện nhóm người dùng .........................................................................128
Hình 42: Giao diện báo lỗi nhóm người dùng.............................................................129
Hình 43: Giao diện đổi mật khẩu người dùng .............................................................129
GVHD: ThS. Trần Minh Tùng
- Trang 11 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
Hình 45: Quản lý nhóm và quyền hạn trên menu ........................................................136
Hình 46: Giao diện sao lưu dữ liệu .............................................................................138
Hình 47: Giao diện phục hồi dữ liệu ...........................................................................138
Hình 48: Giao diện tìm kiếm tài khoản người dùng ....................................................139
Hình 49: Giao diên in báo cáo tài khoản nhân viên....................................................141
Hình 50: Giao diện báo cáo in sang MS.Word............................................................142
Hình 51: Giao diện báo cáo in sang MS.Excel............................................................142
Hình 52: Giao diện báo cáo in sang PDF ...................................................................143
Hình 53: Giao diện xem nhật ký đăng nhập ................................................................143
Hình 54: Giao diện xem nhật ký lỗi .............................................................................144
Hình 55: Giao diện tìm kiếm thông tin phân quyền.....................................................144
Hình 56: Giao diện in báo cáo quyền được cấp..........................................................146
Hình 57: Hộp thoại PDM Generation Options............................................................150
Hình 58: Hộp thoại PDM Generation Options............................................................151
2008..............................................................................................................................152
GVHD: ThS. Trần Minh Tùng
- Trang 12 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
DANH SÁCH BẢNG
Bảng 1: Các chức năng của tập Collection ...................................................................37
Bảng 3: Sự khác biệt giữa VB6 và VB.Net.....................................................................41
Bảng 4 : Bảng mã hàm mũ.............................................................................................47
bảo mật...........................................................................................................................49
Bảng 6: Các tính chất của các thuật toán băm an toàn.................................................56
Bảng 7: So sánh các thuật toán SHA-1, Tiger, Whirlpool.............................................73
GVHD: ThS. Trần Minh Tùng
- Trang 13 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
CHƢƠNG I
GIỚI THIỆU
1. Lý do hình thành đề tài
Ngày nay, công nghệ thông tin phát triển rất nhanh và được
ứng dụng rộng rãi trong đời sống. Công nghệ thông tin mang lại
cho con người rất nhiều hữu ích, đặc biệt là trong lĩnh vực quản lý
dữ liệu, truy cập thông tin, tra cứu thông tin… Đối với các tổ
chức, doanh nghiệp thì công tác quản lý đòi hỏi ngày càng gọn
nhẹ nhưng phải đảm bảo được việc tra cứu, tìm kiếm, lưu trữ
thông tin phải được thực hiện một cách nhanh chóng, tiện lợi và
phải mang tính chính xác cao nhất. Đứng trước những yêu cầu
trên, các tổ chức, doanh nghiệp ngày càng thấy được tầm quan
trọng của việc tin học hóa các quy trình, nghiệp vụ liên quan đến
hoạt động của mình. Để đáp ứng được nhu cầu thực tế của các tổ
chức, doanh nghiệp nhiều công ty đã xây dựng những phần mềm
phục vụ cho việc quản lý, kinh doanh cho các tổ chức, doanh
nghiệp. Không ngoài mục đích này, chương trình “Xây dựng và
bảo mật hệ thống tích hợp” là chương trình được xây dựng nhằm
để liên kết các phân hệ con: phân hệ quản lý khách hàng (CRMS),
phân hệ quản lý bán hàng (SMS), phân hệ quản lý lương – nhân
sự (HMS), phân hệ quản lý kho (StMS), phân hệ quản lý tài sản cố
định (FMS) thành một chương trình lớn, thống nhất về dữ liệu,
giúp cho các cấp quản lý của các tổ chức, công ty truy xuất, kiểm
tra các thông tin một cách nhanh chóng và chính xác. Nếu như
mỗi phòng ban, mỗi bộ phận của các tổ chức, công ty sử dụng các
phân hệ riêng thì khi đó việc truy xuất, kiểm tra dữ liệu có liên
quan giữa các bên với nhau thì sẽ rất chậm và đôi khi thiếu chính
GVHD: ThS. Trần Minh Tùng
- Trang 14 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
xác. Bên cạnh đó, việc xây dựng cơ chế bảo mật giúp cho dữ liệu
của công ty được đảm bảo an toàn một cách tuyệt đối, việc truy
cập vào dữ liệu của công ty sẽ được phân quyền theo từng cấp độ
tương ứng với từng chức vụ của nhân viên và quyền hạn của
phòng ban nơi nhân viên làm việc.
Thông qua chương trình “Xây dựng và bảo mật hệ thống tích
hợp” giúp công ty cổ phần phần mềm Bravo tiết kiệm được thời
gian và chi phí quản lý doanh nghiệp, bảo mật được dữ liệu kinh
doanh của công ty.
2. Mục tiêu của đề tài
Chương trình “Xây dựng và bảo mật hệ thống tích hợp”
thường được áp dụng vào các phần mềm có nhiều phân hệ con.
Trong đó chương trình đóng vai trò như là một chương trình
chính, liên kết các phân hệ con khác lại với nhau thông qua đường
đi của dữ liệu, tạo thành một dữ liệu tổng hợp.
Chương trình có những điểm tương đương giống như hệ thống
quản trị nguồn lực doanh nghiệp (ERP).
Đảm bảo đường đi của dữ liệu của các phân hệ con phải được
thông suốt:
Phân hệ quản lý bán hàng kết nối với phân hệ quản
lý khách hàng để lấy thông tin về số lượng hàng cần bán.
Phân hệ quản lý khách hàng liên kết với phân hệ
quản lý lương – nhân sự để lấy thông tin về nhân viên quản
lý khách hàng.
Phân hệ quản lý bán hàng liên kết với phân hệ quản
lý kho để lấy thông tin về số lượng hàng.
Phân hệ quản lý bán hàng liên kết với phân hệ quản
lý lương – nhân sự để lấy thông tin về nhân viên bán hàng.
GVHD: ThS. Trần Minh Tùng
- Trang 15 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
Chương trình có những tính năng như: truy cập phân hệ con
trên menu hệ thống, xuất báo cáo tùy theo nhu cầu của từng phân
hệ, tra cứu, tìm kiếm thông tin, phân quyền hệ thống, mã hóa dữ
liệu.
Chương trình xây dựng các tiện ích hỗ trợ người dùng như:
máy tính điện tử, thay đổi giao diện người dùng…
Phân quyền truy cập cơ sở dữ liệu theo bằng việc cấp tài khoản
đăng nhập cho nhân viên với các quyền hạn khác nhau tùy theo vị
trí, phòng ban mà nhân viên đó làm việc.
3. Nội dung đề tài
(1) Khảo sát hiện trạng, nhu cầu tại Công ty cổ phần phần mềm
Bravo.
(2) Phân tích, thiết kế và cài đặt cơ sở dữ liệu.
(3) Thiết kế giao diện người dùng.
(4) Phân quyền sử dụng người dùng.
(5) Cài đặt các thủ tục, hàm, trigger và các chương trình ứng dụng.
4. Phạm vi đề tài
Đề tài được xây dựng dựa trên các phân hệ:
Phân hệ quản lý bán hàng:
Phân hệ phục vụ cho việc quản lý bán hàng của công
ty, giúp theo dõi được thông tin về hàng hóa, thông tin
khách hàng, thông tin hợp đồng… một cách chính xác
và kịp thời.
Phân hệ hỗ trợ việc thống kê báo cáo bán hàng một
cách chính xác và nhanh chóng.
Phân hệ quản lý khách hàng:
GVHD: ThS. Trần Minh Tùng
- Trang 16 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
Xây dựng chương trình quản lý khách hàng cho
công ty nhằm giám sát các hoạt động với khách hàng,
ghi nhận và nhắc nhở chính xác các hoạt động với
khách hàng của công ty.
Quản lý hợp đồng của khách hàng với công ty, các
điều khoản giao dịch thanh toán của khách hàng với
công ty. Ghi nhận lại các hoạt động thanh toán, đặt
hàng, giao hàng của khách hàng và chính sách bảo
hành các sản phẩm của công ty giành cho khách hàng.
Quản lý các kênh bán hàng của công ty để đặt ra
những phương án kinh doanh cho từng kênh bán hàng
khác nhau. Ngoài ra còn xuất ra những báo cáo tổng
kết những hoạt động của công ty theo thời gian và
theo từng đối tượng.
Phân hệ quản lý kho:
Quản lý số lượng tồn kho.
Quản lý số lượng nhập, xuất kho.
Phân hệ quản lý lương – nhân sự:
Quản lý thông tin nhân sự một cách đầy đủ và chi
tiết.
Theo dõi cập nhật thường xuyên thông tin nhân sự,
phòng ban, tổ đội trong doanh nghiệp.
Tính lương cho nhân viên thay đổi theo công thức.
Trích xuất các báo cáo đa dạng, phong phú đáp ứng
yêu cầu trong công tác quản trị nhân sự tiền lương.
Lưu trữ thông tin an toàn, truy xuất và tìm kiếm
thông tin dễ dàng nhanh chóng.
GVHD: ThS. Trần Minh Tùng
- Trang 17 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
Phân hệ quản lý tài sản:
Theo dõi nguyên giá, khấu hao, khấu hao lũy kế và
giá trị còn lại của từng tài sản.
Phân bổ tài sản theo tháng và năm tài sản.
5. Kết quả đạt đƣợc
(1) Tập báo cáo kết quả khảo sát hiện trạng (khảo sát phần cứng,
phần mềm, nhân sự, khảo sát yêu cầu, quy trình, nghiệp vụ…) của
công ty cổ phần phần mềm Bravo.
(2) Tập báo cáo kết quả phân tích, thiết kế và cài đặt cơ sở dữ liệu.
(3) Tập báo cáo kết quả thiết kế giao diện người dùng.
(4) Tập báo cáo kết quả phân quyền sử dụng người dùng.
(5) Chương trình ứng dụng.
GVHD: ThS. Trần Minh Tùng
- Trang 18 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
CHƢƠNG II
CƠ SỞ LÝ THUYẾT
I. Tổng quan về cơ sở dữ liệu SQL Server 2008
A. Giới thiệu chung
Hình 1: Toàn cảnh nền tảng dữ liệu SQL Server 2008
SQL Server 2008 là hệ quản trị cơ sở dữ liệu quan hệ theo
mô hình client/server của Microsoft được ứng dụng phổ biến và
rộng rãi hiện nay với những đặc điểm ưu việt cho phép xây dựng,
phát triển và quản trị các ứng dụng thương mại điện tử và quản
lý.
Phát triển từ phiên bản SQL Server 2005, phiên bản SQL
Server 2008 bổ sung thêm những tính năng ưu việt mà một hệ
quản trị cơ sở dữ liệu mạnh cần phải có.
SQL Server 2008 tổ chức và lưu trữ dữ liệu trong Table, có
thể định nghĩa các Table với nhau, cho phép người dùng truy cập
dữ liệu thông qua ứng dụng Management Studio truy cập trực
GVHD: ThS. Trần Minh Tùng
- Trang 19 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
tiếp đến server để thực hiện các tác vụ như : cấu hình, quản trị,
bảo trì, bảo mật cơ sở dữ liệu.
SQL Server 2008 là hệ quản trị cơ sở dữ liệu cho phép bạn
lưu trữ dữ liệu với số lượng lớn, hỗ trợ hệ thống ra quyết định, hỗ
trợ các công cụ khác nhau giúp bạn xây dựng và triển khai ứng
dụng một cách hiệu quả và có tính bảo mật cao trong môi trường
đa người dùng.
SQL Server 2008 là một hệ thống quản lý cơ sở dữ liệu
(Relational Management System (RDBMS)) sử dụng T–SQL
(Transact SQL) để trao đổi cơ sở dữ liệu giữa Client computer và
Server computer. Một RDBMS bao gồm : Database, Database
Engine và các ứng dụng dùng để quản lý dữ và các bộ phận khác
nhau trong RDBMS.
SQL Server 2008 được thiết kế tối ưu có thể chạy trên môi
trường cơ sở dữ liệu lớn (very large database environment) lên
đến Tetra Byte, có thể phục vụ cùng lúc cho hàng ngàn User.
SQL Server 2008 có thể kết hợp “ăn ý” với các Server khác như
Microsoft Internet Information Service (IIS), Proxy Server, E –
commerce Server…
GVHD: ThS. Trần Minh Tùng
- Trang 20 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
Hình 2: Sơ đồ các thành phần cơ bản của Microsoft SQL SERVER
SQL Server bao gồm các tiện ích :
Book Online: Tiện ích này cho phép chúng ta có thể tra
cứu trực tuyến tất cả các thông tin liên quan đến SQL
Server 2008 một cách đầy đủ với các tính năng tìm kiếm dễ
dàng và một giao diện dễ sử dụng. Nội dung giúp đỡ được
trình bày theo từng phần dễ dàng xem trong các trang
Contents. Ngoài ra các trang Index và Search cho phép tra
cứu nhanh theo chỉ mục đã được sắp xếp trước đó hoặc gõ
vào các từ khóa cần tìm. Khi cần tham khảo cú pháp của
các lệnh, hàm, biến hệ thống… của SQL Server 2008 một
GVHD: ThS. Trần Minh Tùng
- Trang 21 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
cách đầy đủ nhất thì chúng ta vào đây xem là hoàn toàn
chính xác. Tuy nhiên, nội dung trình bày là hoàn toàn bằng
tiếng Anh.
SQL Native Client Configuration: Tiện ích này cho
phép chúng ta thay đổi, tạo mới và lưu lại các nghi thức nối
kết mạng (network protocol) mặc định của máy trạm khi
thực hiện kết nối vào SQL Server 2008 tại các máy chủ.
SQL Server Management Studio: Tiện ích này giúp
chúng ta quản trị một hoặc nhiều SQL Server khác nhau,
với giao diện đồ họa thân thiện (user friendly). Tiện ích này
sẽ giúp có các bạn có thể tạo lập cơ sở dữ liệu và các thành
phần bên trong SQL Server một cách dễ dàng hơn. Tuy
nhiên, muốn quản trị SQL Server thì chúng ta phải đăng ký
(register) máy chủ vào tiện ích này.
Import and Export: Tiện ích này cho phép chúng ta
thực hiện các chức năng trong việc nhập (import), xuất
(export) và chuyển đổi dữ liệu qua lại giữa SQL Server
2008 và những loại cơ sở dữ liệu khác thường dùng như:
Access, Visual Foxpro, Microsoft Excel, tập tin văn bản
ASCII…
Performance Monitor: Tiện ích này cho phép chúng ta
quan sát (monitor) các tài nguyên trên máy chủ trong khi
SQL Server 2008 đang hoạt động theo dạng biểu đồ. Chúng
ta có thể biết được hiện giờ việc sử dụng bộ nhớ máy tính
của SQL Server nhiều hay ít.
Profiler: Tiện ích này cho phép chúng ta phát hiện
những biến cố đã xảy ra của SQL Server khi đang thực hiện
một xử lý nào đó trên máy chủ. Các biến cố này có thể
GVHD: ThS. Trần Minh Tùng
- Trang 22 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
được ghi lại trong một tập tin lưu vết (trace file) để sau này
sử dụng lại cho việc phân tích nhằm phát hiện những vấn
đề khi thực hiện các câu lệnh truy vấn trong xử lý đó. Hoạt
động của tiện ích này gần giống công cụ tìm lỗi trong các
ngôn ngữ lập trình, có nghĩa là chúng ta sẽ thực hiện tuần
tự các câu lệnh trong một xử lý lô (batch) để phát hiện ra
lỗi của một câu lệnh nào đó (nếu có).
Query Editor: Tiện ích này cho phép chúng ta soạn thảo
các tập tin kịch bản (script file) – là tập tin văn bản ASCII
chứa các câu lệnh SQL giao tác trên cơ sở dữ liệu SQL
Server 2008 hoặc có thể thực hiện các truy vấn trực tiếp
trên cơ sở dữ liệu SQL Server và nhận kết quả trực tiếp
ngay sau khi thực hiện truy vấn đó. Tuy nhiên để thực hiện
được tính năng trên thì hệ thống SQL Server 2008 sẽ yêu
cầu chúng ta đăng nhập vào hệ thống với tài khoản hợp lệ
bởi vì SQL Server là một hệ quản trị cơ sở dữ liệu mạng
máy tính. Trong đó, tài khoản đăng nhập sẽ do người quản
trị SQL Server 2008 tạo ra trước đó.
Server 2008 Network Configuration: Tiện ích này cho
phép chúng ta quản lý các thư viện nghi thức kết nối mạng
của máy chủ dùng để lắng nghe các yêu cầu từ các máy
trạm, có nghĩa là các nghi thức kết nối mạng giữa máy chủ
và máy trạm phải ăn khớp nhau để chúng có thể giao tiếp
qua lại. Tuy nhiên, hầu hết các nghi thức kết nối mạng
chuẩn của máy chủ sẽ được định nghĩa trong quá trình cài
đặt.
Server 2008 Network Services: Tiện ích này cho phép
chúng ta quản lý dịch vụ liên quan đến SQL Server 2008.
GVHD: ThS. Trần Minh Tùng
- Trang 23 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
Có thể thực hiện việc: khởi động (start), tạm dừng (pause),
và ngưng lại (stop) các dịch vụ đó. Các dịch vụ (service)
này được xem như là các ứng dụng chạy ngầm định bên
dưới hệ thống trong môi trường Windows.
Hình 3: Giao diện SQL Server 2008
B. Một số công cụ mở rộng của SQL SERVER
Microsoft SERVER cung cấp một bộ các công cụ mở rộng nhằm giúp những
người phát triển ứng dụng giải quyết các bài toán cụ thể mà độ phức tạp của nó
đòi hỏi những tính năng mà bản thân Microsoft SERVER không có những chức
năng đáp ứng được. Để thực hiện được bài toán liên kết và mã hóa cơ sở dữ
liệu, chúng ta tìm hiểu một số công cụ mở rộng sau của Microsoft SERVER:
GVHD: ThS. Trần Minh Tùng
- Trang 24 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
View.
Store procedure và Extended store procedure.
Trigger.
Use-defined function.
Các công cụ trên cũng được sử dụng trong bài toán liên kết và mã hóa cơ sở dữ
liệu của các sản phẩm phần mềm.
1. View
View là một loại bảng ảo mà nội dung của nó được định
nghĩa bởi câu truy vấn. Giống như bảng thực tế, view cũng chứa
một tập hợp các cột và dòng của dữ liệu. Mặc dù vậy view không
tồn tại như một tập hợp các giá trị của dữ liệu được lưu trữ trong
cơ sở dữ liệu. Các dòng và cột dữ liệu trong bảng được tham
chiếu trong câu truy vấn (định nghĩa view) được sinh ra một cách
động (dynamically) khi mà view được tham chiếu tới.
View thực hiện như một bộ lọc trên các bảng được tham
chiếu trong view. Câu truy vấn định nghĩa view có thể tham
chiếu tới một hoặc nhiều bảng hoặc tham chiếu tới view khác
trong cơ sở dữ liệu hiện thời hoặc trên cơ sở dữ liệu khác. Các
câu truy vấn phân tán (distributed) cũng có thể được sử dụng để
định nghĩa view mà sử dụng dữ liệu từ những tài nguyên khác
nhau (không đồng nhất). Nó rất tiện lợi trong trường hợp chúng
ta muốn kết hợp các dữ liệu tương tự nhau trên những SERVER
khác nhau lại, mà dữ liệu trên các SERVER này được lưu trữ trên
các vùng khác nhau.
Không có sự hạn chế nào đối với các câu truy vấn trên view
nhưng có một vài hạn chế trong việc sửa đổi dữ liệu thông qua
chúng.
GVHD: ThS. Trần Minh Tùng
- Trang 25 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
Hình 4: Mô hình view trong Microsoft SQL SERVER
Tạo view
Trước khi tạo view, cần hãy xem xét các nguyên tắc sau:
Chỉ có thể tạo view trên cơ sở dữ liệu hiện thời.
Các tên view cần phải tuân theo các nguyên tắc đối với
các định danh và cần phải là duy nhất đối với mỗi người sử
dụng, không được giống với bất kỳ tên của bảng nào mà
người sử dụng này sở hữu.
Chúng ta có thể xây dựng các view trên các view khác
và trên các thủ tục (procedures) mà tham chiếu các view
(có thể lên tới 32 mức).
Không thể kết hợp các rules hoặc các định nghĩa
DEFAULT cùng với các view.
Không thể kết hợp các trigger AFTER với view, mà chỉ
kết hợp được các trigger INSTEAD OF.
GVHD: ThS. Trần Minh Tùng
- Trang 26 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
Truy vấn định nghĩa view không được chứa các điều khoản
ORDER BY, COMPUTE, COMPUTE BY hoặc từ khoá INTO.
Không được định nghĩa chỉ số full-text trên view.
Không thể tạo các view tạm, và không thể tạo các view trên
bảng tạm.
Các view hoặc các bảng tham gia trong view được tạo với
điều khoản SCHEMABINDING không thể bị huỷ, trừ khi view
bị huỷ hoặc bị thay đổi mà nó không còn có sơ đồ liên kết. Hơn
nữa, các câu lệnh ALTER TABLE trên các bảng tham gia trong
view có sơ đồ liên kết sẽ bị lỗi nếu các câu lệnh này ảnh hưởng
đến định nghĩa view.
Không thể thực hiện được các truy vấn full-text đối với view,
mặc dù định nghĩa view có thể bao gồm truy vấn full-text nếu
truy vấn tham chiếu bảng được cấu hình cho việc đánh chỉ số
full-text.
Cần phải chỉ rõ tên của từng cột trong view nếu:
Mọi cột trong view nhận được từ biểu thức toán học,
hàm built-in, hoặc hằng số.
Hai hoặc nhiều hơn các cột trong view có cùng tên.
Ta muốn cho mọi cột trong view một cái tên khác với
tên cột mà nó bắt nguồn từ đó ra.
Để tạo view ta cần được gán quyền như người sở hữu cơ sở
dữ liệu và cần phải có các quyền hạn thích hợp trên mọi bảng
hoặc view được tham chiếu trong định nghĩa view.
Định nghĩa của các view có tính chất nhạy cảm có thể được
mã hoá để đảm bảo rằng định nghĩa của nó không ai có thể lấy
được, kể cả chủ sở hữu của view.
GVHD: ThS. Trần Minh Tùng
- Trang 27 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
2. Store procedure
Khi tạo ứng dụng với Microsoft SQL SERVER, ngôn ngữ
lập trình Transact-SQL là giao diện lập trình chính giữa các ứng
dụng và cơ sở dữ liệu SQL SERVER. Khi sử dụng các chương
trình Transact-SQL, có hai giải pháp để lưu trữ và thực thi
chương trình. Có thể lưu trữ các chương trình cục bộ và tạo các
ứng dụng để gửi các câu lệnh tới SQL SERVER và xử lý các kết
quả, hoặc có thể lưu trữ các chương trình như các thủ tục lưu trữ
trong SQL SERVER và tạo các ứng dụng thực hiện các thủ tục
lưu trữ và xử lý kết quả.
Các thủ tục lưu trữ trong SQL SERVER tương tự như các
thủ tục trong các ngôn ngữ lập trình khác đối với những khả
năng:
Chấp nhận các tham số đầu vào và trả về các dữ liệu ở
dạng các tham số đầu ra.
Chứa các câu lệnh lập trình thực hiện các thao tác trong
cơ sở dữ liệu, bao gồm cả việc gọi các thủ tục khác.
Trả về giá trị trạng thái đối với việc gọi thủ tục để xác
định kết quả là thành công hay đã xảy ra lỗi.
Có thể sử dụng câu lệnh Transact-SQL là EXECUTE để
chạy thủ tục lưu trữ. Các thủ tục lưu trữ khác với các hàm là
chúng không trả về các giá trị trong vị trí tên của chúng và không
sử dụng trực tiếp trong các biểu thức.
Hiệu quả của việc sử dụng các thủ tục lưu trữ trong SQL
SERVER khác với các chương trình Transact-SQL được lưu trữ
cục bộ trên các máy client là:
Chúng cho phép lập trình khối (modular)
GVHD: ThS. Trần Minh Tùng
- Trang 28 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
Có thể tạo thủ tục chỉ một lần, lưu chúng trong cơ
sở dữ liệu, và gọi chúng nhiều lần trong chương trình.
Các thủ tục lưu trữ có thể được tạo bởi người chuyên
phụ trách việc lập trình cơ sở dữ liệu, và có thể sửa
đổi độc lập với mã nguồn của chương trình.
Thực thi nhanh
Nếu thao tác yêu cầu một số lượng mã Transact-
SQL hoặc được thực hiện lặp lại nhiều lần, các thủ tục
lưu trữ có thể thực hiện nhanh hơn các gói mã
Transact-SQL. Chúng được phân tích và tối ưu khi
chúng được tạo, và phiên bản trong bộ nhớ (in-
memory) của thủ tục có thể được sử dụng sau khi thủ
tục được thực hiện lần đầu tiên. Các câu lệnh
Transact-SQL tuần tự gửi tới từ client mỗi lần chúng
chạy được biên dịch và tối ưu mỗi một lần chúng
được thực hiện bởi SQL SERVER.
Giảm thiểu việc truyền tin trên mạng
Thao tác đòi hỏi hàng trăm dòng lệnh Transact-SQL
có thể được thực hiện chỉ bởi một câu lệnh thực hiện
mã lệnh trong thủ tục sẽ lợi hơn việc gửi hàng trăm
câu lệnh trên mạng.
Sử dụng như một kỹ thuật an toàn
Người sử dụng có thể được gán quyền thực thi các
thủ tục lưu trữ kể cả khi họ không có quyền trực tiếp
thực hiện các câu lệnh cụ thể trong thủ tục.
Thủ tục lưu trữ SQL SERVER được tạo bởi câu lệnh
Transact-SQL là CREATE PROCEDURE và có thể được sửa đổi
GVHD: ThS. Trần Minh Tùng
- Trang 29 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
với câu lệnh ALTER PROCEDURE. Định nghĩa thủ tục lưu trữ
có chứa hai thành phần chính: thành phần xác định tên của thủ
tục và các tham số của nó, và thành phần thân của thủ tục có chứa
các câu lệnh Transact-SQL thực hiện các thao tác của thủ tục.
Hình 5: Giao diện SQL Server với các thủ tục được cài đặt
3. Extended store procedure
Các thủ tục lưu trữ mở rộng cho phép chúng ta tạo các thủ
tục riêng bên ngoài bằng các ngôn ngữ lập trình như C. Đối với
người sử dụng các thủ tục lưu trữ mở rộng cũng giống như các
thủ tục lưu trữ và thực thi cùng một phương pháp. Các tham số có
thể được truyền tới các thủ tục lưu trữ mở rộng và chúng có thể
trả về kết quả và trạng thái trả về. Các thủ tục lưu trữ mở rộng có
thể được sử dụng để mở rộng các khả năng của Microsoft® SQL
SERVER™ .
GVHD: ThS. Trần Minh Tùng
- Trang 30 -
SVTT: Lê QuangTuyến
ĐỀ TÀI
XÂY DỰNG VÀ BẢO MẬT HỆ THỐNG TÍCH HỢP
Các thủ tục lưu trữ mở rộng là các thư viện liên kết động
(DLL) mà SQL SERVER có thể tải và thực thi động. Các thủ tục
lưu trữ động chạy trực tiếp trong địa chỉ không gian của SQL
SERVER và được lập trình sử dụng SQL SERVER Open Data
Services API.
Sau khi thủ tục lưu trữ mở rộng được viết, các thành viên của
sysadmin fixed SERVER role có thể đăng ký thủ tục lưu trữ mở
rộng với SQL SERVER và sau đó gán quyền cho người sử dụng
khác để thực hiện thủ tục. Các thủ tục lưu trữ mở rộng chỉ có thể
đặt vào cơ sở dữ liệu master.
4. Trigger
Microsoft® SQL SERVER™ cung cấp hai kỹ thuật chính
đối với các nguyên tắc bắt buộc và toàn vẹn dữ liệu: các ràng
buộc và các trigger. Trigger là dạng đặc biệt của thủ tục lưu trữ
mà tự động có hiệu lực khi dữ liệu trong bảng chỉ định bị thay
đổi. Các trigger được gọi đến trong sự trả lời cho các câu lệnh
INSERT, UPDATE hoặc DELETE. Trigger có thể truy vấn các
bảng khác và có thể chứa các câu lệnh Transact-SQL phức tạp.
Trigger có ích trong các trường hợp sau:
Trigger có thể tạo một dòng các thay đổi thông qua các
bảng quan hệ trong cơ sở dữ liệu; mặc dù vậy các thay đổi
có thể được thực hiện một cách hiệu quả hơn bằng cách sử
dụng các ràng buộc toàn vẹn.
Trigger có thể bắt buộc phải tuân thủ những sự hạn chế
phức tạp hơn những sự hạn chế được định nghĩa với các
ràng buộc CHECK.
GVHD: ThS. Trần Minh Tùng
- Trang 31 -
SVTT: Lê QuangTuyến
Tải về để xem bản đầy đủ
Bạn đang xem 30 trang mẫu của tài liệu "Luận văn Xây dựng và bảo mật hệ thống tích hợp", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.
File đính kèm:
luan_van_xay_dung_va_bao_mat_he_thong_tich_hop.pdf