0Pricing
Linux Server Deployment & SSH Mastery · บทเรียน

ผู้ใช้ฐานข้อมูลและการควบคุมการเข้าถึง

สร้างผู้ใช้ฐานข้อมูล มอบสิทธิ์เฉพาะ และนำกลไกควบคุมการเข้าถึงที่รัดกุมมาใช้กับฐานข้อมูลของคุณ

ผู้ใช้ฐานข้อมูลและการควบคุมการเข้าถึง เป็นบทเรียน Linux Server Deployment & SSH Mastery ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Linux Server Deployment & SSH Mastery และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Linux Server Deployment & SSH Mastery มีบทเรียนทั้งหมด 4 บทเรียน

บทนำสู่การจัดการผู้ใช้ฐานข้อมูล

ยินดีต้อนรับสู่การควบคุมผู้ใช้และการเข้าถึงฐานข้อมูล! ในบทเรียนนี้ เราจะเรียนรู้วิธีจัดการว่าใครสามารถทำอะไรกับฐานข้อมูลของคุณได้บ้าง

ลองนึกภาพว่าเป็นการสร้างบัญชีผู้ใช้หลายบัญชีบนคอมพิวเตอร์ โดยแต่ละบัญชีมีสิทธิ์เฉพาะของตนเอง

เหตุใดการควบคุมการเข้าถึงจึงสำคัญ

การควบคุมการเข้าถึงที่เหมาะสมมีความสำคัญอย่างยิ่งต่อความปลอดภัยและความถูกต้องสมบูรณ์ของฐานข้อมูล โดยช่วยให้คุณ:

  • ป้องกันการเข้าถึงโดยไม่ได้รับอนุญาต: เฉพาะผู้ใช้ที่ได้รับอนุญาตเท่านั้นที่สามารถเชื่อมต่อได้
  • บังคับใช้หลักสิทธิ์น้อยที่สุด: ผู้ใช้จะได้รับเฉพาะสิทธิ์ที่จำเป็นอย่างแท้จริง
  • ตรวจสอบการดำเนินการ: ติดตามว่าใครเป็นผู้เปลี่ยนแปลงข้อมูล

สร้างผู้ใช้ฐานข้อมูลใหม่

ขั้นแรก มาสร้างบัญชีผู้ใช้ใหม่ใน PostgreSQL กัน ผู้ใช้นี้จะต้องมีชื่อผู้ใช้และรหัสผ่านที่คาดเดาได้ยาก

เรียกใช้คำสั่งนี้ในไคลเอ็นต์ PostgreSQL (เช่น psql):

CREATE USER coddykit_analyst WITH PASSWORD 'SuperSecureP@ssw0rd!';

มอบสิทธิ์แบบอ่านอย่างเดียว

เมื่อมีผู้ใช้แล้ว มามอบสิทธิ์ให้ผู้ใช้กัน จุดเริ่มต้นที่พบบ่อยคือการให้สิทธิ์แบบอ่านอย่างเดียวแก่ตารางที่ระบุ

คำสั่ง GRANT SELECT อนุญาตให้ผู้ใช้อ่านข้อมูลจากตารางได้:

GRANT SELECT ON TABLE public.sales_data TO coddykit_analyst;

อนุญาตให้แก้ไขข้อมูล

หากผู้ใช้ต้องเพิ่ม เปลี่ยนแปลง หรือลบข้อมูลล่ะ? คุณจะมอบสิทธิ์ INSERT, UPDATE หรือ DELETE

ต่อไปนี้คือวิธีอนุญาตให้เพิ่มและอัปเดตระเบียน:

GRANT INSERT, UPDATE ON TABLE public.customer_info TO coddykit_analyst;

ทำความเข้าใจ ALL PRIVILEGES

ตัวเลือก ALL PRIVILEGES จะมอบสิทธิ์ที่มีอยู่ทั้งหมดในวัตถุฐานข้อมูล โปรดใช้ตัวเลือกนี้ด้วยความระมัดระวังอย่างยิ่ง!

  • GRANT ALL PRIVILEGES ON DATABASE my_db TO admin_user; มีอำนาจสูง
  • WITH GRANT OPTION: อนุญาตให้ผู้รับมอบสิทธิ์เดียวกันนี้แก่ผู้ใช้รายอื่นได้ ซึ่งอาจเป็นความเสี่ยงด้านความปลอดภัยหากจัดการไม่รอบคอบ

เพิกถอนสิทธิ์

บางครั้งจำเป็นต้องลดหรือลบสิทธิ์ของผู้ใช้ทั้งหมด คำสั่ง REVOKE ใช้สำหรับการดำเนินการนี้โดยตรง

ตัวอย่างเช่น หากต้องการลบความสามารถในการอัปเดตข้อมูลลูกค้า:

REVOKE UPDATE ON TABLE public.customer_info FROM coddykit_analyst;

แสดงสิทธิ์ของผู้ใช้

การตรวจสอบว่าผู้ใช้มีสิทธิ์ใดจริงบ้างเป็นสิ่งสำคัญ คุณสามารถสอบถามสคีมาข้อมูลของฐานข้อมูลเพื่อดูข้อมูลนี้ได้

คำสั่งค้นหานี้จะแสดงสิทธิ์ในตารางที่ระบุสำหรับผู้ใช้ที่ระบุ:

SELECT grantee, privilege_type
FROM information_schema.role_table_grants
WHERE table_schema = 'public' AND table_name = 'sales_data' AND grantee = 'coddykit_analyst';

ลบผู้ใช้ฐานข้อมูล

เมื่อไม่จำเป็นต้องใช้บัญชีผู้ใช้อีกต่อไป ควรลบบัญชีนั้นเพื่อลดความเสี่ยงด้านความปลอดภัยที่อาจเกิดขึ้น

ใช้คำสั่ง DROP USER เพื่อลบผู้ใช้ออกจากระบบฐานข้อมูล:

DROP USER coddykit_analyst;

แนวทางปฏิบัติที่ดีที่สุดด้านความปลอดภัย

ปฏิบัติตามแนวทางเหล่านี้เสมอเพื่อรักษาความปลอดภัยของฐานข้อมูลให้แข็งแกร่ง:

  • สิทธิ์น้อยที่สุด: มอบเฉพาะสิทธิ์ที่จำเป็น
  • รหัสผ่านที่คาดเดาได้ยาก: กำหนดให้ใช้รหัสผ่านที่ซับซ้อนและไม่ซ้ำกัน
  • การตรวจสอบเป็นประจำ: ทบทวนบัญชีผู้ใช้และสิทธิ์ของบัญชีเหล่านั้นเป็นระยะ
  • การเข้าถึงตามบทบาท: สร้างบทบาทที่มีสิทธิ์เฉพาะและกำหนดผู้ใช้ให้กับบทบาทเหล่านั้น

ตรวจสอบความรู้ของคุณ

ผู้ใช้ใหม่ชื่อ report_viewer ต้องสามารถอ่านข้อมูลจากตาราง daily_logs และลบรายการเก่าออกจากตารางได้ด้วย ชุดคำสั่งใดจะทำให้สามารถดำเนินการดังกล่าวได้

สรุป: ผู้ใช้และการควบคุมการเข้าถึง

ทำได้ดีมาก! คุณได้เรียนรู้พื้นฐานของผู้ใช้ฐานข้อมูลและการควบคุมการเข้าถึงแล้ว เนื้อหาที่ครอบคลุมมีดังนี้:

  • การสร้างและลบผู้ใช้ฐานข้อมูล
  • การมอบและเพิกถอนสิทธิ์เฉพาะ เช่น SELECT, INSERT, UPDATE และ DELETE
  • การทำความเข้าใจตัวเลือกที่มีอำนาจสูง เช่น ALL PRIVILEGES และ WITH GRANT OPTION
  • แนวทางปฏิบัติที่ดีที่สุดในการรักษาความปลอดภัยฐานข้อมูลด้วยการจัดการผู้ใช้อย่างเหมาะสม

ทักษะเหล่านี้จำเป็นต่อการดูแลสภาพแวดล้อมเซิร์ฟเวอร์ให้ปลอดภัยและจัดการได้อย่างมีประสิทธิภาพ

คำถามที่พบบ่อย

บทเรียน “ผู้ใช้ฐานข้อมูลและการควบคุมการเข้าถึง” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “ผู้ใช้ฐานข้อมูลและการควบคุมการเข้าถึง” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Linux Server Deployment & SSH Mastery ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Linux Server Deployment & SSH Mastery มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “ผู้ใช้ฐานข้อมูลและการควบคุมการเข้าถึง”

สร้างผู้ใช้ฐานข้อมูล มอบสิทธิ์เฉพาะ และนำกลไกควบคุมการเข้าถึงที่รัดกุมมาใช้กับฐานข้อมูลของคุณ คุณปฏิบัติ Linux Server Deployment & SSH Mastery ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Linux Server Deployment & SSH Mastery หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Linux Server Deployment & SSH Mastery บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน

บทเรียน “ผู้ใช้ฐานข้อมูลและการควบคุมการเข้าถึง” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Linux Server Deployment & SSH Mastery นี้ได้ไหม

ได้ บทเรียน Linux Server Deployment & SSH Mastery ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. การติดตั้ง PostgreSQL/MySQL
  2. ผู้ใช้ฐานข้อมูลและการควบคุมการเข้าถึง
  3. การรักษาความปลอดภัยการเชื่อมต่อฐานข้อมูล
  4. กลยุทธ์การสำรองและกู้คืนฐานข้อมูล
← กลับไปที่ Linux Server Deployment & SSH Mastery