เรื่องที่เจ้าของธุรกิจมักตั้งใจจะจัดการทีหลังแล้วลืมไปเลยคือการกำหนดสิทธิ์พนักงานในระบบหลังบ้าน ช่วงเริ่มต้นมีกันไม่กี่คนก็ให้สิทธิ์เต็มไปก่อนเพราะสะดวกกว่า พอทีมโตขึ้นเป็นสิบคนก็กลายเป็นว่าทุกคนเห็นทุกอย่างและแก้ได้ทุกอย่าง บทความนี้อธิบายวิธีกำหนดสิทธิ์พนักงานให้ปลอดภัยโดยที่งานยังเดินได้ตามปกติ
ทำไมการให้สิทธิ์เต็มทุกคนถึงอันตราย
ความเสี่ยงที่ชัดที่สุดคือการทุจริต แต่ในความเป็นจริงเรื่องที่เกิดบ่อยกว่ามากคือความผิดพลาดโดยไม่ตั้งใจ พนักงานที่ไม่ควรมีสิทธิ์แก้การตั้งค่าบัญชีธนาคาร แต่ดันแก้ได้ แล้วกดผิดช่องเพียงครั้งเดียว ผลกระทบอาจกินเวลาแก้เป็นสัปดาห์
อีกความเสี่ยงที่คนมองข้ามคือเมื่อบัญชีพนักงานคนใดคนหนึ่งถูกขโมย ถ้าบัญชีนั้นมีสิทธิ์เต็ม ผู้ที่เข้ามาก็ได้สิทธิ์เต็มไปด้วยทันที แต่ถ้าบัญชีนั้นมีสิทธิ์แค่ดูรายงาน ความเสียหายจะจำกัดอยู่แค่นั้น
และเรื่องที่พูดถึงกันน้อยที่สุดคือ การให้สิทธิ์เต็มทุกคนทำร้ายพนักงานที่ซื่อสัตย์ด้วย เพราะเมื่อเกิดปัญหาขึ้น ทุกคนที่มีสิทธิ์กลายเป็นผู้ต้องสงสัยหมด การจำกัดสิทธิ์จึงเป็นการปกป้องทีมงาน ไม่ใช่การไม่ไว้ใจ
หลักการที่ควรยึด
1ให้สิทธิ์เท่าที่จำเป็นต่อการทำงาน
หลักการนี้เรียกว่า least privilege คือให้สิทธิ์น้อยที่สุดที่ยังทำงานได้ ไม่ใช่ให้ไว้เผื่อ วิธีคิดที่ถูกคือเริ่มจากศูนย์แล้วเพิ่มทีละอย่างเมื่อจำเป็นจริง ไม่ใช่ให้เต็มแล้วค่อยตัดออกทีหลัง เพราะการตัดออกไม่เคยเกิดขึ้นจริงสักที
เวลาพนักงานขอสิทธิ์เพิ่ม ให้ถามว่าต้องใช้ทำงานอะไร ถ้าตอบได้ชัดเจนก็ให้ ถ้าตอบว่าเผื่อไว้ก่อน คำตอบคือยังไม่ให้
2แยกคนทำรายการออกจากคนอนุมัติ
ข้อนี้สำคัญที่สุดสำหรับธุรกิจที่มีเงินหมุน คนที่สร้างรายการจ่ายเงินต้องไม่ใช่คนเดียวกับคนที่อนุมัติรายการนั้น เพราะถ้าเป็นคนเดียวกัน ต่อให้มีระบบบันทึกครบแค่ไหน ก็ไม่มีใครทัดทานได้ในจังหวะที่เกิดเรื่อง
ในทางปฏิบัติคือตั้งวงเงินไว้ว่าเกินเท่าไรต้องให้อีกคนอนุมัติ ธุรกิจส่วนใหญ่ตั้งไว้ที่ระดับที่ความเสียหายเริ่มกระทบกระแสเงินสด อ่านเรื่องการตั้งเงื่อนไขอนุมัติจ่ายเงินเพิ่มเติมได้ที่ หน้าระบบฝาก-ถอน
3กำหนดสิทธิ์ตามบทบาท ไม่ใช่ตามรายบุคคล
ถ้าตั้งสิทธิ์ทีละคน พอมีพนักงานยี่สิบคนจะกลายเป็นยี่สิบชุดที่ไม่มีใครจำได้ว่าใครมีอะไรบ้าง วิธีที่ถูกคือสร้างบทบาทไว้ก่อน เช่น ฝ่ายซัพพอร์ต ฝ่ายบัญชี ผู้ดูแลระบบ แล้วผูกพนักงานเข้ากับบทบาท
ข้อดีคือเมื่อต้องปรับสิทธิ์ของทั้งฝ่าย แก้ที่บทบาทเดียวจบ และเมื่อรับคนใหม่ก็แค่เลือกบทบาทให้ ไม่ต้องมานั่งไล่ติ๊กทีละเมนูแล้วลืมบางอย่าง
4ทุกคนต้องมีบัญชีของตัวเอง
การใช้บัญชีร่วมกันเป็นปัญหาที่พบบ่อยที่สุดในธุรกิจขนาดเล็ก เพราะสะดวกและไม่ต้องจ่ายค่า user เพิ่ม แต่ผลคือเมื่อเกิดเรื่อง คุณจะรู้แค่ว่าบัญชีนี้ทำ แต่ไม่รู้ว่าคนไหนเป็นคนทำ
บัญชีร่วมทำให้ audit log ที่คุณมีอยู่ไร้ค่าทันที เพราะบันทึกได้แค่ชื่อบัญชี ไม่ใช่ชื่อคน อ่านเพิ่มเติมว่า audit log ที่ใช้ได้จริงต้องมีอะไรบ้างที่บทความ Audit Log คืออะไร ทำไมธุรกิจที่มีเงินหมุนต้องมี
5ถอนสิทธิ์ทันทีเมื่อคนออก
ช่องโหว่ที่พบบ่อยที่สุดคือบัญชีของพนักงานที่ลาออกไปแล้วแต่ยังใช้งานได้อยู่ บางที่พบบัญชีที่ค้างมาเป็นปีโดยไม่มีใครรู้
วิธีแก้คือทำเป็นขั้นตอนบังคับ ว่าวันสุดท้ายของการทำงานต้องปิดบัญชีทันที ไม่ใช่รอให้ HR แจ้ง และควรตรวจรายชื่อผู้ใช้ทั้งหมดทุกไตรมาสว่ายังมีใครที่ไม่ควรอยู่ในระบบแล้วบ้าง
ตัวอย่างการแบ่งบทบาทที่ใช้ได้จริง
นี่คือโครงที่ธุรกิจส่วนใหญ่ปรับใช้ได้เลย ปรับชื่อและรายละเอียดตามโครงสร้างทีมของคุณ
| บทบาท | ทำได้ | ทำไม่ได้ |
|---|---|---|
| ซัพพอร์ต | ดูข้อมูลลูกค้า ตอบแชท ดูประวัติรายการ | แก้ยอด อนุมัติถอน แก้การตั้งค่า |
| การเงิน | สร้างรายการจ่าย ดูรายงาน ส่งออกข้อมูล | อนุมัติรายการที่ตัวเองสร้าง แก้สิทธิ์ผู้ใช้ |
| ผู้อนุมัติ | อนุมัติรายการเกินวงเงิน ดูรายงานทั้งหมด | สร้างรายการจ่ายเอง |
| การตลาด | ดูสถิติรวม ส่งแคมเปญ จัดการเนื้อหา | เห็นเลขบัญชีลูกค้า ดูรายการเงิน |
| ผู้ดูแลระบบ | จัดการผู้ใช้ ตั้งค่าระบบ ดู audit log | สร้างหรืออนุมัติรายการจ่ายเงิน |
เลื่อนตารางไปทางซ้ายขวาเพื่อดูทุกคอลัมน์
สิ่งที่ควรจำกัดเป็นพิเศษ
ไม่ใช่ทุกเมนูมีความเสี่ยงเท่ากัน ห้าอย่างนี้ควรให้สิทธิ์เฉพาะคนที่จำเป็นจริง ๆ และควรมีการแจ้งเตือนทุกครั้งที่ถูกใช้งาน
- 1การแก้ข้อมูลบัญชีธนาคาร ทั้งบัญชีรับเงินของธุรกิจและบัญชีปลายทางของลูกค้า จุดนี้คือเป้าหมายอันดับหนึ่งของการทุจริต
- 2การอนุมัติรายการเกินวงเงิน ควรจำกัดไว้ที่คนไม่เกินสองถึงสามคน และไม่ควรเป็นคนเดียวกับผู้สร้างรายการ
- 3การเปลี่ยนสิทธิ์ผู้ใช้ คนที่แก้สิทธิ์ได้เท่ากับให้สิทธิ์ตัวเองได้ ควรจำกัดที่คนเดียวและตรวจ audit log ทุกครั้งที่มีการแก้
- 4การส่งออกข้อมูลลูกค้า การ export ฐานข้อมูลทั้งก้อนควรต้องขออนุมัติ ไม่ใช่กดได้เลย เพราะเป็นช่องทางที่ข้อมูลรั่วออกง่ายที่สุด
- 5การลบหรือแก้รายการย้อนหลัง ในอุดมคติไม่ควรมีใครทำได้เลย ถ้าจำเป็นต้องแก้ ควรใช้วิธีสร้างรายการปรับปรุงใหม่แทนการแก้ของเดิม
สามข้อผิดพลาดที่พบบ่อย
ให้สิทธิ์ตามตำแหน่ง ไม่ใช่ตามงานผู้จัดการไม่จำเป็นต้องมีสิทธิ์มากกว่าลูกน้องเสมอไป ถ้างานประจำวันไม่ได้ใช้เมนูนั้น ก็ไม่ควรมีสิทธิ์ ตำแหน่งสูงไม่ได้แปลว่าต้องเห็นทุกอย่าง
ให้สิทธิ์ชั่วคราวแล้วลืมถอนเช่นให้สิทธิ์เพิ่มตอนคนอื่นลาพักร้อน แล้วไม่ได้ถอนคืนเมื่อเจ้าตัวกลับมา ควรบันทึกไว้ทุกครั้งว่าให้ชั่วคราวถึงวันไหน และตั้งเตือนไว้
ไม่เคยตรวจว่าใครมีสิทธิ์อะไรบ้างตั้งครั้งเดียวตอนเปิดระบบแล้วไม่เคยกลับมาดูอีกเลย ควรตรวจทุกไตรมาส ใช้เวลาไม่เกินครึ่งชั่วโมงแต่ป้องกันปัญหาได้มาก
เริ่มจัดระเบียบสิทธิ์วันนี้ใน 4 ขั้นตอน
ถ้าตอนนี้ระบบของคุณให้สิทธิ์เต็มกันหมดอยู่ ไม่ต้องรื้อทั้งหมดในวันเดียว ทำตามลำดับนี้ได้
- 1ดึงรายชื่อผู้ใช้ทั้งหมดออกมาดู แล้วปิดบัญชีของคนที่ไม่ได้ทำงานแล้วทันที
- 2ระบุห้าเมนูเสี่ยงในหัวข้อด้านบน แล้วตัดสิทธิ์ออกจากทุกคนที่ไม่ได้ใช้ในงานประจำวัน
- 3สร้างบทบาทตามตารางด้านบน แล้วย้ายพนักงานเข้าบทบาทแทนการตั้งทีละคน
- 4ตั้งวันในปฏิทินไว้ทุกไตรมาส เพื่อกลับมาตรวจว่ายังถูกต้องอยู่
สรุป
การกำหนดสิทธิ์พนักงานที่ดีไม่ได้ทำให้งานช้าลง แต่ทำให้เมื่อเกิดเรื่องขึ้น คุณรู้ทันทีว่าเกิดจากใครและจำกัดความเสียหายได้ หลักสำคัญมีแค่สามข้อ คือให้เท่าที่จำเป็น แยกคนทำออกจากคนอนุมัติ และตรวจซ้ำเป็นประจำ
เรื่องนี้ทำงานคู่กับ audit log เสมอ เพราะการจำกัดสิทธิ์คือการป้องกันไม่ให้เกิด ส่วน audit log คือการรู้ว่าเกิดอะไรขึ้นแล้ว ระบบที่ดีต้องมีทั้งสองอย่าง
- Audit Log คืออะไร ทำไมธุรกิจที่มีเงินหมุนต้องมีส่วนที่ทำงานคู่กับการจำกัดสิทธิ์
- เลือกผู้ให้บริการระบบหลังบ้าน 7 ข้อที่ต้องตรวจถามเรื่องระบบสิทธิ์ให้ครบก่อนเซ็นสัญญา
- ระบบฝาก-ถอนและการตั้งเงื่อนไขอนุมัติวิธีกำหนดวงเงินที่ต้องให้ผู้ดูแลตรวจก่อนจ่าย
- ระบบ ALLFORBET One Stop Serviceระบบที่กำหนดสิทธิ์ตามบทบาทได้หลายระดับ
อยากดูหน้าจัดการสิทธิ์ตัวจริง
นัดดูเดโม่กับทีมงาน เราจะเปิดหน้าจัดการผู้ใช้ในระบบจริงให้ดู แล้วลองสร้างบทบาทกับกำหนดสิทธิ์ให้ดูสด ไม่ใช่แค่ภาพสไลด์
ดูรายละเอียดระบบทั้งหมดได้ที่ หน้าบริการ หรือดูราคาแบบเปิดเผยที่ หน้าแพ็กเกจ ไม่มีค่าใช้จ่ายในการปรึกษาและดูเดโม่

