วิธีตั้งสิทธิ์ Admin ใน txAdmin FiveM แบ่งสิทธิ์ Owner, Developer และ Moderator ให้ปลอดภัย

การ ตั้งสิทธิ์ Admin ใน txAdmin ควรทำตามหน้าที่ของทีมงาน ไม่ควรให้ Admin ทุกคนใช้ all_permissions เพราะ txAdmin สามารถควบคุม FiveM Server ได้ตั้งแต่ Kick/Ban ผู้เล่น, Teleport, Restart Resource ไปจนถึง Stop หรือ Restart Server ทั้งเครื่อง

ระบบ Permission ของ txAdmin ถูกออกแบบมาเพื่อให้เจ้าของ Server กำหนดได้ละเอียดว่า Admin แต่ละคนทำอะไรได้บ้าง

ตัวอย่างเช่น Moderator อาจได้รับเพียง

menu.viewids
players.direct_message
players.warn
players.kick
players.spectate

ขณะที่ Developer อาจเพิ่ม

console.view
console.write
commands.resources
server.cfg.editor
control.server

ส่วน all_permissions ควรเก็บไว้สำหรับ Owner หรือผู้ดูแลระดับสูงที่จำเป็นจริง ๆ

① txAdmin Permission คืออะไร

Permission คือสิทธิ์ที่กำหนดว่า Admin Account สามารถทำ Action ใดได้บ้าง

ตัวอย่าง

console.view

อนุญาตให้ดู Console

แต่

console.write

อนุญาตให้ส่ง Command เข้า Console

ดังนั้นผู้ดูแลสามารถให้ Staff ดู Error ได้โดยไม่จำเป็นต้องให้สิทธิ์ Execute Command

② ทำไมต้องแบ่งสิทธิ์ Admin

เพราะ Staff แต่ละตำแหน่งมีหน้าที่ไม่เหมือนกัน

ตัวอย่าง

Moderator
→ ดู Player / Warn / Kick

Admin
→ Ban / Spectate / Teleport

Developer
→ Console / Resources / Config

Owner
→ จัดการทุกอย่าง

ถ้าแจก Root ให้ทุกคน ความผิดพลาดจาก Staff เพียงคนเดียวอาจกระทบ Server ทั้งเมืองได้

③ ตั้ง Permission ที่ไหน

txAdmin มีหน้า

Admin Manager

สำหรับจัดการ Admin Accounts และ Permissions

ตามระบบปัจจุบัน Master Admin หรือ Account ที่มี

all_permissions

หรือ

manage.admins

สามารถสร้าง แก้ไข และลบ Admin Account ได้

④ Permission ถูกเก็บไว้ที่ไหน

txAdmin เก็บ Admin Permissions ในข้อมูลของ txAdmin โดยเอกสารปัจจุบันระบุไฟล์

txData/admins.json

แต่โดยทั่วไปควรจัดการ Permission ผ่าน Admin Manager

ไม่ควรเปิดไฟล์แล้วแก้ JSON ด้วยมือหากไม่จำเป็น

⑤ วิธีเข้า Admin Manager

Login txAdmin ผ่าน Browser

ถ้าอยู่เครื่อง Server เดียวกัน ค่า Default มักใช้

http://localhost:40120

จากนั้นเข้าเมนู Admin Manager

Account ที่ใช้ต้องมีสิทธิ์จัดการ Admin ก่อนจึงจะสามารถแก้ Account อื่นได้

⑥ วิธีเพิ่ม Admin ใหม่

แนวทางคือ

Admin Manager
↓
Add Admin
↓
ตั้ง Username
↓
เพิ่ม Identifier
↓
เลือก Permissions
↓
Save

ควรสร้าง Account แยกสำหรับ Staff แต่ละคน

ไม่ควรให้ทุกคนใช้ Owner Account เดียวกัน

⑦ Identifier สำคัญอย่างไร

ถ้าต้องการให้ Admin ใช้ txAdmin In-game Menu ระบบต้องสามารถระบุได้ว่า Player คนใดตรงกับ Admin Account ใด

txAdmin รองรับการผูก Identifier ที่เกี่ยวข้อง เช่น Cfx.re หรือ Discord ตามระบบปัจจุบัน

แนวคิดคือ

Player
↓
Identifier
↓
txAdmin Admin Account
↓
Permissions

หาก Identifier ไม่ตรง /tx อาจไม่เปิด Admin Menu

⑧ all_permissions คืออะไร

Permission

all_permissions

คือ Root Permission

ผู้ใช้ที่ได้รับสิทธิ์นี้สามารถทำ Action ทุกอย่างใน txAdmin

เมื่อกำหนด all_permissions ระบบจะไม่จำเป็นต้องเก็บ Permission ย่อยอื่นร่วมด้วย

ถือเป็นสิทธิ์ระดับสูงที่สุด

⑨ ใครควรได้ all_permissions

โดยทั่วไปควรจำกัดไว้ที่

  • Server Owner

  • Technical Owner

  • Senior Administrator ที่จำเป็นจริง

ไม่ควรให้

  • Moderator ใหม่

  • Support

  • Trial Admin

  • Staff ที่ทำหน้าที่ตอบ Report อย่างเดียว

ได้รับ Root Permission

⑩ manage.admins คืออะไร

Permission

manage.admins

อนุญาตให้

Create Admin
Edit Admin
Remove Admin

เป็น Permission ที่ทรงพลังมาก

เพราะผู้ที่จัดการ Admin ได้สามารถแก้สิทธิ์ของ Staff คนอื่นได้

⑪ settings.view คืออะไร

settings.view

ใช้สำหรับดูหน้า Settings ของ txAdmin ในขอบเขตที่เกี่ยวข้อง

เหมาะกับผู้ดูแลที่ต้องตรวจ Configuration แต่ไม่จำเป็นต้องแก้ไข

แยกจาก Permission สำหรับเขียน Settings

⑫ settings.write คืออะไร

settings.write

อนุญาตให้เปลี่ยน Settings

จึงควรจำกัดมากกว่า settings.view

Staff ที่ต้องการเพียงตรวจค่าปัจจุบันไม่จำเป็นต้องมีสิทธิ์เขียน

⑬ console.view คืออะไร

Permission

console.view

ใช้ดู Live Console

เหมาะกับ

  • Developer

  • Technical Support

  • Senior Admin

เพื่อดู

  • Resource Error

  • Player Connection

  • Warning

  • Database Error

โดยยังไม่สามารถ Execute Command หากไม่มี console.write

⑭ console.write คืออะไร

Permission

console.write

ใช้ส่ง Command เข้า Server Console

เป็น Permission ที่ควรระวัง เพราะ Console Commands สามารถควบคุม Server ได้หลายส่วน

เช่น

restart resource_name
ensure resource_name
stop resource_name

รวมถึง Command จาก Resources อื่นที่ Server ติดตั้งไว้

⑮ ควรให้ console.write กับ Moderator ไหม

โดยทั่วไป ไม่จำเป็น

Moderator ที่มีหน้าที่

  • รับ Report

  • Warn

  • Kick

  • Spectate

ไม่จำเป็นต้อง Execute Server Console Commands

ให้ console.view เฉพาะเมื่อจำเป็นก็เพียงพอ

⑯ control.server คืออะไร

Permission

control.server

ใช้สำหรับ

Start Server
Stop Server
Restart Server

หาก Staff ใช้ผิด Player ทั้ง Server อาจ Disconnect ได้

ควรให้เฉพาะ Owner, Developer หรือ Senior Admin ที่รับผิดชอบ Maintenance

⑰ commands.resources คืออะไร

Permission

commands.resources

ใช้สำหรับ Start/Stop Resources

เหมาะกับ Developer ที่ต้อง

  • Test Script

  • Restart Resource

  • Reload ระบบ

  • Debug Resource

Moderator ปกติไม่จำเป็นต้องมี

⑱ server.cfg.editor คืออะไร

Permission

server.cfg.editor

ใช้สำหรับอ่านและเขียน server.cfg ผ่าน txAdmin

ถือเป็นสิทธิ์สำคัญ เพราะ server.cfg สามารถมี

  • Server Configuration

  • Resource List

  • Convars

  • Permissions

  • Server Key

จึงควรให้เฉพาะทีม Technical

⑲ announcement คืออะไร

Permission

announcement

ใช้ส่งประกาศ Server

เหมาะกับ Admin ที่ต้องแจ้ง

  • Restart

  • Maintenance

  • เหตุการณ์สำคัญ

  • Server Notice

สามารถให้ Moderator หรือ Senior Staff ได้ตามระบบบริหารของ Server

⑳ txadmin.log.view คืออะไร

txadmin.log.view

ใช้ดู txAdmin Log

มีประโยชน์สำหรับตรวจการทำงานของระบบและกิจกรรมที่เกี่ยวข้องกับ txAdmin

เหมาะกับ Owner และ Senior Technical Admin

㉑ server.log.view คืออะไร

server.log.view

ใช้ดู Server Logs

ช่วยในการตรวจ

  • Error

  • Connections

  • Server Activity

โดยไม่จำเป็นต้องให้ Permission สำหรับแก้ Config หรือควบคุม Server

㉒ menu.vehicle คืออะไร

Permission

menu.vehicle

อนุญาต Vehicle Tools เช่น

  • Spawn Vehicle

  • Fix Vehicle

  • Delete Vehicle

  • Vehicle Actions ที่ระบบรองรับ

เหมาะกับ Developer หรือ Admin ที่ต้องแก้ปัญหาเกี่ยวกับรถ

㉓ menu.clear_area คืออะไร

menu.clear_area

ใช้ Reset/Clear World Area

เป็น Action ที่สามารถกระทบ Entities ในบริเวณหนึ่งได้

ควรจำกัดไว้กับ Staff ที่เข้าใจผลกระทบ

㉔ menu.viewids คืออะไร

menu.viewids

ใช้แสดง Player IDs ภายในเกม

เป็น Permission พื้นฐานที่เหมาะกับ Moderator

ช่วยให้ระบุ Player ที่กำลังถูกรายงานได้ง่ายขึ้น

㉕ players.direct_message คืออะไร

players.direct_message

ใช้ส่งข้อความโดยตรงไปยัง Player

เหมาะกับ Support และ Moderator

เช่น

กรุณาหยุดรถและรอ Admin ตรวจสอบ

ไม่ต้องประกาศเรื่องของ Player คนเดียวให้ทั้ง Server เห็น

㉖ players.whitelist คืออะไร

players.whitelist

ใช้จัดการ Whitelist Player ตามระบบที่ txAdmin รองรับ

ควรให้กับ Staff ที่รับผิดชอบการอนุมัติผู้เล่นจริง

ไม่จำเป็นสำหรับ Moderator ทุกคน

㉗ players.warn คืออะไร

players.warn

ใช้ Warn Player

เหมาะเป็นหนึ่งใน Permission พื้นฐานของ Moderator

ควรกำหนดนโยบายให้ใส่ Reason ที่ชัดเจน เช่น

Fail RP - ครั้งที่ 1

แทนการเขียนสั้น ๆ ว่า ผิดกฎ

㉘ players.kick คืออะไร

players.kick

อนุญาตให้ Kick Player ออกจาก Server

Player สามารถกลับเข้ามาใหม่ได้หากไม่มี Ban หรือ Restriction อื่น

เหมาะกับ Moderator ที่ผ่านการอบรมกฎ Serverแล้ว

㉙ players.ban คืออะไร

players.ban

อนุญาต Ban และ Unban Player

ถือว่าสูงกว่า Kick เพราะมีผลต่อการเข้า Server ในอนาคต

ควรจำกัดให้ Senior Moderator หรือ Admin ตามโครงสร้างทีม

㉚ players.freeze คืออะไร

players.freeze

ใช้ Freeze หรือ Unfreeze Player Ped

เหมาะเวลา Admin ต้องหยุด Player ชั่วคราวเพื่อ

  • ตรวจ Report

  • แก้ Bug

  • สอบถามเหตุการณ์

ควรใช้อย่างมีเหตุผล

㉛ players.heal คืออะไร

players.heal

ใช้ Heal ตัวเองหรือ Player ตามความสามารถของ Admin Menu

อย่างไรก็ตาม Framework เช่น ESX/QBCore อาจมี Dead State ของตัวเอง

ดังนั้น Heal ของ txAdmin อาจไม่ได้เท่ากับ Framework Revive เสมอไป

㉜ players.playermode คืออะไร

Permission

players.playermode

ครอบคลุม Player Mode เช่น

  • NoClip

  • God Mode

  • Super Jump

เป็น Permission ที่มีประโยชน์กับ Admin และ Developer แต่ไม่ควรให้ Staff ที่ไม่มีหน้าที่ใช้

㉝ players.spectate คืออะไร

players.spectate

ใช้ Spectate Player

เหมาะอย่างมากสำหรับ Moderator ที่ต้องตรวจ

  • Report

  • Rule Breaking

  • Bug

  • พฤติกรรมผิดปกติ

จึงเป็น Permission ที่สามารถให้ทีมดูแลผู้เล่นได้โดยไม่ต้องให้สิทธิ์ Server Control

㉞ players.teleport คืออะไร

players.teleport

ใช้ Teleport ตัวเองหรือ Player

เช่น

  • Go To Player

  • Bring Player

  • Teleport Waypoint

  • Teleport Coordinates

  • Teleport Back

เหมาะกับ Admin ที่ต้องตอบ Report ภายในเกม

㉟ players.troll คืออะไร

players.troll

อนุญาตใช้ Troll Menu ตามที่ txAdmin รองรับ

สำหรับ Production RP Server ไม่จำเป็นต้องให้ Permission นี้กับ Staff ทั่วไป

ควรพิจารณาว่ามีประโยชน์จริงกับนโยบาย Server หรือไม่

㊱ players.remove_ids คืออะไร

Permission ปัจจุบันมี

players.remove_ids

สำหรับ Remove IDs/HWIDs ของ Player ออกจาก Database ของ txAdmin ตามระบบที่รองรับ

ถือเป็น Permission ที่ละเอียดอ่อน

ไม่ควรให้ Moderator ทั่วไป

㊲ วิธีตั้งสิทธิ์ Moderator

ตัวอย่างชุด Permission แบบเริ่มต้นสำหรับ Moderator อาจเป็น

menu.viewids
players.direct_message
players.warn
players.kick
players.spectate

อาจเพิ่ม

players.freeze

ถ้าหน้าที่ต้องใช้

นี่เป็น ตัวอย่างการออกแบบสิทธิ์ ไม่ใช่ Role บังคับของ txAdmin

㊳ วิธีตั้งสิทธิ์ Senior Moderator

สามารถเพิ่มจาก Moderator เช่น

menu.viewids
players.direct_message
players.warn
players.kick
players.ban
players.freeze
players.spectate
players.teleport

ทำให้จัดการเหตุการณ์ Player ได้เกือบครบ

แต่ยังไม่จำเป็นต้องเข้าถึง Console หรือ Server Configuration

㊴ วิธีตั้งสิทธิ์ Developer

ตัวอย่าง Developer

console.view
console.write
commands.resources
server.cfg.editor
server.log.view
txadmin.log.view
menu.vehicle
players.teleport
players.playermode

ถ้าต้อง Restart Server จริงจึงเพิ่ม

control.server

อย่าให้ manage.admins เพียงเพราะเป็น Developer หากหน้าที่ไม่ได้เกี่ยวกับ Staff Management

㊵ วิธีตั้งสิทธิ์ Server Manager

ผู้จัดการ Server อาจต้องใช้

settings.view
announcement
console.view
server.log.view
players.whitelist
players.warn
players.kick
players.ban
players.spectate
players.teleport

แล้วเพิ่มสิทธิ์ Technical ตามหน้าที่จริง

โครงสร้าง Permission ที่ดีควรอิงงาน ไม่ใช่ชื่อ Rank เพียงอย่างเดียว

㊶ Owner ควรใช้ all_permissions หรือเลือกทีละสิทธิ์

สำหรับ Owner หลักสามารถใช้

all_permissions

ได้

แต่ Account Root ควรมีจำนวนน้อยที่สุด

ตัวอย่าง

Owner 1
Owner 2

อาจมี Root

ขณะที่ Staff อื่นใช้ Permission เฉพาะ

㊷ หลัก Least Privilege คืออะไร

คือการให้ผู้ใช้

สิทธิ์เท่าที่จำเป็นต่อการทำงาน และไม่มากกว่านั้น

ตัวอย่าง Moderator ต้อง Kick Player

ให้

players.kick

ไม่จำเป็นต้องให้

all_permissions

วิธีนี้ช่วยลดทั้ง Human Error และผลกระทบหาก Account ถูกบุคคลอื่นเข้าถึง

㊸ Admin เปิด /tx ไม่ได้หลังเพิ่ม Permission

ตรวจว่า Admin Account มี Identifier ที่ตรงกับ Player หรือไม่

txAdmin ระบุว่าผู้ที่จะเปิด In-game Menu ต้องมี txAdmin Account และมี Cfx.re หรือ Discord Identifier ผูกอยู่

หากเพิ่งแก้ Admin Account สามารถลอง

/txAdmin-reauth

เพื่อให้ระบบ Authentication ใหม่

㊹ Admin เปิด Menu ได้แต่ปุ่มบางตัวหาย

นี่มักเป็นพฤติกรรมปกติของ Permission System

เช่นไม่มี

players.ban

ก็ไม่ควรสามารถ Ban ได้

ไม่มี

menu.vehicle

ก็ไม่ควรใช้ Vehicle Tools

ไม่ต้อง Reinstall txAdmin

㊺ เปลี่ยน Permission แล้วต้อง Restart Server ไหม

การแก้รายการ Admin/Permission ผ่านระบบ txAdmin สามารถทำให้ Online Admin ถูกบังคับ Reauthenticate เมื่อรายการ Admin ถูกอัปเดตตามการทำงานปัจจุบันของ txAdmin

หาก In-game Menu ยังแสดงสิทธิ์เดิม ให้ลอง Reauthenticate หรือ Reconnect ก่อน

ไม่ควร Restart Production Server เป็นตัวเลือกแรกเพียงเพราะ Permission เพิ่งถูกแก้

㊻ ควรใช้ Account ร่วมกันหรือไม่

ไม่ควร

ตัวอย่างที่ไม่เหมาะคือ

Username: admin
Password: ใช้ร่วมกัน 10 คน

เพราะจะไม่รู้ว่าใครทำ Action ใด

txAdmin มี Action Logging ดังนั้นควรใช้

admin_somchai
admin_dev01
admin_mod02

แยกกันตามบุคคล

㊼ Staff ออกจากทีมต้องทำอะไร

เมื่อ Staff พ้นหน้าที่ควร

Remove Admin Account
หรือ
Remove Permissions

ทันทีตามนโยบาย Server

อย่าเพียงเปลี่ยน Discord Role แล้วสมมุติว่า txAdmin Permission ถูกลบโดยอัตโนมัติทุก Environment

ควรตรวจใน Admin Manager ด้วย

㊽ Checklist ตั้งสิทธิ์ Admin ให้ปลอดภัย

ใช้ Checklist นี้ก่อนเปิดสิทธิ์ให้ Staff

สร้าง Account แยกแต่ละคน
Identifier ถูกต้อง
กำหนดหน้าที่ก่อนกำหนด Permission
Moderator ไม่มี Console Write ถ้าไม่จำเป็น
จำกัด control.server
จำกัด server.cfg.editor
จำกัด manage.admins
Root มีเฉพาะ Owner
Ban ให้เฉพาะ Staff ที่เหมาะสม
ตรวจ Permission หลัง Save
ทดสอบ /tx
ตรวจ Action Logs
ลบ Account เมื่อ Staff ออกจากทีม
Backup txData

การวางสิทธิ์ตั้งแต่แรกง่ายกว่าการแก้หลังเกิดความเสียหาย

㊾ ตัวอย่างโครงสร้าง Permission สำหรับ Server จริง

แนวทางหนึ่งสามารถแบ่งได้แบบนี้

Moderator
- View IDs
- DM
- Warn
- Kick
- Spectate

Senior Moderator
- ทุกอย่างของ Moderator
- Ban
- Freeze
- Teleport

Developer
- Console View/Write
- Resources
- CFG Editor
- Logs
- Vehicle Tools
- Teleport
- NoClip

Server Manager
- Announcement
- Logs
- Player Management
- Settings View
- Whitelist

Owner
- all_permissions

นี่เป็นเพียง Template สำหรับเริ่มต้น

Server ควรปรับตามหน้าที่และกฎภายในของตัวเอง

㊿ สรุปวิธีตั้งสิทธิ์ Admin ใน txAdmin

การตั้ง Permission ที่ดีไม่ใช่การเลือกทุกช่องให้ Staff ทุกคน แต่คือการกำหนดว่าแต่ละตำแหน่งต้องใช้ Action ใดจริง

Permission สำคัญที่ควรรู้ ได้แก่

all_permissions
manage.admins
settings.view
settings.write
console.view
console.write
control.server
announcement
commands.resources
server.cfg.editor
txadmin.log.view
server.log.view
menu.vehicle
menu.clear_area
menu.viewids
players.direct_message
players.whitelist
players.warn
players.kick
players.ban
players.freeze
players.heal
players.playermode
players.spectate
players.teleport
players.troll
players.remove_ids

สำหรับทีม Admin ทั่วไป ควรเริ่มจาก Permission น้อยก่อน แล้วเพิ่มเมื่องานจำเป็น

แนวคิดที่ comsiam แนะนำคือ

Moderator
→ Player Management

Developer
→ Console + Resources + Config

Server Manager
→ Logs + Management

Owner
→ Root

โดยเฉพาะ Permission อย่าง

all_permissions
manage.admins
console.write
control.server
server.cfg.editor

ควรถูกจำกัดอย่างจริงจัง เพราะสามารถเปลี่ยน Configuration หรือกระทบผู้เล่นทั้ง Server ได้

อีกหลักสำคัญคือสร้าง Admin Account แยกให้แต่ละคน เพื่อให้ Permission และ Action Logs ระบุได้ว่าใครทำอะไร ไม่ควรแชร์ Owner Account ร่วมกันทั้งทีม

เมื่อใช้หลัก Least Privilege, ตรวจ Identifier ให้ถูกต้อง และถอนสิทธิ์ทันทีเมื่อ Staff ออกจากทีม ผู้ดูแล FiveM Server ของ comsiam จะสามารถใช้ txAdmin ได้อย่างเป็นระบบ ปลอดภัย และลดความเสียหายจากทั้งการกดผิดและการให้สิทธิ์เกินความจำเป็น

Comments

Popular posts from this blog

FiveM ยังน่าเล่นไหม? Enhanced เปลี่ยน FiveM แค่ไหน

FiveM คืออะไร เล่นอย่างไร สำหรับมือใหม่ เริ่มต้นตั้งแต่ศูนย์

วิธีตั้ง Admin Permission ด้วย add_ace และ add_principal FiveM แบบละเอียด