
เนื่องจาก MySQL ทำงานภายใต้ Client Server
สามารถทำงานได้ทั้งเครือข่าย Internet
และ Intranet
นั่นหมายความว่าผู้ใช้สามารถใช้
MySQL จากที่ใดก็ได้ในโลกที่มี Internet
อย่างไรก็ตามถ้ามีผู้ใช้ผู้อื่นที่ไม่พึงประสงค์
เข้ามาใช้ข้อมูลของเราหรือผู้บุกรุกระบบ
(Hacker)
ก็จะสร้างความเสียหายแก่ข้อมูลของเราได้
ความจำเป็นของระบบป้องกันความปลอดภัย
จึงต้องเข้ามาเกี่ยวข้องด้วย
MySQL
ได้มีระบบดังกล่าวมาให้เรียบร้อยแล้ว
มันสามารถกำหนดผู้ใช้ฐานข้อมูลตลอดจนสิทธิในการใช้
เช่นสามารถดูข้อมูลได้อย่างเดียว
หรือสามารถดูแก้ไขและลบข้อมูลได้
เป็นต้น
การกำหนดสิทธิ(ระดับการใช้ข้อมูล)
และผู้ใช้มีรูปแบบคำสั่งดังต่อไปนี้
รูปแบบคำสั่งการกำหนดผู้ใช้ข้อมูล
|
รูปแบบคำสั่งกำหนดผู้ใช้ข้อมูล
GRANT all/select,insert,update,delete ON tablename TO username; คำอธิบาย GRANT all/select,insert,update,delete ON tablename TO username; GRANT คำ สั่งกำหนดสิทธิและผู้ใช้ข้อมูล all ให้สิทธิทั้งหมด insert, select, update, delete select,insert,update,delete สิทธิการใช้อาจไม่ต้องกำหนดให้ทั้งหมดก็ได้ สามารถเลือกได้ตามความต้องการ ON เป็นการกำหนดให้ table ชื่ออะไร TO ให้แก่ใคร username ชื่อของ user ที่ต้องการกำหนด ตัวอย่าง SELECT * FROM phonebook ORDER BY salary; |
ให้กำหนดสิทธิผู้ใช้ฐานข้อมูล table phonebook ชื่อ jib โดยสามารถจัดการข้อมูลได้ทุกอย่าง
ผลลัพธ์ดังภาพข้างล่าง
mysql>
mysql> GRANT all ON phonebook TO jib;
Query OK, 0 rows affected (0.03 sec)
mysql>
|
ให้กำหนดสิทธิผู้ใช้ฐานข้อมูล table phonebook ชื่อ somchai โดยสามารถ select และ insert data ได้เท่านั้น
ผลลัพธ์ดังภาพข้างล่าง
mysql>
mysql> GRANT select,insert ON phonebook TO somchai;
Query OK, 0 rows affected (0.00 sec)
mysql>
|
รูปแบบคำสั่งการขอดูผู้ใช้ข้อมูล
|
รูปแบบคำสั่งขอดูผู้ใช้ข้อมูล SELECT user(); คำอธิบาย SELECT user(); SELECT ขอดูข้อมูล user() ข้อมูล user ที่เรากำหนด ตัวอย่าง SELECT user(); |
ให้ขอดู user ที่เรากำหนดไว้แล้ว
ผลลัพธ์ ดังภาพ
mysql>
mysql> SELECT user();
+----------------+
| user() |
+----------------+
| root@localhost |
+----------------+
1 row in set (0.01 sec)
mysql>
|
การยก
เลิกผู้ใช้ฐานข้อมูล
|
รูปแบบคำสั่งการยกเลิกผู้ใช้ข้อมูล
|
รูปแบบคำสั่งจัดการกำหนดผู้ใช้ข้อมูล
REVOKE all/select,insert,update,delete ON tablename From username; คำอธิบาย REVOKE all/select,insert,update,delete ON tablename From username; REVOKE คำ สั่งยกเลิกการกำหนดสิทธิและผู้ใช้ข้อมูล all ยกเลิกทั้งหมด select,insert,update,delete ยกเลิกบางส่วน สามารถเลือกได้ตามความต้องการ ON ยกเลิกที่ table ชื่ออะไร From ยกเลิกผู้ใด username ชื่อของ user ที่ต้องการยกเลิก ตัวอย่าง REVOKE all ON phonebook From jib; |
ให้ยกเลิกสิทธิผู้ใช้ฐานข้อมูล table phonebook ชื่อ somchai โดยยกเลิกทั้งหมด (ได้สร้างจากข้างต้นแล้ว)
ผลลัพธ์ดังภาพข้างล่าง
mysql>
mysql> REVOKE all ON phonebook FROM somchai;
Query OK, 0 rows affected (0.01 sec)
mysql>
|
ให้ยกเลิกสิทธิผู้ใช้ฐานข้อมูล table phonebook ชื่อ jib โดยยกเลิกเฉพาะ update, delete (ได้สร้างจากข้างต้นแล้ว)
ผลลัพธ์ดังภาพข้างล่าง
mysql>
mysql> REVOKE update,delete ON phonebook FROM jib;
Query OK, 0 rows affected (0.00 sec)
mysql>
|






0 ความคิดเห็น:
แสดงความคิดเห็น