Nội dung của tài liệu bao gồm 4 chương, trình bày cụ thể như sau: Cơ sở dữ liệu quan hệ; Ngôn ngữ truy vấn dữ liệu; Lý thuyết thiết kế cơ sở dữ liệu; Bảo mật và toàn vẹn dữ liệu. Mời các bạn cùng tham khảo nội dung tài liệu phần 2 dưới đây.
121 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU CHƯƠNG LÝ THUYẾT THIẾT KẾ CƠ SỞ DỮ LIỆU Mục tiêu: Chương trình bày khái niệm lý thuyết sở liệu quan hệ E.F Codd đề xuất, khái niệm quan hệ, khóa lược đồ quan hệ Những khái niệm có vai trị quan trọng việc thiết kế cài đặt hệ sở liệu quan hệ hệ quản trị sở liệu Nội dung chương bao gồm phần: Phụ thuộc hàm Bao đóng Phủ tối thiểu Khóa lược đồ quan hệ Phép tách – kết nối Các dạng chuẩn lược đồ quan hệ Các phương pháp chuẩn hóa lược đồ quan hệ 3.1 Phụ thuộc hàm 3.1.1 Định nghĩa phụ thuộc hàm Cho quan hệ R xác định tập thuộc tính U, kí hiệu R(U) X, Y tập U, ta nói X xác định Y hay Y phụ thuộc hàm vào X, kí hiệu X Y quan hệ R ta có giá trị t1, t2 mà giá trị tập thuộc tính X t1 (kí hiệu t1[X]) giá trị tập thuộc tính X t2 (kí hiệu t2[X]) t1[Y]) = t2[Y]) Phụ thuộc hàm ký hiệu FD Cần ý xét phụ thuộc hàm thỏa mãn cho quan hệ lược đồ tương ứng Khơng thể xem xét phụ thuộc hàm thỏa mãn quan hệ r đặc biệt ( ví dụ quan hệ rỗng) lược đồ R sau qui nạp phụ thuộc hàm thỏa R KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 122 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU S (S# STATUS SP (S# P# CITY) P (P# PNAME COLOR WEIGHT CITY) QTY) Trong quan hệ S hàng cung ứng, số thuộc tính SNAME, STATUS, CITY phụ thuộc hàm vào thuộc tính S# Mỗi giá trị S# tồn vừa giá trị tương ứng thuộc tính SNAME, STATUS, CITY Khi viết: S# → SNAME, S# → STATUS S# → CITY 3.1.2 Phụ thuộc hàm đầy đủ không đầy đủ Phụ thuộc hàm (FD) đầy đủ: Một FD X Y phụ thuộc hàm đầy đủ loại bỏ thuộc tính A khỏi X FD khơng cịn Phụ thuộc hàm không đ ầy đủ (FD phận): Một FD X Y phụ thuộc hàm phận bỏ thuộc tính A X khỏi X mà FD 3.1.3 Hệ tiên đề Amstrong Gọi F tập tất phụ thuộc hàm lược đồ quan hệ R(U) X→Y phụ thuộc hàm, X,Y⊆ U Nói X→Y suy diễn logic từ F mối quán hệ r R(U) thỏa phụ thuộc hàm F thỏa X→Y Chẳng hạn F= {A→B,B→C} A→C suy từ F Gọi F+ bao đóng (closure) F, tức tập tất phụ thuộc hàm suy diễn logic từ F F= F+ F họ đầy đủ( full family) phụ thuộc hàm Để xác định khóa lược đồ quan hệ suy diễn logic phụ thuộc hàm cần thiết phải tính F+ từ F Do địi hỏi phải có hệ tiên đề Tập quy tắc hệ tiên đề Armstrong (1974) đưa ra, thường gọi hệ tiên đề Armstrong KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 123 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU Gọi R(U) lược đồ quan hệ với U= {A1, … , An} tập thuộc tính X,Y, Z, W ⊆ U Hệ tiên đề Armstrong bao gồm : A1(phản xạ): Y⊆X X→Y A2(tăng trưởng):nếu Z⊆U X→Y XZ→YZ ký hiệu XZ tập hợp tập X Z thay cho ký hiệu X∪Z A3(bắc cầu): X→Y Y→Z X→Z Ví dụ : AB→C, C→A Cần chứng minh BC→ABC Thật từ : C→A ( giả thiết) BC→AB ( luật tăng trưởng (1) thêm B) AB→C ( giả thiết) AB→ABC ( tăng trưởng (3) thêm AB) BC→ABC ( bắc cầu từ (2) (4)) Định lý : Hệ tiên đề Armstrong Có nghĩa F tập phụ thuộc hàm quan hệ r X→Y phụ thuộc hàm suy diễn từ F nhờ hệ tiên đề Armstrong X→Y quan hệ r Chứng minh : Lần lượt kiểm tra tính đắn ba tiên đề A1, A2, A3 A1 : Tiên đề A1 rõ ràng khơng thể có hai X mà lại không tập A2 : Giả sử quan hệ r thỏa mãn X→Y Tồn hai bột, u ∈r cho t[XZ] = u[ZX] mà t[YZ] ≠ u[YZ] Vì t[Z] = u[Z] nên để có t[YZ] ≠ u[YZ] t[Y] ≠ u[Y] Nhưng t[X] = u[X] nên t[Y] ≠ u[Y] trái với giả thiết X→Y Vì A2 KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 124 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU A3 : Cho X→Y Y→Z quan hệ r Giả sử tồn hai t, u∈r cho t[Y] = u[Y] Nhưng lại có t[Y] = u[Y] t[Z] ≠ u[Z] trái với giả thiết Y→Z Do t[Z] = u[Z] Suy X→Z quan hệ r Từ hệ tiên đề Armstrong suy số luật sau : Định lý : a Luật hợp: X→Y X→Z X→YZ b Luật tựa bắc cầu: X→Y WY→X XW→Z c Luật tách: X→Y Z⊆Y X→Z Chứng minh: a Từ X→Y dùng luật tăng trưởng thêm X có X→XY, dùng luật bắc cầu ta có điều phải chứng minh b Từ X→Y, dùng luật tăng trưởng, thêm W có WX→WY Dùng luật bắc cầu cho WX→WY Wy→Z suy WX→Z c Vì Z⊆Y nên Y→Z theo luật phản xạ Dùng luật bắc cầu cho X→Y Y→Z có X→Z 3.1.4 Bao đóng 3.1.4.1 Bao đóng tập phụ thuộc hàm Định nghĩa: Cho quan hệ R xác định tập thuộc tính U, F tập phụ thuộc hàm Tập hợp tất phụ thuộc hàm suy diễn logic từ tập F gọi bao đóng F kí hiệu F+ Ví dụ: Cho quan hệ R, U ={ A, B, C, D, E, I } F= {AI, ACD, BC, DE} Ta có: BC (gt) AB AC (tăng trưởng thêm A vào (1)) AC D (gt) KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 125 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU AB D (bắc cầu (2) (3)) CM tương tự có: AC E, AB E Vậy: F+ ={AI, ACD, BC, DE, ABD, ACE, ABE} 3.1.4.2 Bao đóng tập thuộc tính Định nghĩa: Cho quan hệ R xác định tập thuộc tính U, gọi F tập phụ thuộc hàm tập U, X U, X+ bao đóng X tập F định nghĩa sau: X+ = { X A / X A F+ } 3.1.4.3 Thuật tốn tìm bao đóng Input: U, F; X, Y, Z U Output: X+ Phương pháp: Tính liên tiếp tập thuộc tính X0, X1, … theo quy tắc: B1: X0 = X Bi: Xi+1 = Xi A Nếu tồn phụ thuộc hàm Y Z thuộc F+ mà A Z, Y Xi Do X U mà U hữu hạn nên i hữu hạn, X+ = Xi+1 Ví dụ: Cho quan hệ R xác định U, với U = { A, B, C, D, E, I}; F= {AI, ACD, BC, DE} Tìm (AC)+ Giải: X0 = AC X1= ACDI (vì A I, AC D) X2= ACDIE (vì D E) Vậy: (AC)+ = ACDEI KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 126 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU 3.1.5 Phủ tối thiểu Phủ tập phụ thuộc hàm : Gọi F G tập phụ thuộc hàm Nói F, G tương đương F+ = G+ Nếu F, G tương đương cịn nói F phủ G (và G phủ F) Dễ dàng kiểm tra liệu F G có tương đương với hay không Phương pháp kiểm tra: Lấy phụ thuộc hàm Y→Z thuộc F, kiểm tra xem liệu Y→Z có thuộc G+ khơng ? Dùng thuật tốn 3.1 để tính Y+ kiểm tra liệu Z⊆ Y+ hay không ? Nếu tồn phụ thuộc hàm Y→Z thuộc F mà khơng phụ thuộc G+ chắn F+ ≠ G+ Nếu phụ thuộc hàm thuộc F thuộc G+ phụ thuộc hàm V→W thuộc F+ thuộc G+ Để kiểm tra phụ thuộc G thuộc F+ q trình làm hồn tồn tương tự Do F G tương đương phụ thuộc hàm thuộc F thuộc G+ phụ thuộc hàm thuộc G thuộc F+ Định lý : Mỗi tập phụ thuộc hàm F phủ tập phụ thuộc hàm G mà vế phải phụ thuộc hàm bao gồm khơng q thuộc tính Chứng minh : Gọi G tập phụ thuộc hàm X→A cho với X→Y thuộc F A∈Y TừX→Y suy X→A Do G⊆ F+ Ngược lại, có F⊆ G+ Y= A1…An X→Y suy từ : X→A1, … , X→An nhờ luật hợp Để phục vụ trình thiết kế lược đồ sở liêu, sau đưa số khái niệm: Gọi tập phụ thuộc hàm F tối thiểu nếu: a Mỗi vế phải phụ thuộc hàm thuộc F có thuộc tính b Khơng tồn phụ thuộc hàm X→A thuộc F mà F+ = (F- {X→A}) + KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 127 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU c Không tồn phụ thuộc hàm X→A thuộc F tập hợp Z X mà F+= (F- {X→A}∪ {Z→A}) + Thực vậy, điều kiện b đảm bảo cho tập F khơng có phụ thuộc hàm mà dư thừa, điều kiện C đảm bảo khơng có thuộc tính nao tham gia phía trái phụ thuộc hàm dư thừa Vế phải phụ thuộc hàm điều kiện a có thuộc tính đảm bảo chắn khơng có thuộc tính vế phải dư thừa Định lý Mỗi tập phụ thuộc hàm F tương đương với tập F’ tối thiểu Chứng minh: Giả sử không vế phải phụ thuộc hàm F có nhiều thuộc tính Để kiểm tra điều kiện b, xét (X→Y) ∈F Nếu (F- {X→Y}) + =F+ loại bỏ X→Y khỏi F Chú ý phụ thuộc hàm theo thứ tự khác cho kết khác Ví dụ: Cho tập F gồm: A→B, A→C, B→C, B→A, C→A Có thể loại bỏ F : B→A A→C loại bỏ B→C đồng thời loại bỏ ba phụ thuộc hàm Như điều kiện b thỏa Cần kiểm tra điều kiện c cho tập phụ thuộc lại F Ở cần lưu ý tới thứ tự thuộc tính xuất bên vế trái phụ thuộc hàm Loại bỏ thuộc tính vế trái phụ thuộc hàm cho tập thuộc tính tương đương Q trình tiếp tục loại bỏ phụ thuộc hàm Như tập phụ thuộc hàm lại F tạo nên F’ thỏa ba điều kiện tập tối thiểu KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 128 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU Tìm phủ tối thiểu B1: Tách thuộc tính vế phải phụ thuộc hàm thành nguyên tử (Vế phải phụ thuộc hàm có thuộc tính) B2: Loại bỏ phụ thuộc hàm dư thừa Giả sử: Xét phụ thuộc hàm XY Tính X+ tập F’ (F’ loại bỏ FD XY ) Nếu X+ Y loại XY khỏi tập F B3: Loại bỏ thuộc tính dư thừa vế trái Giả sử: Xét phụ thuộc hàm XYZ (Loại X loai Y?) Xét XZ tính X+ (trên tập F) Y X+ Loại Y Xét YZ tính Y+ (trên tập F) X Y+ Loại X Vậy, tập phụ thuộc hàm lại phủ tối thiểu cần tìm Ví dụ: Cho F = {X → Z, XY → WP, XY → ZWQ, XZ → R} Xác định tập phủ tối thiểu từ tập F? Giải: B1 Tách vế phải phụ thuộc hàm cho chứa thuộc tính: F = {X→Z, XY→W, XY →P, XY→Z, XY →W, XY → Q, XZ → R} B2 Loại bỏ phụ thuộc dư thừa: xét phụ thuộc hàm + Xét X→Z Tính X+ F-{X→Z} Có X+ =X ko chứa Z + Xét XY →W (vì tập phụ thuộc hàm F có phụ thuộc hàm nên loại đi) KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 129 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU F={X→Z, XY→W, XY →P, XY→Z, XY → Q, XZ → R} + Xét XY→Z (XY)+=XYZWPQ (Tính (XY)+ F-{ XY→Z}) Ta thấy Z ⊂ (XY)+ loại XY→Z F: = {X→Z, XY →W, XY →P, XY → Q, XZ → R} B3 Loại bỏ thuộc tính vế trái dư thừa: xét tất phụ thuộc hàm mà VT có từ thuộc tính trở lên: + Xét XY→W: X→W có X+=XZR khơng chứa Y nên Y ko dư thừa Y→W có Y+=Y khơng chứa X nên X ko dư thừa Tương tự xét: XZ → R Có X+=XZR chứa Z nên Z dư thừa Ta có phủ tối thiểu: G: = {X→Z, XY →W, XY →P, XY → Q, X → R} 3.1.6 Khóa Thuật tốn tìm tất khóa Tìm tập thuộc tính nguồn (TN): Chứa tất thuộc tính xuất vế trái (VT) không xuất vế phải (VP) phụ thuộc hàm thuộc tính khơng xuất VT lẫn VP phụ thuộc hàm Tập thuộc tính trung gian (TG): Chứa tất thuộc tính xuất VT lẫn VP phụ thuộc hàm Thuật toán: B1: Tạo tập TN TG B2: Nếu TG = lược đồ quan hệ có khóa K = TN Kết thúc, KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 130 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU Ngược lại, chuyển sang B3 B3: Tìm tất tập Xi tập trung gian TG B4: Tìm tất siêu khoá Si cách với Xi : Nếu (TN Xi )+ = Tập thuộc tính R Thì Si = TN Xi B5: Tìm khóa cách loại bỏ siêu khóa không tối thiểu Si, Sj S, Si Sj Loại Sj khỏi tập siêu khố S; Si cịn lại tập khóa cần tìm Ví dụ: Cho lược đồ quan hệ R(C,S,Z) tập phụ thuộc hàm sau: F = {CS → Z, Z → C} Tìm tất khóa R? Ta có: TN={S}, TG={C,Z} Xi (Xi TN) (Xi TN)+ S S C CS Z CZ Siêu khóa Khóa CSZ CS CS SZ CSZ SZ SZ CSZ CSZ CSZ 3.2 Phép tách - kết nối 3.2.1 Khái niệm Phép tách lược đồ quan hệ R = {𝐴1 … … , 𝐴𝑛 } việc thay lược đồ quan hệ R cặp lược đồ {𝑅1 ……,𝑅𝑘 } 𝑅𝑖 ⊆ R, i = l, …., k R = 𝑅1 ∪ 𝑅2 ∪… ∪ 𝑅𝑘 KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 186 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU *Rằng buộc nhiều quan hệ: -Rằng buộc khóa -Rằng buộc toàn vẹn tham chiếu b Rằng buộc toàn vẹn động Là buộc nhằm đặc tả thay đổi trạng thái đắn CSDL Bao gồm: - Rằng buộc định nghĩa luật ứng xử - Rằng buộc định nghĩa tiền đề, hậu đề *Rằng buộc định nghĩa luật ứng xử: Các buộc hành động phải thực đáp lại thay đổi trạng thái đến CSDL *Rằng buộc định nghĩa tiền đề, hậu đề - Rằng buộc loại tiền đề - Rằng buộc loại hậu đề - Rằng buộc tiền hậu đề VD: khơng loại bỏ1khách hàng cịn có đơn hàng chưa tốn 5.3 Vấn đề an tồn quyền truy nhập sở liệu - Dữ liệu lưu trữ CSDL cần phải bảo vệ để tránh việc truy nhập trái phép phá hoại có chủ định hay khơng chủ định thực cập nhật, sửa đổi hay bổ sung thông tin sở liệu - Cần phải có biện pháp bảo vệ chống lại việc đưa liệu vào cách không quán ảnh hưởng nghiêm trọng đến tính tồn vẹn liệu Các dạng truy cập có chủ định bao gồm: KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 187 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU Không cho phép đọc liệu Không cho phép sửa đổi liệu Không cho phép phá huỷ liệu 5.3.1 Sự vi phạm an toàn sở liệu - Vấn đề an toàn sở liệu đề cập đến việc bảo vệ chống lại truy cập có chủ định - Việc bảo vệ tuyệt đối hệ sở liệu khỏi truy nhập không thể, phải có biện pháp đủ mạnh để ngăn chặn hầu hết truy cập trái phép vào sở liệu Các dạng truy cập có chủ định bao gồm: Không cho phép đọc liệu Không cho phép sửa đổi liệu Không cho phép phá huỷ liệu 5.3.2 Các mức độ an toàn sở liệu Mức độ an toàn hệ thống sở liệu Mức độ an toàn hệ thống điều hành An toàn mức độ mạng Nhận diện người sử dụng Bảo vệ mức vật lý Kiểm tra truy nhập - Mức độ an toàn hệ thống sở liệu: Tùy thuộc vào yêu cầu người sử dụng mà người quản trị sở liệu cấp phép truy nhập phần vào sở liệu Những người sử dụng khác phép thực câu hỏi truy vấn, bị ngăn cấm ý định sửa đổi liệu KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 188 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU - Mức độ an toàn hệ thống điều hành: Mức hệ thống kiểm sốt tồn mức điều hành hệ thống Vấn đề an toàn mức hệ thống điều hành đảm bảo mức độ an toàn hệ thống sở liệu An toàn hệ điều hành tiến hành nhiều cấp độ từ xếp mật mã truy cập vào hệ thống cô lập trình xử lý hệ thống Tệp hệ thống cung cấp số cấp độ bảo vệ Sự tham khảo ý thư mục bao quát chủ đề học hệ thống điều hành - An toàn mức độ mạng Hầu hết hệ thống sở liệu cho phép truy cập từ xa thông qua thiết bị đầu cuối An toàn liệu mức độ mạng chống ăn cắp thông tin, chép thông tin sửa đổi nội dung thông tin đường truyền Vân đề an toàn cấp mức mạng đạt nhiều kết quả, ứng dụng phổ biến mạng Internet Danh sách ý thư mục bao quát tảng nguyên lý vấn đề an toàn mạng - Nhận diện người sử dụng: Từ định nghĩa an tồn liệu suy rằng, hệ quản trị sở liệu DBMS không cho phép người sử dụng thực thao tác không phép người quản trị CSDL Người quản trị CSDL phải: Xác định cho hệ thống thao tác mà người sử dụng phép thực Cung cấp phương tiện cho người sử dụng để hệ thống nhận biết họ Nói chung người sử đụng trao quyền khác Những quyền bảo đảm quyền đọc số phần sở liệu, quyền chèn thêm, xóa hay sửa đổi liệu Hình thức thơng dụng để nhận người sử dụng mật khẩu, có hệ thống người sử dụng biết Mật hệ thống bào vệ bảo vệ liệu - Bảo vệ mức vật lý: Một mơ hình bảo vệ đáng tin cậy có khả bị công vào sở liệu, từ việc phá mật đến việc đánh cắp thiết bi Có thể chống đánh cắp hiệu cách mã hóa, che dấu liệu Một hệ thống có bảo mật cao cần phải có phương thức nhận diện khác tốt mật khẩu, nhận diện người sử dụng qua nhân viên bảo vệ, kết với quy định hành KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 189 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU - Kiểm tra truy nhập: Với người sử dụng hệ thống quản lý hồ sơ phát sinh từ việc chi tiết thủ tục xuất trình, xác minh chi tiết quyền thao tác mà người quản trị sở liệu cấp cho người sử dụng Hệ thống kiểm tra tính pháp lý thao tác người sử dụng Ví dụ yêu cầu đọc lời đánh giá hàng năm nhân viên, phép sở liệu có chứa thông tin quy định người yêu cầu phải Giám đốc, trưởng, phó phịng tổ chức, chánh văn phịng Tất đối tượng khác khơng có sở liệu không phép truy xuất DBMS kiểm tra thao tác người sử dụng xem có vi phạm ràng buộc an tồn hay khơng, có phải huỷ bỏ Một ràng buộc truy nhập nói chung có liên quan đến phận sở liệu Do tồn đặc quyền thích hợp, giả sử chương trình kiểm tra yêu cầu người sử dụng Chương trình xếp quyền truy nhập theo mức độ phức tạp tăng dần cho đạt tới định cuối nhanh An ninh tất cấp độ phải trì an ninh sở liệu bảo đảm Một yếu vấn đề an toàn cấp thấp (cấp độ vật lý hay cấp độ người) cho phép phá vỡ biện pháp an toàn nghiêm ngặt cấp độ cao (cấp độ hệ thống sở liệu) 5.3.3 Những quyền hạn sử dụng sở liệu Đọc cách hợp pháp: người sử dụng phép đọc, không sửa đổi nội dung liệu Chèn cách hợp pháp: cho phép người sử dụng chèn thêm liệu vào sở liệu, khơng sửa đổi liệu có Sửa đổi cách hợp pháp: cho phép người sử dụng phép sửa đổi nội dung liệu, không xoá liệu Xoá cách hợp pháp: cho phép người sử dụng phép xoá liệu Cho phép việc tạo xoá số Cho phép việc tạo mối quan hệ KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 190 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU Sửa đổi cấu trúc: cho phép chèn thêm, sửa đổi xố thuộc tính quan hệ Bỏ hợp pháp: cho phép xoá quan hệ Một người sử dụng có tất quyền trên, có số quyền hạn định Thêm vào dạng cho phép truy cập liệu ban cho người sử dụng phép sửa đổi cấu sở liệu Cho phép bỏ xoá khác xố hợp pháp cho phép xoá liệu Nếu người sử dụng xoá tất quan hệ, quan hệ tồn quan hệ khơng cịn Nếu quan hệ bị bỏ khơng cịn tồn Các mệnh đề sau vài ý niệm phạm vi bảo vệ thông tin hệ sở liệu, mức truy nhập CSDL trao quyền cho lớp người sử dụng: Người sử dụng phép truy nhập khơng điều kiện tới tồn sở liệu, với phép toán lưu trữ truy vấn liệu Người sử dụng không phép truy nhập tới phận sở liệu, với phép toán Người sử dụng đọc nội dung cơng việc họ sở liệu, không phép sửa đổi, bổ sung Người sử dụng đọc nội dung cơng việc họ sở liệu, phép sửa đổi, bổ sung 5.Người sử dụng đọc sửa đổi thuộc tính mã nhân viên, họ tên nhân viên, đơn vị công tác theo định kỳ vào tuần đầu tháng Người sử dụng cấm đọc thuộc tính nhận xét hàng năm, thuộc tính mức lương ngày lên lương đọc sửa đổi, thuộc tính khác đọc Công việc thực khoảng thời gian từ đến 11 ngày tuần cuối tháng Người sử dụng có quyền sử dụng phép tốn thống kê cho thuộc tính mức lương để tính mức lương trung bình đơn vị Cấm sửa đổi liệu KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 191 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU - Đối tượng truy nhập liệu quyền truy nhập:read, insert, select, delete, write, update (điều chỉnh giá trị thuộc tính), expand (thêm thuộc tính), drop (loại bỏ tệp), index (tạo mục)… - Đối tượng truy nhập chương trình quyền truy nhập: run (thi hành chương trình)… Khung nhìn –một chế bảo vệ: Khung nhìn, cách định nghĩa lại sở dử liệu khái niệm, khơng tạo điều kiện thuận lợi lập trình trình ứng dụng làm tăng tính độc lập liệu logic, mà sử dụng chế bảo vệ Có hai loại khung nhìn: - Loại khung nhìn đọc, khơng cho phép sửa đổi Loại khung gọi khung đọc.Trong nhiều trường hợp, người quản trị CSDL cho phép người sử dụng đọc liệu, người khác vừa đọc, vừa quyền sửa đồi, bổ sung - Loại khung nhìn thứ hai cho phép đọc ghi lên thành phần khung nhìn sửa đồi cho khung nhìn lưu lược đồ khái niệm SQL đề xuất cho phép đọc/ghi khung nhìn phạm vi định Với phương pháp thiết kế chương trình ứng dụng linh hoạt loại khung đọc Tuy nhiên, thao tác cập nhật khung nhìn đọc/ghi thường gây tác động đến số thành phần sở liệu khơng nằm khung nhìn Ví dụ: Trong hệ CSDL phân cấp, khung nhìn có kiểu ghi gốc, khơng có ghi phụ thuộc Nếu xóa xuất kiểu ghi nay, kéo theo phải xóa xuất ghi phị thuộc Đây hành động không hợp lệ, vi phạm nguyên tắc khơng cho người sử dụng phép xóa đối tượng mà họ khơng thấy khung nhìn Cũng tương tự mơ hình mạng, xóa ghi ghi khác nằm ngồi khung nhìn bhưng có quan hệ với Và nhiều trường KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 192 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU hợp khác tương tự Vì vậy, tất hệ quản trị sở liệu DBMS giới hạn quyền cập nhật khung nhìn số trường hợp cụ thể Ví dụ hoạt động ngân hàng, thư ký cần biết tên tất khách hàng có khoản vay nhiều chi nhánh Người thư ký không phép xem thông tin khoản vay đặc biệt mà khách hàng có Hành động thư ký bị từ chối truy nhập trực tiếp tới quan hệ cho vay, truy nhập khung nhìn cust-loan bao gồm thơng tin như: tên khách hàng chi nhánh nơi mà khách có khoản vay Khung nhìn định nghĩa SQL sau: CREATE VIEW cust-loan AS (SELECT branch-name, customer-name FROM borrower, loan WHERE borrower.loan-number= loan.loan-number) Giả sử cô thư ký đưa truy vấn SQL sau: SELECT * FROM cust-loan Như người thư ký phép xem kết truy vấn trên, nhiên trình xử lý truy vấn thực quan hệ BORROWER and LOAN Vì hệ thống phải kiểm tra quyền hạn truy vấn thư ký trước bắt đầu trình xử lý truy vấn Việc tạo khung nhìn khơng phụ thuộc vào quan hệ nguồn Một người sử dụng tạo khung nhìn khơng nhận tất đặc quyền khung nhìn Ví dụ, người sử dụng không quyền cập nhật khung nhìn khơng có quyền cập nhật vào quan hệ khung nhìn định nghĩa Nếu người sử dụng tạo khung nhìn quyền hạn khơng phép, hệ thống phủ nhận u cầu tạo khung nhìn Trong ví dụ khung nhìn cust-loan trên, người tạo khung nhìn phải có quyền đọc hai quan hệ BORROWER and LOAN KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 193 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU 5.3.4 Cấp phép quyền truy nhập (bảo vệ tính riêng tư) Mục đích: Bảo đảm tài ngun khơng bị sử dụng cá nhân khơng có quyền theo cách không hợp pháp - Gán cho loại người dùng số quyền truy cập định - Cho phép số người dùng phép ủy quyền, tức giao quyền truy nhập cho người khác - Để thực việc giao quyền ta phải lập thủ tục “ủy quyền” (GRANT) “rút quyền” (REVOKE) a Ủy quyền: Một người dùng có phép ủy quyền với đối tượng truy nhập dùng lệnh GRANT để trao quyền truy nhập cho người khác Người cho người phép ủy quyền (không thiết người chủ đứng tên đối tượng) Cú pháp lệnh GRANT: GRANT ON TO [WITH GRANT OPTION] Nếu phần tùy chọn (trong []) dùng có nghĩa cho phép người dùng phép ủy quyền tiếp cho người khác Người dùng: tên người, nhóm, 1DS dùng từ khóa Public, World Ví dụ: Grant read on R to Nga with Grant Option Trao quyền đọc bảng R cho người dùng Nga, người trao tiếp quyền cho người khác KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 194 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU b Rút quyền Cú pháp lệnh Revoke: REVOKE ON FROM Ví dụ: Rút quyền đọc bảng R người dùng tên Nga Revoke Read On R From Nga 5.3.5 Kiểm tra dấu vết Nhiều ứng dụng bảo mật sở liệu cần trì chế kiểm tra dấu vết - Một kiểm tra dấu vết lưu tất thay đổi thực phép lưu trữ chèn thêm, xố sửa đổi thơng tin CSDL với thông tin phát sinh thêm trình thực - Việc kiểm tra dấu vết giúp cho việc dị tìm ngun nhân nhanh xác Ví dụ: Nếu tài khoản phát khơng cân đối, người quản trị lần dấu vết tất cập nhật xảy tài khoản để tìm thấy cập nhật khơng (có thể gian lận) người thực việc cập nhật - Tạo kiểm tra dấu vết cách định nghĩa chuỗi phản ứng thích hợp cập nhật quan hệ (sử dụng hệ thống giá trị định nghĩa để nhận biết tên người sử dụng lần truy nhập) - Nhiều hệ thống sở liệu cung cấp phương pháp tạo kiểm tra dấu vết thuận tiện dễ sử dụng KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 195 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU BÀI TẬP CHƯƠNG V CÂU HỎI TRẮC NGHIỆM Câu 1.An tồn liệu hiểu là: a Thống tiêu chuẩn, thủ tục biện pháp bảo vệ, an tồn liệu b Tính quán toàn vẹn liệu c Dễ dàng cho cơng việc bảo trì d Ngăn chặn truy nhập trái phép, sai quy định từ từ ngồi vào… Câu Người sử dụng truy cập: a Mơt phần sở liệu b Tồn sở liệu c Hạn chế d Phụ thuộc vào quyền truy nhập Câu 3.Cơ sở liêu cần thiết phải bảo vệ vì: a Rất nhiều loai liệu tải giữ máy cục để khai thác b Một bô sưu tâp lớn loại liệu tác nghiệp c Truy suất vào sở liệu nhiều ngôn ngữ thao tác liệu khác d Tài nguyên chung, nhiều người sử dụng Câu 4.Hãy chọn từ/cụm từ tương ứng để hồn thiện khẳng định sau: Hình thức thơng dụng để nhận biết người sử dụng mật a Đảm bảo toàn vẹn liệu b Và quy tắc bảo vệ sở liệu c Mới phép truy nhập CSDL d Chỉ có hệ thống người sử dụng biết KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 196 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU Câu 5.Không quán liệu: a Không xuất mâu thuẫn thông tin b Không thể sửa đổi, cập nhật, bổ sung liêu c Có thể triển khai tra cứu tìm kiếm d Làm cho liệu tính tồn ven Câu Rằng buộc liệu là: a Các định nghĩa, tiên đề, định lý b Quy tắc biểu diễn cấu trúc liêu c Các quy tắc quy định d Mối quan hệ thực thể liệu Câu Rằng buộc kiểu: a Quy tắc đăt tên sở liêu b Mối quan thưc thể liệu c Quy tắc truy nhập CSDL d Mơ tả tính chất thuộc tính tạo lâp CSDL Câu Rằng buộc giải tích a Mơ tả tính chất thuộc tính tạo lâp CSDL b Quy tắc biểu diễn cấu trúc liệu c Các phép toán đai số quan d Mối quan hệ thuộc tính biểu diễn biểu thức toán học Câu Rằng buộc logic: a Các phép so sánh b Mối quan hệ thuộc tính biểu diễn biểu thức toán học c Các phép toán quan hệ d Mối quan hệ thuộc tính biểu diễn phụ thuộc hàm KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 197 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU Câu 10 Bảo vệ an tồn sở liệu là: a Không cho phép ghi đè liệu b.Không cho phép cập nhât liệu c.Không cho phép sửa đổi liệu d Không cho phép đọc, sửa, ghi, xóa liệu… Câu 11 Hãy chọn từ/cụm từ tương ứng để hồn thiện khẳng định sau: Hình thức thông dụng để nhận biết người sử dụng mật a Đảm bảo toàn vẹn liệu b Và quy tắc bảo vệ sở liệu c Mới phép truy nhập CSDL d Chỉ có hệ thống người sử dụng biết Câu 12 Hãy chọn từ/cụm từ tương ứng để hoàn thiện khẳng định sau: Tồn vẹn liệu nghĩa a Có thể thực chiến lược truy nhập liệu b Bảo đảm tính độc lập liệu thời điểm c Có thể tìm kiếm thời điểm d Dữ liệu CSDL ln ln xác thời điểm Câu 13 An toàn liệu là: a Chống sửa đổi hay phá hoai b.Cần thiết phải quản trị, bảo vệ tập trung c Chống vi phạm có chủ định d Cần phải bảo vệ chống truy nhập trái phép Câu 14 Mức độ an tồn hệ thống CSDL: a Có thể phép thực câu hỏi truy vấn b.Người quản trị CSDL cấp phép truy nhập cho người sử dụng c Phụ thuộc vào người sử dụng không cần cấp phép người quản trị KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 198 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU d.Người quản trị cấp phép truy nhập cho người sử dụng có nhu cầu Câu 15 Mức bảo vệ vật lý: a.Nhận diện phương pháp trao quyền b.Nhận diện mặt c.Nhận diện cách kiểm tra d Nhận diện qua nhân viên bảo vệ, quy định hành Câu 16 Hãy chọn từ/cụm từ tương ứng để hoàn thiện khẳng định sau: Người sử dụng quyền ghi đọc bao gồm quyền như: a.GRANT SELECT ON R TO GROUP /WORLD b.GRANT READ ON R TO GROUP /WORLD c.GRANT ALL ON R TO GROUP /WORLD d.GRANT READ/WRITE ON R TO GROUP /WORLD Câu 17 Dạng thu hồi quyền truy nhập: a.REVOKE ON FROM b.REVOKE ON FROM c.REVOKE ON FROM d.REVOKE ON FROM Câu 18 Chọn khẳng định sau a.Tổ chức lưu trữ theo lý thuyết sở liệu, thuộc tính lặp lại b.Tính tồn vẹn liệu đảm bảo liệu ln ln c.Tính qn liệu đảm bảo cho cập nhật, bổ sung dễ dàng d.Sự không quán liệu lưu trữ làm cho liệu tính tồn vẹn Câu 19 Mục tiêu sở liệu là: a.Tính tồn vẹn liệu b.Tính phụ thuộc liệu KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 199 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU c.Phản ánh giới thực liệu d.Tính độc lập liệu CÂU HỎI VÀ BÀI TẬP 1.Vì phải bảo vệ an toàn hệ thống sở liệu Các ràng buộc tồn vẹn Ví dụ minh hoạ Tính bảo mật Nhận diện người sử dụng Bảo vệ vật lý Kiểm tra truy nhập Khung nhìn –Một chế bảo vệ Sử dụng ngơn ngữ vấn tin định nghĩa quyền truy nhập Tính bảo mật SQL KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 200 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU TÀI LIỆU THAM KHẢO Nguyễn Tuệ, Giáo trình Nhập mơn CSDL, NXBGD, 2009 Phạm Thế Quế, Cơ sở liệu, Tài liệu đào tạo Đại học từ xa, Học viện Công nghệ Bưu Viễn thơng, 2006 Đỗ Trung Tuấn, Cơ sở liệu, NXB ĐHQGHN, 2006 Nguyễn Thị Ngọc Mai, Cơ sở liệu, NXB Lao động - Xã hội, 12-2007 Đỗ Trung Tuấn, Nhập môn Cơ sở liệu, Học viện Cơng nghệ Bưu Viễn thơng, 2006 KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP ... TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 145 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU B3: Tách thành lược đồ con: R1(XZR), R2(XYWPQ) → R1(XZR), R2(XYWPQ) R1, R2 3NF KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ... lập liệu với chiến lược tìm kiếm, truy xuất liệu Có nhiều kỹ thuật khác KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 157 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU để tối ưu hoá câu hỏi, có kỹ thuật. .. D) X2= ACDIE (vì D E) Vậy: (AC)+ = ACDEI KHOA CNTT – TRƯỜNG ĐẠI HỌC KINH TẾ KỸ THUẬT CÔNG NGHIỆP 126 TÀI LIỆU HỌC TẬP CƠ SỞ DỮ LIỆU 3.1.5 Phủ tối thiểu Phủ tập phụ thuộc hàm : Gọi F G tập phụ