Elastix เก็บ User, Password, Group Permission ที่เราคอนฟิกหน้า User Management ไว้ในดาต้าเบส SQLite ครับ (ไม่ใช่ MySQL) ดาต้าเบสเก็บอยู่ในไฟล์ /var/www/db/acl.db
1. เช็คว่า user=admin มีค่า id_user เท่าไหร่
- โค้ด: เลือกทั้งหมด
/usr/bin/sqlite3 /var/www/db/acl.db "SELECT * from acl_user"
ผลลัพท์จะอยู่ในฟอร์แม็ตแบบนี้
id|name|description|md5_password|extension
เช่น
1|admin||3002911fe1675ef178df94016e248c4|
จะเห็นว่า user=admin มีค่า id=1 เราจะเอาค่านี้มาเป็น id_user ในเทเบิลต่อๆไป
2. เช็คว่า user=admin อยู่ใน group ไหน
ซึ่งดีฟอลท์ของ Elastix เขาทำไว้ 3 groups คือ 1=administartor, 2=Operador, 3=Extension ซึ่งต้องเป็น group administrator เท่านั้นถึงจะเห็นได้ทุกเมนู
- โค้ด: เลือกทั้งหมด
/usr/bin/sqlite3 /var/www/db/acl.db "SELECT * from acl_membership"
ผลลัพท์จะอยู่ในฟอร์แม็ตแบบนี้ id|id_user|id_group เช่น
1|1|1
2|2|2
ดูบรรทัดที่มี id_user=1 ครับ ซึ่งคือ admin จะเห็นว่ามีค่า id_group=1 ซึ่งคือ administrator อันนี้เป็นดีฟอลท์ ถ้าหากว่าค่า id_group ไม่ใช่ 1 ก็จะเห็นได้ไม่ครบทุกเมนู
3. เซ็ตค่า id_group ของเทเบิล acl_membership
ถ้าต้องการเซ็ตค่า id_group ของ admin กลับไปเป็น 1 ตามเดิม ให้รันคำสั่งนี้
- โค้ด: เลือกทั้งหมด
/usr/bin/sqlite3 /var/www/db/acl.db "UPDATE acl_membership SET id_group='1' WHERE id_user='1'"
ระวังเครื่องหมาย ' และ " ด้วยนะครับ
4. ลองเช็คดูอีกที
- โค้ด: เลือกทั้งหมด
/usr/bin/sqlite3 /var/www/db/acl.db "SELECT * from acl_membership"
2|2|2
3|1|1
จะเห็นว่าค่า id_group ของ id_user=1 เปลี่ยนไปเป็น 1 แล้ว
5. เข้าหน้าเว็บ Elastix
ล๊อกอินด้วย admin ก็จะเห็นครบทุกเมนูตามเดิม
บทความที่เกี่ยวข้อง
เทคนิคการรีเซ็ต admin password ของ Elastix