ข้ามไปยังเนื้อหา
Microsoft SQL MCP Server เพิ่ม On-Behalf-Of Auth — บันทึก audit ว่า 'ผู้ใช้คนไหน' สั่งงาน ไม่ใช่แค่ 'เอเจนต์ตัวไหน'
เครื่องมือนักพัฒนา

Microsoft SQL MCP Server เพิ่ม On-Behalf-Of Auth — บันทึก audit ว่า 'ผู้ใช้คนไหน' สั่งงาน ไม่ใช่แค่ 'เอเจนต์ตัวไหน'

อ่าน 5 นาที ที่มา: Azure SQL Dev Corner (Microsoft Developer Blog)

เมื่อองค์กรเริ่มปล่อยให้ AI agent เข้าถึงฐานข้อมูลจริง ผ่าน MCP คำถามที่ทีมความปลอดภัยถามทันทีคือ: “เวลาเกิดเรื่อง เราจะรู้ได้ยังไงว่าใครเป็นคนสั่ง?” เพราะโดยปกติ agent เชื่อมฐานข้อมูลด้วย service account หรือ managed identity ตัวเดียว — log ของฐานข้อมูลจึงเห็นแค่ “แอปนี้ทำ” ไม่เห็นว่าเป็น ผู้ใช้คนไหน ที่อยู่เบื้องหลังคำสั่งนั้น เป็นจุดบอดด้าน compliance ที่ทำให้หลายองค์กรไม่กล้าเปิดใช้ agent กับข้อมูลอ่อนไหว

โพสต์วันที่ 1 กรกฎาคม 2026 บน Azure SQL Dev Corner (เขียนโดย Jerry Nixon, Principal Program Manager) อธิบายทางแก้: SQL MCP Server รองรับ On-Behalf-Of (OBO) authentication แล้ว — ตัวตนของผู้ใช้จริงจะไหลผ่านทั้งสาย ตั้งแต่ agent → MCP server → ฐานข้อมูล ทำให้ Azure SQL บันทึกได้ว่าเป็นผู้ใช้ที่ล็อกอินคนไหนที่สั่งงาน ไม่ใช่แค่ service account หรือตัว agent

หัวใจคือ “agent ลงมือทำ แต่ SQL จำ context ของผู้ใช้ที่อนุญาต”

โพสต์แจกแจงว่ามีสามวิธี auth ที่ต่างกันชัดในแง่สิ่งที่ log จับได้:

  • Username/password (แบบเก่า) — log เห็นแค่ credential ของ service
  • Managed Identity — log เห็น “ตัวตนของแอป”
  • OBO / Microsoft Entra ID — log เห็น ตัวตนของผู้ใช้จริง ที่เป็นต้นเรื่อง

ประโยคที่สรุปแนวคิดได้ดีคือ “เอเจนต์เป็นคนลงมือทำ แต่ SQL บันทึก context ของผู้ใช้ที่อนุญาตให้ทำ” สำหรับระบบที่จัดการข้อมูลอ่อนไหว การรู้ว่า ใคร เป็นคนเริ่มคำสั่ง (ไม่ใช่แค่ ระบบไหน รัน) คือหัวใจของทั้ง compliance และการสอบสวนย้อนหลัง

รายละเอียดสำหรับนักพัฒนา

ฝั่ง implementation ใช้ Data API builder (DAB) 2.0 จัดการค่า OBO ผ่าน environment variable และ token ของ Entra ID จุดที่ควรรู้: เมื่อเปิด OBO ระบบจะ ปิด response caching อัตโนมัติ เพราะ token เป็นราย-ผู้ใช้ การแคชข้ามผู้ใช้จะทำให้ข้อมูลรั่วข้ามสิทธิ์ได้ — เป็นดีเทลด้านความปลอดภัยที่ถูกต้อง

นักพัฒนาตรวจสอบว่าตั้งค่าถูกได้ด้วย view ง่าย ๆ ชื่อ WhoAmI ที่คืนค่าว่า “ฐานข้อมูลมองว่าผู้เชื่อมต่อเป็นใคร” — ถ้าเห็นตัวตนผู้ใช้จริง ไม่ใช่ service account แปลว่า OBO ทำงานถูกทาง

มุมมอง AI Curator

นี่คือประเภทข่าวที่ “ไม่หวือหวาแต่สำคัญ” สำหรับคนที่จะเอา agent ขึ้น production จริง เทรนด์ปีนี้ชัดเจนว่า MCP กลายเป็นชั้นมาตรฐานให้ agent ต่อกับระบบภายใน แต่ ช่องว่างที่แท้จริงไม่ใช่ “ต่อได้ไหม” — มันต่อได้อยู่แล้ว — แต่คือ “ต่อแล้ว governance/audit ตามทันไหม” ฟีเจอร์ OBO ตอบโจทย์ตรงนั้นพอดี: มันเปลี่ยน agent จากกล่องดำที่ทำงานด้วยตัวตนเดียว ให้กลายเป็นตัวกลางที่ยัง ผูกทุกการกระทำกลับไปที่ผู้ใช้จริง ได้

สำหรับองค์กรไทย โดยเฉพาะสายที่อยู่ใต้กฎอย่าง PDPA, ธปท., ก.ล.ต. ประเด็น “ต้องรู้ว่าใครเข้าถึงข้อมูลอะไรเมื่อไร” ไม่ใช่ nice-to-have แต่เป็นข้อบังคับ การมี audit trail ที่ระบุตัวผู้ใช้จริงได้ คือเงื่อนไขจำเป็นก่อนที่ทีม compliance จะยอมให้ agent แตะฐานข้อมูล production ใครที่กำลังออกแบบสถาปัตยกรรม agent + ฐานข้อมูลอยู่ ควรตั้ง identity pass-through เป็นค่าเริ่มต้นตั้งแต่วันแรก ไม่ใช่ค่อยมาแปะทีหลัง เพราะการรื้อ auth model ของระบบที่รันไปแล้วเป็นงานที่เจ็บที่สุดงานหนึ่ง

ข้อสังเกตสุดท้าย: แม้ฟีเจอร์นี้ผูกกับ Azure SQL + Entra ID แต่ แนวคิด OBO เป็นสากล ทีมที่ใช้ Postgres/MySQL + IdP อื่นก็ควรถามคำถามเดียวกัน — “MCP server ของเราส่งตัวตนผู้ใช้ทะลุถึงชั้น data หรือหยุดแค่ service account?” คำตอบนั้นแหละที่กำหนดว่าคุณจะเอา agent ขึ้น production กับข้อมูลจริงได้หรือไม่

แหล่งข่าว

บทความนี้เรียบเรียงจากแหล่งข่าวต้นทาง — Azure SQL Dev Corner (Microsoft Developer Blog)

เนื้อหาบน blog นี้สร้างโดย AI โดยมีการกำกับบรรณาธิการจากมนุษย์

อ่านเพิ่มในหมวด เครื่องมือนักพัฒนา

Betelgeuse รัน Qwen3.8 Flash Next ขนาด 68GB บน RTX 3060 กับแรม 16GB ส่วน Basalt วัดให้เห็นว่าเอนจินที่เร่งด้วยแฟล็กลัดทำให้โมเดลลืมของ
เครื่องมือนักพัฒนา

Betelgeuse รัน Qwen3.8 Flash Next ขนาด 68GB บน RTX 3060 กับแรม 16GB ส่วน Basalt วัดให้เห็นว่าเอนจินที่เร่งด้วยแฟล็กลัดทำให้โมเดลลืมของ

Betelgeuse ฟอร์ก llama.cpp ที่เปิดเมื่อ 31 ต.ค. ดึง expert จาก NVMe เข้า VRAM ตามต้องการ อ้าง 22 tok/s แบบไม่ทิ้ง expert แต่ README เตือนเองว่ายังทดลองและตัวเลขมาจากคนละรอบ วันเดียวกันผู้พัฒนา Basalt เผยผลวัดว่าแฟล็กเร่งความเร็วทำคุณภาพ Q8 ตกไปใกล้ Q2

· อ่าน 5 นาที
กฎห้ามโคลนเกมของ Claude Code เริ่มกระทบงานจริง บริษัทรับทำเกมกระดานร้องงานลูกค้าหยุด แต่รายงานหลายชิ้นปนกับตัวกรองไซเบอร์คนละเรื่อง
เครื่องมือนักพัฒนา

กฎห้ามโคลนเกมของ Claude Code เริ่มกระทบงานจริง บริษัทรับทำเกมกระดานร้องงานลูกค้าหยุด แต่รายงานหลายชิ้นปนกับตัวกรองไซเบอร์คนละเรื่อง

ต่อจากที่เราพบกฎนี้ในไบนารี Claude Code ผู้ใช้เริ่มรายงานว่างานเชิงพาณิชย์ถูกปฏิเสธ และ Tom's Hardware กับ Mashable หยิบไปรายงาน แต่เมื่อไล่ issue ที่อ้างถึง พบว่าหลายรายการเกิดก่อนกฎจะมา จึงน่าจะเป็นตัวกรองด้านไซเบอร์ ส่วน Anthropic ยังไม่ชี้แจง

· อ่าน 4 นาที
Claude Code ส่ง transcript ของ background agent ให้โมเดลทุก ~30 วินาทีเพื่อเขียนสถานะ 3–5 คำ ผู้วัดรายงานกินราว 16% และยังปิดแบบทางการไม่ได้
เครื่องมือนักพัฒนา

Claude Code ส่ง transcript ของ background agent ให้โมเดลทุก ~30 วินาทีเพื่อเขียนสถานะ 3–5 คำ ผู้วัดรายงานกินราว 16% และยังปิดแบบทางการไม่ได้

รายงานอิสระพบว่าฟีเจอร์ agent_summary ของ Claude Code ส่ง transcript เต็มของ background agent ไปถามสถานะทุก ~30 วินาที คิดเป็น 16.4% ของค่าใช้จ่ายในระบบของผู้วัด Issue เปิดมาตั้งแต่ ส.ค. ยังไม่มีสวิตช์ปิดที่รองรับ เราตรวจพบโค้ดนี้ใน 2.1.314 และพบกฎใหม่เรื่องเกมที่ไม่อยู่ใน changelog

· อ่าน 4 นาที