นโยบายคืออะไร

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

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

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

ดูวิดีโอนี้เพื่อรับคำแนะนำเกี่ยวกับไฟล์แนบและการบังคับใช้นโยบาย

ประเภทนโยบาย

ในทางเทคนิค นโยบายคือไฟล์การกำหนดค่าในรูปแบบ XML โครงสร้างของนโยบายแต่ละประเภท (เช่น องค์ประกอบการกําหนดค่าที่จําเป็นและไม่จําเป็น) กำหนดโดยสคีมา XML หากคุณเชี่ยวชาญเรื่องเครื่องมือ XML คุณควรทำความคุ้นเคยกับสคีมานโยบายในตัวอย่างแพลตฟอร์ม API ใน GitHub

ประเภทนโยบาย Edge จะแบ่งออกเป็นหมวดหมู่ฟังก์ชันการทำงานต่อไปนี้

การจัดการปริมาณการเข้ารวบรวมข้อมูล

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

ความปลอดภัย

นโยบายในหมวดหมู่ความปลอดภัยรองรับการตรวจสอบสิทธิ์ การให้สิทธิ์ รวมถึง การรักษาความปลอดภัยตามเนื้อหา

สื่อกลาง

นโยบายในหมวดหมู่สื่อกลางช่วยให้คุณจัดการกับข้อความได้อย่างแข็งขันขณะส่ง ผ่านพร็อกซี API ซึ่งจะช่วยให้คุณเปลี่ยนรูปแบบข้อความจาก XML เป็น JSON (และ กลับกัน) หรือเปลี่ยนรูปแบบ XML หนึ่งเป็นรูปแบบ XML อื่น และยังช่วยให้คุณสามารถ แยกวิเคราะห์ข้อความ เพื่อสร้างข้อความใหม่และเปลี่ยนค่าของข้อความขาออก บริการไกล่เกลี่ย นโยบายยังมีการโต้ตอบกับบริการพื้นฐานที่บริการ API เปิดเผย ทำให้คุณเรียกข้อมูล เกี่ยวกับแอป นักพัฒนาซอฟต์แวร์ โทเค็นความปลอดภัย และผลิตภัณฑ์ API ระหว่างรันไทม์

ส่วนขยาย

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

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

การปรับใช้การเปลี่ยนแปลงนโยบาย

คุณต้องทำให้การแก้ไขพร็อกซี API ใช้งานได้กับสภาพแวดล้อมเพื่อให้การเปลี่ยนแปลงนโยบายมีผล หลังจากแนบนโยบายหรือทําการเปลี่ยนแปลงนโยบายที่มีอยู่แล้ว ให้ใช้ UI การจัดการหรือ API การจัดการเพื่อทําให้การเปลี่ยนแปลงมีผล

การยืนยันการบังคับใช้นโยบาย

ในการตรวจสอบว่ามีการบังคับใช้นโยบายอย่างถูกต้อง ไคลเอ็นต์ HTTP จะต้องเรียกใช้ API ถึง ยืนยันการกำหนดค่าโควต้านี้ ส่งคำขอหลายรายการไปยัง API เกินขีดจำกัดโควต้า ที่คุณตั้งไว้ในนโยบายโควต้า (เส้นทาง URI ที่กําหนดค่าเป็นการตั้งค่าเส้นทางฐานใน ProxyEndpoint ในคําขอด้านล่างคือ /weather)

http://{org_name}-test.apigee.net/weather/forecastrss?w=12797282

หลังจากส่งคําขอมากกว่า 1 รายการภายใน 1 นาที คุณควรพบข้อผิดพลาดต่อไปนี้ ข้อความ:

{  
   "fault":{  
      "faultstring":"policies.ratelimit.QuotaViolation",
      "detail":{  
         "errorcode":"policies.ratelimit.QuotaViolation"
      }
   }
}

ซึ่งเป็นการระบุว่าบริการ API กำลังบังคับใช้นโยบายโควต้า

การจัดการข้อผิดพลาดตามนโยบาย

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

ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการข้อผิดพลาดได้ที่หัวข้อการจัดการข้อผิดพลาด

แนวทางปฏิบัติแนะนำ: ชุดนโยบายทั่วไป

พร็อกซี API มักจะบังคับใช้นโยบายต่อไปนี้เพื่อให้เป็นไปตามข้อกำหนดการจัดการขั้นพื้นฐาน

คีย์ API พื้นฐาน การตรวจสอบความถูกต้อง

ขั้นตอนการขอ ProxyEndpoint:
  1. SpikeArrest
  2. XMLThreatProtection หรือ JSONThreatProtection
  3. การตรวจสอบคีย์ API
  4. โควต้า
  5. ResponseCache
ขั้นตอนการตอบกลับของ ProxyEndpoint:
  1. ResponseCache

การเปลี่ยนรูปแบบพื้นฐาน: JSON เป็น XML

ขั้นตอนการส่งคำขอ:
  1. SpikeArrest
  2. JSONThreatProtection
  3. การตรวจสอบคีย์ API
  4. โควต้า
  5. JSONToXML
ขั้นตอนการตอบกลับ:
  1. XMLToJSON
  2. ResponseCache