วันนี้ได้อ่านบทความเรื่อง Frankenstein APIs Explained! – API Cyber Security Series
แต่ได้ฟังชื่อก็แปลกดี ไม่เคยได้ยินเลย
ดังนั้นจึงลองอ่านและสรุปไว้นิดหน่อย
ว่าคืออะไร มีรูปแบบอย่างไร ?

จากบทความได้แบ่งหมวดหมู่ของ API เป็น 7 หมวดคือ

  • Public API
  • Internal API
  • Partner API
  • Composite API
  • Shadow API
  • Zombie API
  • Frankenstein API

มาดู Frankenstein API ว่าคืออะไร เป็นอย่างไร

เริ่มด้วยคำถาม
ถ้าเราต้องการ API เพื่อทำงานหรือใช้งานบางสิ่งบางอย่าง
แต่ระบบงานของเราไม่มี API เหล่านั้นเตรียมไว้ให้
เราจะทำอย่างไร ?

หนึ่งวิธีการคือ ทำระบบหรือ API ครอบอีระบบ API เดิมอีกชั้น
หรืออาจจะทำการดึงข้อมูลบางอย่างมาใช้งานในระบบใหม่
เหมือนเป็นระบบที่สร้างขึ้นมาเพื่อตอบสนองการใช้งาน
แน่นอนว่า ระบบเดิมไม่ได้เกี่ยวข้องหรือไม่รู้เรื่องอะไรด้วยเลย
ส่วนคนใช้งานก็มาใช้ผ่านระบบใหม่ที่สร้าง

ผลที่อาจจะเกิดขึ้นมาคือ
เรื่องของ function การทำงานอาจจะทำได้ตามที่ต้องการ
แต่อาจจะขาดเรื่องของการจัดการ security
รวมทั้งอาจจะก่อให้เกิดผลกระบทบต่อ API เดิมที่มาครอบอีกด้วย
แต่ไม่ได้บอกว่าไม่ดี แต่เพียงต้องระวังเท่านั้นเอง
เช่นการ bypass การตรวจสอบ Token ต่าง ๆ ทิ้งไป
จาก Client -> API เปลี่ยนเป็น Client -> API ใหม่ -> API เก่า

อีกอย่างเป็นการทำงานแบบต่างคนต่างทำงาน
อาจจะส่งผลหรือมีปัญหาเมื่อ เกิดการเปลี่ยนแปลงจากระบบเก่า
ทำให้ระบบใหม่เกิดปัญหาก็เป็นได้
รวมทั้งชี้ให้เก็นถึงปัญหาของการทำงานภายในบริษัทหรือไม่ !!

หรือเป็นการเพิ่มภาระงานให้ API เก่าเพิ่มด้วยหรือไม่ ?

คำถามคือ ในระบบงานของเรามี Frankenstein API บ้างไหมนะ ?

Tags: