คีย์ API

คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่ เอกสารประกอบของ Apigee X
info

คีย์ API (หรือที่รู้จักกันใน Apigee Edge ว่า คีย์ผู้ใช้) คือค่าสตริงที่แอปไคลเอ็นต์ส่งผ่านไปยังพร็อกซี API คีย์นี้จะระบุแอปไคลเอ็นต์ที่ไม่ซ้ำกัน

การตรวจสอบคีย์ API เป็นรูปแบบการรักษาความปลอดภัยที่ง่ายที่สุดซึ่งอิงตามแอปที่คุณกำหนดค่าสำหรับ API ได้ แอปไคลเอ็นต์เพียงแค่แสดงคีย์ API พร้อมกับคำขอ จากนั้น Apigee Edge จะตรวจสอบว่าคีย์ API อยู่ในสถานะที่ได้รับอนุมัติสำหรับทรัพยากรที่ขอหรือไม่ ภายใน พร็อกซีจะใช้นโยบายเพื่อยืนยันความถูกต้องของคีย์ API

คุณจะต้องทำการตั้งค่าเล็กน้อยเพื่อให้การตรวจสอบคีย์ API เป็นไปอย่างง่ายดาย โดยคุณจะต้องทำดังนี้เพื่อรองรับคีย์ API

  • สร้างผลิตภัณฑ์ API ของ Apigee Edge ที่รวมพร็อกซี API ที่คุณต้องการ ปกป้องโดยใช้คีย์ API
  • สร้างแอปของนักพัฒนาแอป Apigee Edge ที่แสดงถึงนักพัฒนาแอปไคลเอ็นต์ ที่คุณจะตรวจสอบสิทธิ์

    เมื่อสร้างแอปของนักพัฒนาแอป คุณจะต้องระบุผลิตภัณฑ์ API ที่แอปของนักพัฒนาแอปจะเข้าถึงได้ และจะต้องระบุคีย์ API สำหรับผลิตภัณฑ์ API เหล่านั้น

  • เพิ่มนโยบาย ลงในพร็อกซี (พร็อกซีที่คุณรวมไว้ในผลิตภัณฑ์ API) เพื่อยืนยันว่าคีย์ API ขาเข้าถูกต้อง

บทแนะนำเรื่องการรักษาความปลอดภัย API โดย กำหนดให้ใช้คีย์ API เป็นวิธีที่รวดเร็วในการเรียนรู้วิธีควบคุมการเข้าถึงพร็อกซี API ด้วยคีย์ API

วิธีการทำงานของคีย์ API

ใน Apigee Edge ระบบจะเรียกคีย์ API ว่าคีย์ผู้ใช้ เมื่อคุณลงทะเบียนแอปของนักพัฒนาแอป Apigee Edge จะสร้างคีย์ผู้ใช้และข้อมูลลับ Apigee Edge จะจัดเก็บคีย์ผู้ใช้ไว้เพื่อใช้ตรวจสอบในอนาคต คีย์ผู้ใช้แต่ละคีย์จะไม่ซ้ำกันในองค์กร นักพัฒนาแอปจะฝังคีย์ผู้ใช้ ไว้ในแอปไคลเอ็นต์ โดยแอปไคลเอ็นต์ต้องแสดงคีย์ผู้ใช้สำหรับคำขอแต่ละรายการ บริการ API จะตรวจสอบคีย์ผู้ใช้ก่อนที่จะอนุญาตคำขอของแอป

ขั้นตอนระดับสูง

ขั้นตอนต่อไปนี้อธิบายวิธีที่ Apigee Edge ใช้คีย์ API ขั้นตอนเหล่านี้รวมถึงการ รักษาความปลอดภัย OAuth ที่อาจมีอยู่ด้วย เนื่องจากมักใช้ร่วมกับคีย์ API

  1. สร้างผลิตภัณฑ์ API ที่มีพร็อกซี API ที่ควรได้รับการปกป้อง ด้วยคีย์ API
  2. คุณลงทะเบียนแอปของนักพัฒนาแอป ในองค์กร เมื่อคุณลงทะเบียน Apigee Edge จะสร้างคีย์ผู้ใช้และข้อมูลลับของผู้ใช้
  3. เชื่อมโยงแอปของนักพัฒนาแอปกับผลิตภัณฑ์ API อย่างน้อย 1 รายการ ผลิตภัณฑ์ API จะเชื่อมโยงเส้นทางทรัพยากรและพร็อกซี API กับการอนุมัติคีย์
  4. เมื่อรันไทม์ เมื่อแอปไคลเอ็นต์ส่งคำขอไปยัง API ของคุณ แอปไคลเอ็นต์จะส่ง คีย์ผู้ใช้เมื่อส่งคำขอ ในทางปฏิบัติ คีย์ผู้ใช้อาจ ส่งผ่านอย่างชัดเจนหรืออาจอ้างอิงโดยนัยผ่านโทเค็น OAuth ก็ได้:
    • เมื่อ API ใช้การตรวจสอบคีย์ API เช่น โดยการใช้นโยบาย VerifyAPIKey -- แอปไคลเอ็นต์ต้องส่งคีย์ผู้ใช้อย่างชัดเจน
    • เมื่อ API ใช้การตรวจสอบโทเค็น OAuth เช่น โดยการใช้นโยบาย OAuthV2 -- แอปไคลเอ็นต์ต้องส่งโทเค็นที่ ได้มาจาก คีย์ผู้ใช้
  5. พร็อกซี API จะตรวจสอบข้อมูลเข้าสู่ระบบของคำขอ ผ่าน นโยบาย VerifyAPIKey หรือนโยบาย OAuthV2 ที่มีการดำเนินการ VerifyAccessToken หากคุณไม่รวมนโยบายการบังคับใช้ข้อมูลเข้าสู่ระบบไว้ในพร็อกซี API ผู้เรียกทุกคนจะเรียกใช้ API ของคุณได้สำเร็จ ดูข้อมูลเพิ่มเติมได้ที่นโยบาย Verify API Key

การตรวจสอบข้อมูลเข้าสู่ระบบของคำขอ

ภาพรวม โปรดดูรายละเอียดและตัวอย่างโค้ดที่หัวข้อการตั้งค่าการตรวจสอบคีย์ APIสำหรับ

  1. หากคุณใช้การตรวจสอบโทเค็น OAuth \-- คุณได้ใช้นโยบาย OAuth เพื่อตรวจสอบ และแอปไคลเอ็นต์ได้ส่งโทเค็น OAuth แล้ว:
    • Apigee Edge จะตรวจสอบว่าโทเค็นไม่หมดอายุ จากนั้นค้นหาคีย์ผู้ใช้ ที่ใช้สร้างโทเค็น
  2. หากคุณใช้คีย์ API \-- คุณได้ใช้นโยบาย VerifyAPIKey และแอปไคลเอ็นต์ ได้ส่งคีย์ผู้ใช้แล้ว:
    1. Apigee Edge จะตรวจสอบรายการผลิตภัณฑ์ API ที่เชื่อมโยงกับคีย์ผู้ใช้
    2. Edge จะตรวจสอบผลิตภัณฑ์ API แต่ละรายการเพื่อดูว่าพร็อกซี API ปัจจุบันรวมอยู่ในผลิตภัณฑ์ API หรือไม่ และเส้นทางทรัพยากรปัจจุบัน (เส้นทาง URL) เปิดใช้งานอยู่ในผลิตภัณฑ์ API หรือไม่
    3. นอกจากนี้ Edge ยังตรวจสอบว่าคีย์ผู้ใช้ไม่หมดอายุหรือถูกเพิกถอน ตรวจสอบว่าแอป ไม่ถูกเพิกถอน และตรวจสอบว่านักพัฒนาแอปไม่ได้อยู่ในสถานะไม่ใช้งาน
    4. หากเงื่อนไขทั้งหมดเป็นจริง \-- โทเค็นไม่หมดอายุ (หากมี) คีย์ผู้ใช้ถูกต้องและได้รับอนุมัติ แอปได้รับอนุมัติ นักพัฒนาแอปใช้งานได้ พร็อกซีพร้อมใช้งานในผลิตภัณฑ์ และทรัพยากรพร้อมใช้งานในผลิตภัณฑ์ \-- การตรวจสอบข้อมูลเข้าสู่ระบบจะสำเร็จ