
 
    เนื่องจาก 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 ความคิดเห็น:
แสดงความคิดเห็น