An toàn dữ liệu

Một phần của tài liệu Cơ sở dữ liệu phân tán (Trang 91 - 95)

An toàn dữ liệu là nhiệm vụ quan trọng của cỏc hệ thống cơ sở dữ liệu, nhằm bảo vệ dữ liệu khụng bị truy xuất “bất hợp phỏp”. An toàn dữ liệu bao gồm 2 vấn đề

• Bảo vệ dữ liệu: nhằm trỏnh những người khụng được quyền hiểu được nội dung vật lý của dữ liệụ. Phương phỏp sử dụng thụng dụng nhất là mó hoỏ dữ liệụ Mó khố bớ mật và mó khố cơng khaị

• Biện phỏp kiểm soỏt cấp quyền nhằm đảm bảo rằng chỉ những người sử dụng được phộp mới cú thể được thực hiện cỏc thao tỏc được phộp trờn cơ sở dữ liệụ Cấp

quyền truy xuất cơ sở dữ liệu cho người sử dụng là người quản trị cơ sở dữ liệụ Người sử dụng khỏc nhau được cấp cỏc quyền khỏc nhau dưới sự kiểm soỏt của hệ thống. Từ cỏc giải phỏp kiểm soỏt cấp quyền.trong cỏc hệ thống tập trung cú thể đề xuất cỏc giải phỏp kiểm soỏt cấp quyền phõn tỏn.

4.3.1 Kiểm soỏt cấp quyền tập trung

Ba tỏc nhõn chớnh cú ảnh hưởng đến việc kiểm soỏt cấp quyền truy xuất cơ sở dữ liệu của người sử dụng là: Người sử dụng, người quản trị cơ sở dữ liệu kớch hoạt cỏc trỡnh ứng dụng, cỏc thao tỏc gắn với cỏc ứng dụng và tỏc nhõn cuối cựng là cỏc đối tượng cơ sở dữ liệu được cỏc thao tỏc tỏc động. Kiểm soỏt cấp quyền bao gồm việc kiểm soỏt người sử

dụng, cỏc thao tỏc, đối tượng cú được phộp thực hiện hay khụng. Nghĩa là người sử dụng cú thể thực hiện thao tỏc trờn cỏc đối tượng đú hay khụng. Một quyền được cấp

(Authorization) được xem là một bộ ba thành phần: Người sử dụng, loại thao tỏc và định

nghĩa đối tượng. Nghĩa là người sử dụng được quyền thao tỏc gỡ trờn cỏc đối tượng nàọ Khai bỏo người sử dụng, hay nhúm người sử dụng với hệ thống thường được thực hiện bằng một cặp: tờn người sử dụng (User name), mật khẩu (Password).Tờn người sử dụng xỏc định duy nhất một người sử dụng cú tờn trong hệ thống. Mật khẩu xỏc nhận người sử dụng được quyền truy nhập vào cơ sở dữ liệụ Tờn và mật khẩu phải khai bỏo khi đăng nhập vào hệ thống, nhằm ngăn chặn truy nhập vào hệ thống bất hợp phỏp

Đối tượng cần bảo vệ là cỏc tập con của cơ sở dữ liệụ Trong hệ thống quan hệ, đối

tượng cần được bảo vệ cú thể là định nghĩa của quan hệ, khung nhỡn, bộ, thuộc tớnh... và nội dữ liệụ Hơn nữa, cơ chế khung nhỡn cho phộp bảo vệ cỏc đối tượng làm ẩn đi cỏc tập con của quan hệ (thuộc tớnh hoặc bộ) đối với người sử dụng khụng được phộp truy xuất..

Quyền hạn (Right) biểu thị mối liờn hệ giữa người sử dụng và một đối tượng ứng với

là một cõu lệnh bậc cao như SELECT, INSERT, UPDATE hoặc DELETE, và cỏc quyền

được định nghĩa hoặc trao quyền hoặc thu hồi quyền bằng cỏc cõu lệnh:

GRANT <kiểu thao tỏc> ON <đối tượng> TO <người sử dụng> REVOKE <kiểu thao tỏc> FROM <đối tượng> TO <người sử dụng>

Từ khúa Public để chỉ tất cả mọi người sử dụng. Điều khiển cấp quyền cú thể được đặc trưng dựa vào người cấp quyền (Grantor). Ở dạng đơn giản nhất, việc điều khiển cú thể được tập trung vào một người hoặc một nhúm người đúng vai trị là nhà quản trị dữ liệu sẽ

cú mọi quyền hạn trờn cỏc đối tượng CSDL và cú quyền sử dụng cỏc cõu lệnh cấp quyền GRANT và thu hồi quyền đó cấp REVOKẸ Phức tạp nhưng linh hoạt hơn là điều khiển khụng tập trung. Người tạo ra đối tượng là chủ của đối tượng và được trao tất cả mọi quyền trờn đối tượng đú. GRANT là trao cho quyền mọi quyền cho người người sử dụng đó được mụ tả. Người nhận quyền cú thể tiếp tục trao quyền cho người sử dụng khỏc trờn cỏc đối tượng đú. Q trỡnh thu hồi quyền phải thực hiện đệ quy, gặp nhiều khú khăn. Hệ thống

phải duy trỡ một cõy phõn cấp chứa cỏc hoạt động trao quyền cho mỗi đối tượng, trong đú chủ của đối tượng chớnh là gốc.

Quyền hạn của cỏc chủ thể trờn cỏc đối tượng là những người sử dụng nhận được quyền trờn cỏc đối tượng được lưu trữ dưới dạng cỏc qui tắc cấp quyền. Thuận tiện nhất là xem cỏc quyền như là một ma trận cấp quyền (Authorization Matrix), trong đú hàng là chủ thể, và cột là đối tượng, và phần tử ma trận là cỏc thao tỏc được phộp được xỏc định bằng kiểu thao tỏc (vớ dụ SELECT, UPDATE). Thường kốm với mỗi kiểu thao tỏc cú một vị từ hạn chế thờm khả năng truy nhập đến đối tượng. Tựy chọn này được cung cấp với cỏc đối tượng là cỏc quan hệ cơ sở, khụng dành cho cỏc khung nhỡn. Vớ dụ, một thao tỏc được phộp cho cặp <Jones, quan hệ EMP> cú thể là:

SELECT WHERE TITLE = “Syst. Anal.”

cho phộp Jones chỉ được phộp truy nhập đến cỏc bộ của cỏc phõn tớch viờn hệ thống. Hỡnh 4.4 là vớ dụ mẫu về ma trận cấp quyền, trong đú đối tượng là cỏc quan hệ EMP và ASG hoặc là cỏc thuộc tớnh ENAMẸ.

EMP ENAME ASG

Casey Jones Smith UPDATE SELECT NONE UPDATE SELECT SELECT UPDATE SELECT

WHERE RESP ≠ ‘Manager’ NONE

Ma trận cấp quyền cú thể được lưu trữ theo ba cỏch: theo cột, theo hàng hoặc theo phần tử. Khi ma trận được lưu theo hàng, mỗi chủ thể được liờn kết với một danh sỏch cỏc đối tượng được phộp truy nhập cựng với cỏc quyền truy nhập tương ứng. Cỏch tiếp cận này cho phộp duy trỡ cỏc cấp quyền một cỏch hiệu quả, vỡ tất cả cỏc quyền của một người sử dụng khi truy nhập vào hệ thống đều được lưu trữ cựng nhau trong hồ sơ cỏ nhõn (Profile) của người sử dụng. Tuy nhiờn, việc thao tỏc trờn cỏc quyền truy nhập (vớ dụ cho phộp mọi người truy nhập đến đối tượng) sẽ khụng hiệu quả vỡ phải truy nhập đến tất cả cỏc hồ sơ cỏ nhõn. Nếu ma trận được lưu theo cột, mỗi đối tượng được liờn kết với một danh sỏch người sử dụng được phộp truy nhập. Ưu và nhược điểm cũng như lưu theo hàng.

Ưu điểm của hai cỏch tiếp cận trờn được tổ hợp trong cỏch tiếp cận thứ ba, trong đú ma

trận được lưu theo phần tử, nghĩa là theo quan hệ (chủ thể, đối tượng, quyền). Quan hệ này cú thể cú chỉ mục trờn cả chủ thể và đối tượng, qua đú cho phộp truy nhập nhanh đến cỏc quyền của mỗi chủ thể và đối tượng.

4.3.2 Kiểm soỏt cấp quyền phõn tỏn

Cỏc vấn đề kiểm soỏt cấp quyền trong mụi trường phõn tỏn bao gồm: cấp quyền cho

người sử dụng ở xa, quản lý cỏc quy tắc cấp quyền phõn tỏn và việc xử lý khung nhỡn và

nhúm người sử dụng.

Cấp quyền cho người sử dụng ở xa nhằm ngăn chặn truy nhập từ xa trỏi phộp, nghĩa là từ một vị trớ khơng nằm trong hệ quản trị CSDL phõn tỏn. Người sử dụng cũng cần phải được nhận diện và xỏc nhận tại vị trớ được truy nhập. Cú hai giải phỏp cho vấn đề này:

1. Thụng tin xỏc nhận người sử dụng bao gồm tờn truy nhập và mật khẩu được nhõn bản tại tất cả cỏc vị trớ. Cỏc chương trỡnh cục bộ, được khởi hoạt từ một vị trớ ở xa cũng phải chỉ rừ tờn và mật khẩu của người sử dụng.

2. Tất cả cỏc vị trớ trong hệ thống phõn tỏn phải nhận diện và xỏc nhận nhau tương tự như người sử dụng. Cỏc vị trớ giao tiếp với nhau bằng tờn và mật khẩụ

Giải phỏp (1) cú chi phớ cao hơn tớnh theo cơng việc quản lý thư mục nếu việc đưa thờm một người sử dụng mới vào là một thao tỏn phõn tỏn. Tuy nhiờn, người sử dụng cú thể truy nhập CSDL phõn tỏn từ bất kỳ một vị trớ nàọ Giải phỏp (2) là cần thiết khi thụng tin người sử dụng khụng được nhõn bản. Tuy vậy, nú cũng cú thể sử dụng cấp quyền từ xa cú hiệu quả. Nếu tờn và mật khẩu của người sử dụng khụng được nhõn bản, nhưng phải được lưu tại vị trớ người sử dụng truy nhập vào hệ thống.

Cỏc quy tắc cấp quyền phõn tỏn cũng như cỏc quy tắc cấp quyền trong cỏc hệ tập trung. Cỏc định nghĩa khung nhỡn phải được lưu trữ. Cú thể nhõn bản hoàn toàn tại mỗi vị trớ hoặc lưu trữ tại cỏc vị trớ của cỏc đối tượng cần truy xuất. Ưu điểm của phương phỏp tiếp cận

nhõn bản hoàn toàn là cấp quyền cú thể được xử lý bằng kỹ thuật hiệu chỉnh truy vấn. Tuy nhiờn việc quản lý thư mục sẽ tốn kộm. Giải phỏp lưu trữ tại cỏc vị trớ của cỏc đối tượng cần truy xuất tốt hơn trong trường hợp tớnh chất cục bộ của tham chiếu rất caọTuy nhiờn việc cấp quyền phõn tỏn khụng thể kiểm soỏt được vào thời điểm biờn dịch.

Khung nhỡn cú thể được coi mhư cỏc đối tượng qua cơ chế cấp quyền. Khung nhỡn được cấu tạo bởi cỏc đối tượng cơ sở khỏc. Vỡ vậy khi trao quyền truy xuất đến một khung nhỡn

được dịch thành trao quyền truy xuất đến cỏc đối tượng cơ sở. Nếu định nghĩa khung nhỡn

và cỏc quy tắc cấp quyền được nhõn bản hồn tồn, thỡ việc phiờn dịch khỏ đơn giản và được thực hiện tại chỗ. Phức tạp hơn khi định nghĩa khung nhỡn và cỏc đối tượng cơ sở của

nú được lưu riờng thỡ phiờn dịch sẽ là một thao tỏc hoàn toàn phõn tỏn. cấp quyền được trao trờn khung nhỡn phụ thuộc vào quyền truy xuất của chủ nhõn khung nhỡn trờn cỏc đối tượng cơ sở. giải phỏp ghi nhận thụng tin liờn kết tại cỏc vị trớ của mỗi đối tượng cơ sở.

Nhúm người sử dụng nghĩa là cấp quyền truy xuất chung cho nhiều người, với mục đớch làm đơn giản hố cơng việc quản lý cơ sở dữ liệụ Trong cỏc hệ quản trị cơ sở dữ liệu tập trung, khỏi niệm mọi người sử dụng cú thể đồng nhất với nhúm người sử dụng. Trong mụi trường phõn tỏn, mhúm người sử dụng biểu thị cho tất cả người sử dụng tại một vị trớ cụ thể, được biểu thị public@site_s, là nhúm đặc biệt, được định nghĩa bởi lệnh sau:.

DEFINE GROUP <group_id> AS <Danh sỏch cỏc id chủ thể>

Vỡ trong mơi trường phõn tỏn, cỏc chủ thể, cỏc đối tượng phõn tỏn tại nhiều vị trớ khỏc nhau và quyền truy xuất thụng tin đến một đối tượng cú thẩuto cho nhiều nhúm phõn tỏn khỏc nhaụ Vỡ vậy vấn đề quản lý nhúm trong mơi trường phõn tỏn cú một số vấn đề cần

giải quyết. Nếu thụng tin của nhúm và cỏc quy tắc cấp quyền được nhõn bản hoàn toàn tại tất cả cỏc vị trớ, thỡ việc duy trỡ quyền truy xuất tương tự như trong cỏc hệ thống tập trung. Tuy nhiờn việc duy trỡ cỏc bản sao là tốn kộm. Việc kiểm soỏt phi tập trung, tức là duy trỡ sự hoạt động tự trị vị trớ sẽ khú khăn và phức tạp hơn rất nhiềụ

Nhõn bản hồn tồn cho cỏc thơng tin cấp quyền cú ưu điểm là kiểm soỏt cấp quyờn đơn giản hơn và cú thể thực hiện vào lỳc biờn dịch. Tuy nhiờn, chi phớ cho việc quản lý phõn tỏn sẽ quỏ cao, nếu cú rất nhiều vị trớ trong hệ thống.

4.4 Kiểm sốt tớnh tồn vẹn ngữ nghĩa

Một vấn đề quan trọng và khú khăn cho một hệ CSDL là bảo đảm được tớnh nhất quỏn

cơ sở dữ liệu (Databasse Consistency). Một trạng thỏi CSDL được gọi là nhất quỏn nếu nú thỏa một tập cỏc ràng buộc, được gọi là ràng buộc toàn vẹn ngữ nghĩa (Semantic Integrity Constrsint). Đảm bảo tớnh nhất quỏn của CSDL, kiểm sốt tồn vẹn ngữ nghĩa bằng cỏch loại bỏ hoặc hoỏ giải cỏc trỡnh cập nhật làm cho CSDL khụng nhất quỏn. CSDL đó cập nhật nghĩa là đó thỏa tập cỏc ràng buộc toàn vẹn.

Cú hai loại ràng buộc toàn vẹn: ràng buộc cấu trỳc ( Structural Constraint) và ràng buộc hành vi (Behavioral Constraint). Ràng buộc cấu trỳc mụ tả những đặc tớnh ngữ nghĩa cơ bản của mơ hỡnh. Vớ dụ như ràng buộc khúa trong mơ hỡnh quan hệ, hoặc cỏc liờn kết một-nhiều giữa cỏc đối tượng trong mơ hỡnh mạng. Ngược lại, ràng buộc hành vi mụ tả mối liờn kết giữa cỏc đối tượng, như khỏi niệm phụ thuộc hàm trong mơ hỡnh quan hệ.

Một phần của tài liệu Cơ sở dữ liệu phân tán (Trang 91 - 95)