การรักษาความปลอดภัยของข้อมูล

SQL Knowledge ทั้ง sql มาตรฐาน หลักการออกแบบฐานข้อมูล ความสัมพันธ์ของ ตาราง Mysql , PGSQL, Oracle, MSSQL

Moderator: mindphp, ผู้ดูแลกระดาน

M013
PHP Super Hero Member
PHP Super Hero Member
โพสต์: 829
ลงทะเบียนเมื่อ: 22/04/2010 12:02 pm

การรักษาความปลอดภัยของข้อมูล

โพสต์ที่ยังไม่ได้อ่าน โดย M013 »

การรักษาความปลอดภัยของข้อมูล
ข้อมูลเป็นสิ่งสำคัญของทุกๆองค์กร ไม่ว่าจะเป็น ข้อมูลลูกค้า ข้อมูลพนักงาน ข้อมูลการขาย ข้อมูลการสั่งซื้อ เป็นต้น
ข้อมูลเหล่านี้ในบางครั้งก็เป็นความลับขององค์กร
ดังนั้น ฐานข้อมูลจึงควรมีการรักษาความปลอดภัยของข้อมูล โดยการอนุญาตสิทธิ์ในการเข้าสู่ระบบ การกำหนดสิทธิ์ในการดำเนินการกับข้อมูล
การกำหนดลำดับความสำคัญของผู้ใช้ เช่น DBA, Programmer, User เป็นต้น


1.การสร้างผู้ใช้บนระบบ (ผู้ที่สามารถสร้างผู้ใช้ต้องเป็น DBA เท่านั้น)
รูปแบบการใช้งาน

โค้ด: เลือกทั้งหมด

CREATE USER <ชื่อผู้ใช้> IDENTIFIED BY <รหัสผ่านของผู้ใช้>
DEFAULT  TABLESPACE <ชื่อของ tablespace>
TEMPORARY TABLESPACE <ชื่อของ temporary>
คำอธิบาย
<ชื่อของ tablespace> ทราบได้โดยการสอบถามจากตารางใน Data Dictionary.
ตัวอย่างการใช้งาน

โค้ด: เลือกทั้งหมด

CREATE USER Sirirut IDENTIFIED BY 0001
DEFAULT TABLESPACE user_data
TEMPORARY TABLESPACE temporary_data;
ผลลัพธ์
มีผู้ใช้งานระบบเพิ่มเข้ามาโดยมีชื่อว่า Sirirut และ รหัสผ่านคือ 0001

การยกเลิกผู้ใช้งาน
(ผู้ที่สามารถสร้างผู้ใช้ต้องเป็น DBA เท่านั้น)
รูปแบบการใช้งาน

โค้ด: เลือกทั้งหมด

DROP USER <ชื่อผู้ใช้>;
ตัวอย่างการใช้งาน

โค้ด: เลือกทั้งหมด

DROP USER Sirirut;
ผลลัพธ์
Sirirut ไม่สามารถใช้งานในระบบต่อไปได้


2.การกำหนดสิทธิ์ด้วย GRANT

การกำหนดสิทธิ์การเข้าถึงข้อมูลของผู้ใช้งาน (Privilege) ซึ่งจะประกอบไปด้วย SELECT, INSERT, UPDATE เป็นต้น
รูปแบบการใช้งาน

โค้ด: เลือกทั้งหมด

GRANT  a privilege
ON     a table or view
TO     a user or group of user;
คำอธิบาย
GRANT กำหนดสิทธิ์ของการเข้าถึงข้อมูล SELECT, INSERT, UPDATE เป็นต้น
ON ชื่อตารางข้อมูล
TO สำหรับใครสามารถระบุเป็นชื่อผู้ใช้ หรือ หากกำหนดสิทธิ์ให้กับทุกคนก็ให้กำหนดเป็น public
ตัวอย่างการใช้งานที่ 1
ภาพที่ 1.1 ตารางข้อมูลลูกค้า
ภาพที่ 1.1 ตารางข้อมูลลูกค้า
cus_table.jpg (117.27 KiB) Viewed 682 times
>> กำหนดให้ผู้ใช้งานระบบ Sirirut สามารถค้นหา เพิ่ม และเเก้ไขข้อมูลลูกค้าได้

โค้ด: เลือกทั้งหมด

GRANT SELECT, INSERT, UPDATE
ON Customer
TO Sirirut;
ตัวอย่างการใช้งานที่ 2
>> กำหนดให้ผู้ใช้งานระบบทุกคนสามารถค้นหาข้อมูลลูกค้าได้

โค้ด: เลือกทั้งหมด

GRANT SELECT
ON Customer
TO public;
3.การยกเลิกสิทธิ์ด้วย REVOKE
เป็นการยกเลิกสิทธิ์ที่กำหนด GRANT เอาไว้
รูปแบบการใช้งาน

โค้ด: เลือกทั้งหมด

REVOKE a privilege
ON     a table or view
TO     a user or group of user;
*** การใช้งานจะเหมือนกับการกำหนดสิทธิ์ GRANT ทุกอย่างเพียงเเต่เมื่อต้องกาารยกเลิกให้ใช้คำสั่ง REVORK
ตัวอย่างการใช้งาน

โค้ด: เลือกทั้งหมด

REVORK SELECT, INSERT, UPDATE
ON Customer
TO Sirirut;
ผลลัพธ์
ผู้ใช้ระบบที่ชื่อ Sirirut ไม่สามารถค้นหา เพิ่ม และแก้ไขข้อมูลของลูกค้าได้อีกต่อไป

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 93