เล่าเรื่อง Azure API Management EP 1

KwangTung Taesuji
4 min readJul 15, 2021

--

Azure API Management เป็นผลิตภัณฑ์ดี ๆ จาก Azure ที่จะช่วยเราจัดการเส้นทางการเข้าถึง ช่วยในการจัดการเรื่องนโยบายความปลอดภัยและความเป็นส่วนตัว มองภาพรวมเป็น Api Gateway เพื่อเข้าถึงการทำงานของ Backend Service ที่เราพัฒนาจาก code เชื่อมต่อกับ Database

Backend Service คุ้น ๆ กันไหมครับ? ก็คือ endpoint API อาจจะอยู่ในรูปแบบ azure function app หรือเป็น internal api ที่เราติดตั้งบน server ไว้แล้ว ถ้าจะให้เรียกกันง่าย ๆ ก็ คือ สิ่งที่อยู่ใน Swagger นั่นเอง

ตัว swagger เป็น API Documentation ที่เหมาะสำหรับนักพัฒนา หรือ Internal User มากกว่า ซึ่งตัว swagger เองไม่สามารถทำเรื่อง Reliable, Secure และ Scalable ได้ดีนัก การที่จะให้ user ระดับ organization, company หรือ external individual user เข้าถึง API นั้นจะต้องมีการจัดการสิทธิ์ ให้เหมาะสม ทำให้ Azure API Management เป็นอีกตัวนึงที่ตอบโจทย์การจัดการด้าน API ได้ดีเยี่ยม

สามารถเข้าไปอ่าน concepts ได้ที่ link ด้านล่างได้เลย

หรือจะลองทำตามคลิป vdo นี้ก็ได้

สำหรับบทความนี้จะมีหัวข้อหลัก ๆ คือ

  1. วิธีการสร้าง Azure API Management และเชื่อมต่อ Backend Service
  2. วิธีการกำหนดนโยบายการใช้งาน
  3. วิธีการสร้าง Portal Developer
  4. วิธีการสร้างกำหนด Subscription และการทดสอบ API ผ่าน Portal Developer
  5. วิธีการทดสอบ API ผ่าน Postman

พร้อมแล้วก็เริ่มลุย Azure API Management ได้เลย

1.วิธีการสร้าง Azure API Management และเชื่อมต่อ Backend Service

1.1 ไปที่ azure portal > https://portal.azure.com จากนั้น search คำว่า API Management หรือมองหา Icon ของ API Management

1.2 กดปุ่มสร้าง API Managment ได้เลย ระบุ subscription, resourcegroup รวมถึง organization name และ administrator email ให้ถูกต้อง จากนั้นเลือก price tier ที่เหมาะสม

Price Tier สำหรับ Developer ก็พอจับต้องได้อยู่

https://azure.microsoft.com/en-us/pricing/details/api-management/

1.3 เข้าไปใน เมนู APIs และสร้าง Blank API หรือจะกด Add API เพื่อสร้างกลุ่ม API ที่เราต้องการ

1.4 สร้าง APIs ขึ้นมาโดยระบุชื่อ APIs, URL Schema, Products ในตอนนี้จะมีให้เลือกเป็น Starter หรือ Unlimited และใส่ web service URL ตามตัวอย่าง ดังนี้

Endpoint ตัวอย่าง: https://conferenceapi.azurewebsites.net/

ถ้าต้องการทำ version ของ API ให้กด check ที่ Version ของ API และกำหนด path ให้เรียบร้อย

ก็จะได้ Reversion และ All Operation สำหรับการสร้าง Method Api

1.5 ลองสร้าง Method Get: Sessions

1.6 ทดสอบ Method Get: Sessions > เข้าไปที่ เมนู Test และเรื่อง Product: Starter จากนั้นกดปุ่ม Send

ผลลัพธ์ที่ได้

1.7 หากต้องการจะเชื่อมต่อ Backend Service สามารถทำจากจุดนี้ได้เลยถ้ามี Endpoint หรือ Swagger โดยให้สร้าง APIs ในรูปแบบ OpenAPI และใส่ Endpoint ที่เรามีอยู่

หรือทำตาม Endpoint ตัวอย่างจาก Azure API Management ตาม url ด้านล่าง จากนั้นกดปุ่ม สร้าง ได้เลย

Endpoint ตัวอย่าง: https://conferenceapi.azurewebsites.net/?format=json

ผลลัพธ์ที่ได้ คือ จะเป็นรายการ method จาก APIs ที่เรามีอยู่

1.8 วิธีการทดสอบผ่าน POSTMAN ผ่าน Ocp-Apim-Subscription-Key แบบเบื้องต้น ให้ไปที่ Test Tab ของ APIs ตัวนั้น ๆ และมองหา Endpoint และ token key จากนั้น copy ทั้งสองไว้

เปิด program Postman และใช้ endpoint ทดสอบ (อย่าลืมระบุ Header: Ocp-Apim-Subscription-Key)

หากไม่ระบุ Header: Ocp-Apim-Subscription-Key จะเจอ error 401 ดังนี้

สรุป จากหัวข้อข้างบนเราสามารถทำการสร้าง Azure API Management และเชื่อมต่อ Backend Service ได้แล้ว รวมถึงการทดสอบดึงข้อมูลผ่าน API Gateway บน Postman ได้

ที่มา

--

--