160 likes | 247 Views
Database Management. SQL Security. การเทเบิลสเปซ (Tablespace).
E N D
Database Management SQL Security
การเทเบิลสเปซ (Tablespace) • ภายระบบฐานข้อมูลประกอบด้วย ข้อมูลและตารางต่าง ๆ มากมาย ซึ่งตารางเหล่านี้จะอยู่ในเทเบิลสเปซ (Tablespace) โดยปกติระบบฐานข้อมูลจะสร้างเทเบิลสเปซให้ ผู้ใช้สามารถสร้างตารางและบันทึกข้อมูลลงฐานข้อมูลได้ทันที หากต้องการสร้างเทเบิลสเปซเพื่อเก็บข้อมูลที่คล้ายกันไว้ในเทเบิลสเปซเดียวกันขึ้นมาใช้งานนอกเหนือจากเทเบิลสเปซที่มีอยู่ภายในระบบ ผู้ใช้สามารถสร้างได้ แต่ผู้ที่สร้างนั้นต้อง login เป็น sysdba, system, power user เป็นต้น
CREATE TABLESPACE • Function: • การกำหนดพื้นที่สำหรับการสร้างตารางที่มีลักษณะงานคล้ายกันเข้าภายในฐานข้อมูล CREATE TABLESPACE <tablespace_name> DATAFILE <drive:\folder\file.dbf> SIZE <n> M CREATE TABLESPACE BUU_DATA DATAFILE ‘c:\dbf\buu.dbf’ SIZE 10 M
Database Security • คือการป้องกันฐานข้อมูลไม่ให้บุคคลที่ไม่มีสิทธิ์เข้าถึงข้อมูลมาใช้งานที่ไม่พึงประสงค์เช่น • การขโมยข้อมูล(Theft of information) • การปรับปรุงข้อมูล (Unauthorised modification of data) • การทำลายข้อมูล (Unauthorised destruction of data)
Database Security การรักษาความปลอดภัยนอกจากจะหมายถึงการป้องกันข้อมูลสูญหายแล้ว ยังหมายถึงการป้องกันหรือจำกัดสิทธิ์การเข้าถึงข้อมูลของผู้ใช้ในฐานข้อมูลนั้น โดยระบบฐานข้อมูลจะกำหนดสิทธิ์การเข้าถึงข้อมูลในระดับต่าง ๆ ให้กับผู้ใช้ตามความจำเป็น
ประเภทของการเข้าถึงข้อมูลประเภทของการเข้าถึงข้อมูล • มีสิทธิ์ในการอ่านข้อมูล (Read authorisation) • สามารถอ่านข้อมูลได้อย่างเดียว ไม่สามารถปรับปรุงใด ๆ ได้ • มีสิทธิในการเพิ่มข้อมูล (Insert authorisation) • สามารถเพิ่มเติมเรคอร์ดใหม่ลงตารางได้ แต่ไม่มีสิทธิ์สำหรับการปรับปรุงข้อมูลในตาราง • การเพิ่มข้อมูลคือการเพิ่มค่าในตารางและการเพิ่มค่าลงใน attributes ที่มีค่าเป็น NULL values อยู่ก่อน
ประเภทของการเข้าถึงข้อมูลประเภทของการเข้าถึงข้อมูล • มีสิทธิ์การปรับปรุงข้อมูล (Update authorisation) • มีสทธิ์ปรับปรุงข้อมูลแต่ไม่มีลบข้อมูลออกจากตาราง • การปรับปรุงข้อมูลนั้นมีสิทธิ์ในการปรับปรุงข้อมูลบาง attributes • มีสิทธิ์ลบข้อมูล (Delete authorisation) • สามารถลบข้อมูลจากตารางได้ • ผู้ใช้บางคนอาจมีสิทธิ์ทุกอย่างที่กล่าวมาได้ หากได้รับสิทธิ์จากผู้ดูแลระบบฐานข้อมูล
SQL for Data Control • Security and Access Control • Commands: • CREATE USER • ALTER USER • DROP USER • GRANT • REVOKE
SQL for Data Control • Security and Access Control • Based on three central objects: • Users • Database objects <table, relation or view > • Privileges (select, insert, update, delete, references)
CREATE USER • Function: • การสร้างบัญชีผู้ใช้ในระบบฐานข้อมูล CREATE USER <user_name> IDENTIFIED BY <password> DEFAULT TABLESPACE <tablespace_name> CREATE USER Silva IDENTIFIED BY buu CREATE USER Silva IDENTIFIED BY buu DEFAULT TABLESPACE BUU_DATA
ALTER USER • Function: • การปรับปรุงบัญชีผู้ใช้ในระบบฐานข้อมูล ALTER USER <user_name> [ IDENTIFIED BY <password> ] [ DEFAULT TABLESPACE <tablespace_name>] [QUOTA <n> {K|M} ON <tablespace_name>] ALTER USER Silva QUOTA 15 MON Buu_Data ALTER USER Silva IDENTIFIED BY buu123
DROP USER • Function: • การลบบัญชีผู้ใช้ในระบบฐานข้อมูล DROP USER <user_name> DROP USER Silva
GRANT • Function: • การให้สิทธิ์สำหรับการเข้าถึงข้อมูลในระบบฐานข้อมูลรวมถึงการให้สิทธิ์ในการติดต่อฐานข้อมูลด้วย GRANT <privilege list> ON <relation/table or view> TO <user list> GRANT SELECT, INSERT ON Employee TO Silva GRANT UPDATE(Designation) ON Employee TO Silva, Dias
Command: REVOKE • Function: • การถอนสิทธิ์คืนจากผู้ใช้ REVOKE <privilege list> ON <relation or view> FROM <user list>
REVOKE REVOKE SELECT ON Employee FROM Silva REVOKE UPDATE(Designation) ON Employee FROM Silva