บทที่ 4

คู่มือผู้ดูแลระบบ (System Admin)

Platform-level role · จัดการข้ามโรงเรียน · สร้าง/แก้ไขโรงเรียน · อนุมัติคำขอ · เปลี่ยน role ของ user

Role นี้มีสิทธิ์สูงสุด — สามารถเปลี่ยนอะไรก็ได้ในระบบทุกโรงเรียน · ใช้กับคนที่ไว้ใจจริง เท่านั้น (admin ทีมงาน krumis.app) · System Admin ไม่จำเป็นต้องผูกกับโรงเรียนใด

ลำดับสิทธิ์ (Role Hierarchy)

ความสัมพันธ์ระหว่าง 4 roles

System Admin
Platform-level · ข้ามโรงเรียน · สร้างโรงเรียน · ทำได้ทุกอย่าง
School Admin
ดูแลระดับโรงเรียน · scope เฉพาะของตัวเอง · ใช้ระบบครูได้ด้วย
Teacher
ครู · มีห้องเรียนของตัวเอง · scope เฉพาะนักเรียนใน advisory
Student
นักเรียน · ดูคะแนนตัวเอง · ไม่มี 2FA
Hierarchical access: System Admin ทำได้ทุกอย่างที่ School Admin ทำ + เพิ่ม · School Admin เข้าหน้าครู /t ได้ด้วย (เผื่อ admin ที่สอนเอง)

1. จัดการโรงเรียน

/admin/system · สร้าง · แก้ไข · ดูสถิติ

Dashboard /admin/system

  • สถิติข้ามโรงเรียน: จำนวนโรงเรียน · admin · ครู · นักเรียน
  • รายการโรงเรียนทั้งหมด + จำนวน member แต่ละโรง
  • ปุ่ม + เพิ่มโรงเรียน และ + เพิ่มผู้ใช้

สร้างโรงเรียนใหม่

  1. กด + เพิ่มโรงเรียน/admin/system/schools/new
  2. กรอก ชื่อ + รหัส สพฐ. 10 หลัก
  3. Save — โรงเรียนถูกสร้าง (ยังไม่มี admin)
  4. ถัดไปสร้าง School Admin ให้ (ดูข้อ 3)

แก้ไขโรงเรียน

ในลิสต์โรงเรียน → กดไอคอน แก้ไข → เปลี่ยนชื่อหรือรหัสได้ · Audit log จะบันทึก action "school.update"

2. อนุมัติคำขอโรงเรียน

/admin/system/school-requests

เมื่อมีครูใหม่ขอ join / สร้างโรงเรียน จะเข้าคิวรอที่นี่ · มี 2 ประเภท:

เข้าร่วมโรงเรียน · Teacher

ขอเข้าร่วมโรงเรียนที่มีอยู่

ครูเลือกโรงเรียนจาก dropdown · Approve → user เข้าเป็น ครู ของโรงเรียนนั้น

สร้างโรงเรียนใหม่ · Teacher

ขอสร้างโรงเรียนใหม่

ครูระบุชื่อ + รหัสโรงเรียน · Approve → ระบบสร้างโรงเรียนใหม่ + user เข้าเป็น ครู ของโรงเรียนนั้น

ขั้นตอนอนุมัติ

  1. ตรวจรายละเอียดคำขอ (ชื่อคนขอ, email, ชื่อโรงเรียน)
  2. กด อนุมัติ — โรงเรียนถูกสร้าง/join, user กลายเป็นครู
  3. หรือกด ปฏิเสธ — ใส่เหตุผล
โรงเรียนใหม่ที่ถูกสร้างจะ ยังไม่มี School Admin · ต้องสร้าง admin ให้ทีหลังที่ /admin/system/users/new (ดูข้อ 3)

3. จัดการ User ข้ามโรงเรียน

/admin/system/users/new + /admin (role filters)

สร้าง user ใน role ใดก็ได้

/admin/system/users/new — รองรับการสร้าง role ใดก็ได้:

  • Teacher — ผูกกับโรงเรียน (เลือกจาก dropdown)
  • School Admin — ผูกกับโรงเรียน + สามารถจัดการโรงเรียนนั้นได้
  • System Admin — ไม่ต้องผูกกับโรงเรียน

เปลี่ยน Role ของ user เก่า

ไป /admin → tab ทั้งหมด / Admins — คลิก user → ในหน้า detail มีการ์ด "Role / บทบาท" → เลือก role ใหม่ → Save

ไม่สามารถลดระดับตัวเอง จาก System Admin ได้ — ให้ System Admin คนอื่นเปลี่ยนให้ (ป้องกัน lock out โดยไม่ตั้งใจ)

4. รีเซ็ต 2FA ให้ user

เมื่อ user ลืมมือถือ / เปลี่ยนเครื่อง

เมื่อ user แจ้งว่าเข้าระบบไม่ได้เพราะลืม 2FA:

  1. ยืนยันตัวตน user ก่อน (โทร/LINE/email) — สำคัญมาก!
  2. ไป /admin/teachers/[id] ของ user
  3. การ์ดสีแดง "รีเซ็ต 2FA" → กด รีเซ็ต 2FA สำหรับ user นี้
  4. User login ครั้งถัดไปจะเจอหน้า QR setup ใหม่
Audit log บันทึก action user.2fa.reset — ถ้ามีการ abuse จะย้อนดูได้

5. Audit Log ระดับ Platform

/admin/audit · ข้ามโรงเรียน

System Admin เห็น audit log ของ ทุกโรงเรียน ไม่ใช่แค่โรงเรียนของตัวเอง · Filter ตามโรงเรียน, ครู, action type ได้ครบ

Audit log เก็บ 90 วัน (default) · ถ้าต้องการข้อมูลเก่ากว่านั้น ต้อง backup DB แยก
krumis.app — ระบบจัดการงานครูไทย