1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tiểu luận môn An toàn thông tin AN NINH TRONG HỆ QUẢN TRỊ CSDL ORACLE

27 768 4

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 27
Dung lượng 434 KB

Nội dung

Tiểu luận môn An toàn thông tin AN NINH TRONG HỆ QUẢN TRỊ CSDL ORACLE Khi nói đế n nghề quả n trị trong lĩnh vực Công nghệ thông tin tại Việt Nam, chúng ta thường liên tưởng đến nghề quản trị Mạng, chỉ khoảng gần năm năm trở lại đây thì tại Việt Nam mới hình thành lên một nghề mới, đó là nghề quản trị hệ thống Cơ sở dữ liệ u (CSDL), thườ ng gọi là DBA (Database Administrator).

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC DUY TÂN KHOA SAU ĐẠI HỌC

ĐỀ TÀI:

AN NINH TRONG HỆ QUẢN TRỊ CSDL ORACLE

Sinh viên thực hiện : Ngô Minh Cường.

Lớp : K7MCS.

Đà Nẵng, tháng 6 năm 2013

Trang 2

Mục lục

Lời nói đầu 3

I.Tổng quan về Oracle 5

1 Giới thiệu: 5

2.1 Cấu trúc của Oracle 6

3.Những đặc trư ng của hệ quản trị CSDL Oracle 14

3.1.Truy xuất dữ liệu 14

3.2.Tính đồng hành 15

3.3.Tính an toàn 15

3.4.Backup và Restore dữ li ệu 16

3.5.CSDL phân tán 16

II.Bảo mật CSDL 17

1.Các cơ chế bảo mật: 18

1.1.User CSDL và Schema 18

1.2 Privilege ( Đặc quyền ) 20

1.3.Role (Vai trò ) 21

1.4.Các xác lập lưu trữ và quota 21

1.5.Các Profile (lược sử ) và giới hạn tài nguyên 21

2.Trusted Oracle 23

III.Bảo mật của ứng dụng 24

1.Tổng quan 24

2.Sử dụng đối tượng CSDL của ứng dụng 24

3.Bảo mật ứng dụng điều khiể n bằng bảng 25

IV.Tài liệu tham khảo 26

Trang 3

Lời nói đầu.

Khi nói đế n nghề quả n trị trong lĩnh vực Công nghệ thông tin tại Việt Nam, chúng ta thường liên tưởng đến nghề quản trị Mạng, chỉ khoảng gần năm năm trở lại đây thì tại Việt Nam mới hình thành lên một nghề mới, đó là nghề quản trị hệ thống Cơ sở dữ liệ u

(CSDL), thườ ng gọi là DBA (Database Administrator) Hiện có ba hệ quản trị CSDL đượcbiết đế n trên thế giớ i và tạ i Việt Nam, đó là: Oracle, Microsoft SQL- Server và IBM- DB2 Nhưng vớ i số liệu thống kê năm 2010, Oracle chiế m đế n 76,8% thị phần CSDL trên toàn thế giới và theo báo cáo tài chính quí 3 của hãng thì Oracle tăng 35% doanh thu

so với cùng kỳ năm trước, từ các thông tin này chúng ta có thể đánh giá bước đầ u Oracle

là Cơ sở dữ liệu được các doanh nghiệp ứng dụng nhiều nhấ t trên thế giới

Đặc điểm sử dụng các Cơ sở dữ liệu tại Việt Nam:

Oracle thường được các doanh nghiệp đang phát triển và doanh nghiệp lớ n sử dụng, do đónhững ai làm việc với công nghệ Oracle thường có mức thu nhập tốt

- Microsoft SQL-Server thì đượ c các doanh nghiệ p vừ a và nhỏ (Small and Medium Bussiness - SMB) thích dùng, vì tính đơn giản và dễ sử dụng của CSDL này Mức thu nhậpkhi làm việc với SQL-Server vì thế cũng có phần không cao như Oracle

- IBM DB2 thì hơi đặc biệt, chỉ một số ít doanh nghiệp lớn tại Việt Nam sử dụng, ngườiquản trị hệ thống này thường được ưu đãi tốt nhưng số lượng không nhiều

Trang 4

Đối với một số doanh nghiệp, hiệu quả kinh doanh phụ thuộc hoàn toàn vào giá trị thông tin thì vấn đề an toàn thông tin đượ c đặt trọ ng tâm hàng đầu Hiệ n nay, các doanh nghiệpthường gặp khó khăn hoặc không thể trả lời các câu hỏi như: ai đã truy cập đến dữ liệu quan trọng này và vào thời gian nào ? ai đã chỉnh sửa thông tin nhạ y cả m của khách hàng ? tại sao dữ liệu này lại bị thay đổi ? hệ thống dữ liệu hiện có bị ai xâm nhập trái phéphay không ? Để trả lờ i các câu hỏi này, doanh nghiệp cầ n thiế t phả i trang bị giải pháp giám sát đầy đủ và chính xác, đồng thời giải pháp phải đả m bả o không tăng tải và làm chậm hệ thống hiện tại Trong một số lĩnh vực kinh doanh nhạy cảm, tính bí mật củ a thông cầ n được bảo đảm tuyệt đối Thông tin cần đạt tính bí mật và nguyên vẹn ngay khi được lưu

trên đĩa cứng, và khi thông tin được trao đổi vào ra trong mạng cũng phải được đảm

Trong quá trình tìm hiểu sẽ không tránh khỏi thiế u sót, mong Thầy và các bạn quan tâm theo dõi và đóng góp ý kiế n, tôi xin chân thành tiếp thu và sửa đổi Tôi có lời cả m ơn chân thành tới Thầy đã động viên, chỉ ra hướng tìm hiểu cho tất cả các sinh viên trong đó

có tôi cùng tất cả các ý kiến đóng góp của các bạn

Người thực hiện : Ngô Minh Cường

Trang 5

I.Tổng quan về Oracle.

1 Giới thiệu:

- Cơ sở dữ liệu oracle là một cơ sở dữ liệu mạnh mẽ nhất thế giới Được thiết kế để triển khai cho mọi môi trường doanh nghiệp Việc cài đặt, quản lý rất dễ dàng, các công cụ để phát triển các ứng dụng một cách hoàn thiện và nhanh chóng Cơ sở dữ liệu oracle phù hợp cho mọi loại dữ liệu, các ứng dụ ng và các môi trường khác nhau bao gồm cả

windows và linux với chi phí tối thiểu

2.

Đ ặc đ iểm của hệ quản trị CSDL Oracle .

- Oracle hỗ trợ việc quản lí dữ liệu có dung lượng hàng trăm Gb

- Hỗ trợ mạnh cho các tính năng nhiều user truy xuất cùng đơn vị dữ liệu trong cùng thời gian

- Có thể làm việc 24/24

- Tuân thủ các chuẩn công nghiệp trên các yếu tố: Hệ điều hành, Mạng, Ngôn ngữ truy xuất

- Cung cấp cơ chế an toàn và bả o mật tốt

- Đả m bả o tạ o các ràng buộ c toàn vẹ n đơ n giả n và phứ c tạp trên CSDL

- Hỗ trợ nhiề u thuậ n lợi cho mô hình Cilent/ Server

- Cho phép nhiề u chủ ng loạ i máy, hệ điề u hành khác nhau chia sẻ trên dữ liệ u mạng

- Dùng để phát triể n ứng dụ ng và có thể sử dụ ng trên bấ t kì hệ thống nào

Có thể nói đây là CSDL mạnh nhất hiện nay

2.1 Cấu trúc c ủa Oracle

Ðể thiế t kế và quả n lý CSDL củ a ORACLE được tốt chúng ta cần phải hiểu được

kiến trúc cơ bả n của ORACLE

- Sơ đồ kiế n trúc cơ bả n ORACLE như sau:

Trang 6

Một CSDL của ORACLE thì bao gồm các file điêu khiển (Control files),các file dữ liệu (data files) và các file đăng nhậ p lại (Redo log files).

Trang 7

- File dữ liệ u (data files) :chứ a đự ng tấ t cả các dữ liệ u củ a CSDL có cấu trúc logic như các table,index,và chúng đượ c lư u giữ vật lý trong các file CSDL

- File đăng nhậ p lạ i (reedo log files )ùng cho các xử lý đăng nhậ p lạ i.Nó ghi lại tấ t

cả nhữ ng thay đổ i đượ c tạ o cho CSDL và chứa các thông tin cho việc khôi phục

Các file điề u khiể n (control files ) : ghi lại cấu trúc vật lý của CSDL

File biến (parameter ) :chứa các tham số cho việc thiết lập môi trường làm việc , xác định các đặc tính của các thể hiện ,thường được định danh là Init.Ora *Mỗi khi ORACLE bắt đầu SGA được định vị và các tiế n trình nề n được bắt đầ u Sự kết hợp của một vùng nhớ đệm và một tiến trình nền được gọi là một thể hiện (Instance) của ORACLE:

- Các tiến trình nền tương ứng với các công việc khác nhau phụ c vụ cho tất cả mọi người dùng CSDL

Vd: Tiến trình DBWR được dùng để ghi lại đĩa những dữ liệu từ vùng nhớ đệm CSDL (Database buffer cache)

- Các tiến trình phục vụ (server processes) : khi một user chạy một ứng dụng tương ứng hoặc một hỏi đáp dữ liệu thì các tiến trình của người dùng được đưa ra ORACLE sẽ đưa

ra một tiến trình phục vụ để trao đổi yêu cầu vớ i các tiến trình của người sử dụng

User processes < -> Server processes

Các tiế n trình phục vụ sau khi thi hành các yêu cầ u của người sử dụng và đưa trở lại kết quả cho user

+ Các thông báo của SQL sẽ được thi hành bởi các server process ,các tiến trình phục vụ

sẽ đọc khối dữ liệu từ đĩa vào vùng nhớ dữ liệu được dùng chung của SGA (vùng Shared pool).Sau đó đưa ra kết quả từ các thông báo SQL.Các tiến trình phục vụ có ba giai đoạn:

+ Giai đoạn phân tích:kiể m tra cú pháp,kiể m tra quyền truy nhập, đường dẫn tìm kiếm cóhiệu quả nhất rồi xác định cây phân tích Cây phân tích sẽ được cấ t giữ trong vùng SharedSQL Area (Thuộc một phầ n của Shared pool trong SGA) vùng này chứa các thông tin cho việc thi hành các thông báo SQL

Trang 8

+ Giai đoạn thi hành các thông báo: gắn cây

phân tích tới vùng đệm dữ liệu

*Từ đó ta có thể kế t luậ n về hai kiể u tiến trình (Background process và server

processes):chúng đề u là nhữ ng tiế n trình như ng chúng khác nhau trong phạm vi tiế n trình củ a mình.Các tiế n trình phụ c vụ trao đổi các yêu cầ u từ user,còn background processes thi hành nhữ ng công việc củ a một instance

*Giớ i thiệ u về SGA(System global area :Vùng bộ nhớ hệ thống): là một tậ p hợp các vùng bộ nhớ đệm dùng chung các tiến trình khác nhau có một vùng đệm riêng và SGA được định vị bởi ORACLE cho một instance

Các vùng đệm trong SGA:

+ Shared spool: (như đã nói ở phần server processes)

ngoài ra:kích cỡ củ a shared pool có thể đượ c xác đị nh bở i biến Shared -pool-size

Trang 9

+ Database buffer cache (vùng nhớ đệm cơ sở dữ liệu) :

Trứơc khi dl có thể được truy nhậ p mộ t tiế n trình phục vụ sẽ đặ t dữ liệu vào trong vùng đệm Database buffer cache,vùng đệm này sẽ được cất giữ những bản sao dữ liệu đọc từ đĩa bởi một tiến trình phục vụ

Số block trong vùng này được xác định bởi biến DB_Block_buffer (kích thước của

block được xác định bởi biến DB_block_size)

+ Redo log buffer (Vùng đăng nhậ p lại) :

Vùng này chứa các thông tin về nhữ ng thay đổi tới CSDL ORACLE sẽ ghi lại nhữngthay đổi tới CSDL trong vùng này tới các Redo log file.Kích cỡ của vùng này được xácđịnh bởi biến Log-buffer

* Các tiến trình nền (Backgound processes)

- DBWR: các khối dữ liệu đã được sửa đổi trong vùng Database buffer cache được viếttrở lại đĩa bởi 1 tiến trình nền DBWR Tiến trình này quản lý vùng

Database buffer.Cho nên các tiến trình của user luôn luôn có thể tìm được vùng đệm rỗi

- Logwriter ( LGWR): ghi lại tất cả những thay đổi tới CSDL trong vùng Redo log buffertới đĩa bởi một tiến trình nền có tên LGWR,một tiến trình nền khác là ARCH(Achiver) cóthể được bắt đầu để lưu giữ các thông tin đăng nhập lại trên 1 thiế t bị cất giữ đã địnhtrước (tape,disk)dùng cho việ c khôi phục bị thất bại

LGWR viết Redo log buffer vào Redo log files khi:

+ Khi user đưa ra chỉ thị commit

+ Vùng redo log buffer vượt quá 1/3 kích cỡ cho phép của vùng

+ DBWR cần để xoá sạch các khối đệm cho 1 điể m kiểm tra hoặc quá thời gian xuất hiện

- Process Monitor (PMON): thi hành những tiến trình khôi phục khi 1 tiến trình của user

bị thất bại

- System monitor (SMON): tự động thi hành việc khôi phục instance

Trang 10

+ Tái tạo lại kiểu không gian bảng (table space)

- Recover process(RECO):giải quyết những thất bại liên quan tới 1 tiến trình đượcphân bố

- Checkpoint (CKPT): thay LGWR viết các thông tin dữ liệu từ vùng log buffer tới các header của các file dl và file điều khiển

- LCKn (Lock process): Xử lý tình trạng bế tắc giữ a các instance trong hệ tiến trình song song Quản lý việc cất giữ dữ liệu của oracle

- Oracle định vị không gian cho dữ liệu trong CSDL theo :đơ n vị nhỏ nhất là các block tiếp đến là extent,segment,tablespace

* Khối dữ liệu (data block)

- Khố i dữ liệu của Oracle là khố i nhỏ nhấ t của công việc I/O nó có thể gồm nhiều khối file vật lý được định vị từ file CSDL

Trang 11

- Các khối CSDL được gọi là các khối logic.Nó tương ứng với một hoặ nhiều khối vật lý trên đĩa.

- Kích cỡ 1 khối CSDL ORACLE phải được xác định trước khi tạo CSDL và nó là

hằng số trong tất cả các các file của CSDL Khi CSDL đã được thì kích cỡ của nó không thể được thay đổi ngoài trừ việc tạo lại CSDL

Kích cỡ thường 2-:-4 KB được xác định bởi biến DB_block_size

- Thành phần củ a một khối:

Header: chứa những thông tin chung trong khối như địa chỉ khối, kiểu segment

Table directory: bao gồm các thông tin về các bảng trong cluster và được sử dụng với các segment hợp lại

+ Row data:cấ t giữ dữ liệu của các table hoặc index

+Row directory:bao gồm các thông tin về các hàng thự c sự trong khối

+Free space:bao gồm tậ p các byte trong khối mà còn có sẵn cho việc

update,insert,delete,việc điều khiển free space cho việc update,insert, delete trong CSDL bằng cách thay đổi giá trị của các biến:PCTfree,PCTused,Initrsns,Matrans

+Biến PCTfree: xác định tỷ lệ % củ a khối để sử dụng việc update các hàng đã tồn tại trong khối

VdCT free=20 tứ c là 20% của khối dùng cho việc update khi tỷ lệ củ a khối còn rỗ i >% của PCTfree thì việc chèn mới cho phép

+Pctused: cho phép 1 khố i được xem xét lại cho việ c chèn các hàng mới,các hàng mới sẽđược chèn khi tỷ lệ % của khố i đang được sử dụng nhỏ hơn giá trị Pctused,giá trị ngầm định = 40

Vd: Pctused =40 thì sau khi không gian đã được sử dụng <40% thì hàng mới có thể được insert vào khối này

- Ðể xác định các transaction đang hoạt độ ng trên 1 khố i bởi việc sử dụng 2 biến:

+INITRANS:là số các transaction đư a vào lúc bắ t đầu có thể xẩy ra đồng thời được định

vị trong header của mỗi khối (ngầ mđịnh=1,min=1,max=255)

+Maxtrans:là số lớn nhất các tiế n trình đồng thời của khối được cung cấp (mặc định là 255,min=1,max=255)

Trang 12

*EXTENT: Là 1 tập các khối kề cận được định vị tới 1 segment.Khi 1 đối tượng của CSDL được hình thành thì không gian được định vị cho nó(các đố i tượng có thể là: table, cluster, index, roll back segment, table space).

Mỗi segment cần có ít nhất là 1 extent, riêng đoạn khôi phục cần có ít nhất là 2 extent

- Các extent đầu tiên gọi là Initial extent Các extent tiếp theo gọi là incrmental extent.Một đối tượng sẽ được cấp 1 extent mới nếu tất cả các extent đã đị nh vị hiện tại của nó đãđược sử dụ ng

Các extent có thể được định vị cho đối tượng khác khi segment dùng nó bị huỷ bỏ hoặc nóthuộc phần cắt bớt đi của segment

- Ðiều chỉnh extent tới các segment bởi các biến cất giữ sau:

Initialác định kích cỡ của extent đầu tiên được định vị cho segment ngầm định là 5 data block

Nextasc: định kích cỡ của các extent tiếp theo ngầm định là 5 blocks

+ Maxextents: tổng số lớ n nhất các extent cấp cho segment ngầm định là 99

+ Minextents:tổng số extent được cấp cho segment khi segment được tạo ngầm định là

1

+ PCTỉncease: tỷ lệ % mà mỗi extent tiếp theo được phát triển có thể vượt quá extentcuối cùng ngầm định là 50%

+ Optimal: kích cỡ tối ưu cho 1 đoạ n khôi phục ngầm định là null

+Free lits: số danh sách của các khối rỗi cho insert vào bảng ngầm định là 1

*SEMENT : là tập các extent (1 hoặc nhiề u) mà chứa đựng tất cả dữ liệu của 1 kiểu dữliệu riêng

Trang 13

+Roll back segment:tập các extent mà chúng cất giữ các giữ liệu khôi phục cho việc khôi phục lại

+Boostrap segment:là 1 extent chứa các định nghĩa về từ điển cho các bảng từ điển

và được nạp vào khi CSDL được mở

TABLESPACE

-Dữ liệu trong một cơ sở dữ liệu của Oracle dược cất giữ logic trên các tablespace và đượ

c cất giữ vật lý trong các file cơ sở dữ liệ u.Một cơ sở dữ liệu của Oracle có thể bao gồm một hoặc nhiều Tablespace

+ Mỗi một tablespace có một chức năng riêng Tablespace hệ thống dành cho các hoạt động cửa hệ thống , Tablespace user dành cho các hoạt động của user

MỘT SỐ LỆNH SQL Ðể Hiển thị thông tin về việc cất giữ:

- Liệt kê tất cả các cột trong tablespace của người dùng (ser_tablespace) :

Code:

SQL> Desc dba_tablespaces;

-Liệt kê các thông tin về mỗi tablespace

Code:

SQL> Select * from Dba_tablespaces;

Hiện các Extent của không gian rỗi trong mỗi tablespace :

Code:

SQL> Select * from Dba_free_space;

Hiện các thông tin chung về các file dữ liệu thuộc về mỗi tablespace :

SQL>Select file_name, tablespace_name, bytes from Dba_data_files;

Trang 14

- Hiện những thông tin chung về tất cả các segment trong CSDL :

Code:

SQL> Select owner,segment_name,extents,max_extents from Dba_segments;

3.Những đ ặc trưng của hệ quản trị CSDL Oracle.

3.1.Truy xuất dữ li ệu

- SQL ( SEQUEL – Structured English Query Language) là ngôn ngữ truy xuất dữ liệu cho hệ quả n trị CSDL quan hệ , SQL trong Oracle tương thích với SQL theo dạng chuẩn ANSI ( American National Standards Intistute)

- Ngôn ngữ thao tác dữ liệu ( DML – Data Manipulation Language)

+ Truy xuất: SELECT

+ Cập nhật: INSERT, UPDATE, DELETE

- Ngôn ngữ điều khiển dữ liệu ( DCL- Data Control Language)

- Ngôn ngữ điều khiển hệ thống ( SYCL- System Control Language)

Trang 15

- PL/ SQL ( Procedure Language / SEQUEL ) là ngôn ngữ mở rộng của SQL kết hợpvới ngôn ngữ l ập trình có cấu trúc

- Tính nhất quán:

+ Đảm bảo dữ liệ u nhất quán trong thời gian đọc

+ Đảm bảo người đọc không chờ người viết và ngươc lại

+ Đảm bảo người viế t phải chờ người viết khác nếu cùng cập nhậ t một CSDL

3.3.Tính an toàn

Đảm bảo tính an toàn dữ liệ u nhờ các kiểm soát:

- Quyền truy cập vào CSDL

- Quyền trên CSDL nào

- Quyền trên đối tượng nào trong CSDL, bao gồm:

- Quyền hệ thống: Cho phép tác động đến hệ thống, là quyền rất mạnh

- Quyền đối tượng: Cho phép tác động lên một đố i tượng cụ thể

Ngày đăng: 22/12/2014, 22:24

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w