Frankenstein API คืออะไร

วันนี้ได้อ่านบทความเรื่อง 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 บ้างไหมนะ ?

0
183