Token คือสิทธิ์เรียก API ในนาม Channel ต้องปฏิบัติต่อมันเหมือนรหัสผ่านระบบ ไม่ใช่ข้อความตั้งค่าทั่วไป
ภัยที่เกิดขึ้นเมื่อ Token รั่ว
ผู้ที่ได้ Token อาจเรียก endpoint ตามสิทธิ์ของ Channel เช่น อ่านรายการ Rich Menu สร้างหรือตั้งค่าเมนู และใช้ API อื่นที่ Token เข้าถึงได้ ความเสียหายขึ้นกับประเภท Token และสิทธิ์ที่เปิดอยู่
หาก Token เคยอยู่ในแชต, commit, screenshot, log หรือเครื่องมือวิเคราะห์ ให้ถือว่ารั่วและหมุนหรือเพิกถอนทันที การลบข้อความหรือ commit ภายหลังไม่ทำให้ Token เดิมปลอดภัย
สถาปัตยกรรมที่ควรใช้
Rich Menu Studio ใช้ Token ที่กรอกเพื่อส่งคำขอผ่าน proxy และไม่ควรเก็บลง localStorage การปิดหน้าเว็บควรจบอายุการใช้งานของค่าในหน้าจอ แต่คุณยังต้องหมุน Token หากเคยแชร์ภายนอกระบบ
- รับ Token ผ่านช่องทาง HTTPS เท่านั้น
- ส่งคำขอ LINE จาก server-side proxy ไม่เรียกตรงจาก frontend
- ไม่บันทึก Token ในฐานข้อมูลหรือ browser storage ถ้าไม่จำเป็น
- ทำ redaction ใน error และ access logs
- จำกัดขนาด request, rate limit และ timeout
- อย่าส่ง Token ไป Analytics, Sentry breadcrumb หรือ replay
เลือกชนิด Token และวงจรชีวิต
เลือก Token อายุสั้นหรือ stateless เมื่อ workflow รองรับ และออก Token ด้วยกระบวนการฝั่ง server สำหรับระบบถาวร ใช้ secret manager ของแพลตฟอร์มแทนไฟล์ .env ที่ส่งต่อกัน
กำหนดเจ้าของ, วันที่ออก, วันหมุน, Channel และวัตถุประสงค์ของ credential แต่ไม่บันทึกค่าจริงใน inventory เมื่อพนักงานหรือ vendor ออกจากงานให้เพิกถอนสิทธิ์และหมุน Token ที่เกี่ยวข้อง
Incident checklist เมื่อ Token หลุด
การตอบสนองที่เร็วสำคัญกว่าการพิสูจน์ก่อนว่ามีคนใช้ Token หรือไม่ เพราะการหมุน credential มีต้นทุนต่ำกว่าการกู้คืน Channel ที่ถูกเปลี่ยนแปลง
- เพิกถอนหรือออก Token ใหม่ทันที
- ตรวจ Git history, logs, chat และ CI artifacts ว่ารั่วที่ใดบ้าง
- ค้นหาคำขอ API ผิดปกติในช่วงเวลาที่เกี่ยวข้อง
- เปลี่ยน Secret ใน Vercel/ระบบรันงานและ Redeploy
- บันทึกเหตุการณ์และเพิ่มการป้องกันซ้ำ
- อย่านำ Token เก่ากลับมาใช้แม้คิดว่าไม่มีใครเห็น
เอกสารอ้างอิง
ตรวจสอบข้อกำหนดล่าสุดจากเอกสารทางการก่อนใช้งานกับระบบสำคัญ
พร้อมนำไปทำบน Canvas แล้วหรือยัง?
วางพื้นที่ปุ่มแบบลาก ย้าย ย่อ–ขยาย แล้วตรวจ JSON ก่อนเผยแพร่
เปิด Studio →