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

คุณกำลังดูเอกสารประกอบของ 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 Services เปิดเผย ซึ่งช่วยให้คุณดึงข้อมูล เกี่ยวกับแอป นักพัฒนาแอป โทเค็นความปลอดภัย และผลิตภัณฑ์ API ได้ในขณะรันไทม์

ส่วนขยาย

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

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

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

การเปลี่ยนแปลงนโยบายจะมีผลก็ต่อเมื่อคุณติดตั้งใช้งานการแก้ไขพร็อกซี API ในสภาพแวดล้อม หลังจากแนบนโยบายหรือทำการเปลี่ยนแปลงนโยบายที่มีอยู่แล้ว ให้ใช้ UI การจัดการหรือ the Management 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 Services กำลังบังคับใช้นโยบายโควต้า

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

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

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

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

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

การตรวจสอบคีย์ API ขั้นพื้นฐาน

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

การแปลงพื้นฐาน: JSON เป็น XML

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