צירוף והגדרה של מדיניות בקובצי XML

הדף הזה רלוונטי ל-Apigee ול-Apigee Hybrid.

לעיון במסמכי התיעוד של Apigee Edge

אתם יכולים ליצור ולערוך מדיניות באופן מקומי, באמצעות עורך טקסט או IDE שאתם אוהבים או באמצעות עורך שמודע ל-XML. בנושא הזה נעשה שימוש בסוג המדיניות Quota (מכסת שימוש) כדוגמה לאופן שבו יוצרים, מגדירים, מצרפים, פורסים ובודקים מדיניות.

רוב שרתי ה-proxy של API אוכפים מכסה. המיכסות מאפשרות לשלוט בתדירות שבה אפליקציית לקוח יכולה להפעיל API במרווח זמן נתון. בדוגמה שלמטה, מדיניות המכסה מוגדרת להגבלת האפליקציות לבקשה אחת בדקה. (יכול להיות שזה לא ריאליסטי, אבל זו דרך פשוטה לראות את ההשפעות של מדיניות).

בהגדרת proxy ל-API, קובצי המדיניות מאוחסנים כקובצי XML בספרייה /apiproxy/policies.

לדוגמה, אפשר ליצור מדיניות מסוג מכסה בשם Quota Policy כקובץ בשם QuotaPolicy.xml עם התוכן הבא:

<Quota enabled="true" continueOnError="false" name="QuotaPolicy">
    <Allow count="1"/>
    <Interval>1</Interval>
    <TimeUnit>minute</TimeUnit>
</Quota>

אפשר ליצור קובץ טקסט באופן ידני, או ליצור את המדיניות מסכמת XML. לכל המדיניות יש הגדרות ספציפיות לסוג המדיניות, והגדרות כלליות שמשותפות לכל המדיניות.

כשמצרפים מדיניות בממשק הניהול, כלי ה-proxy ל-API Builder יוצר את מופע המדיניות מסכמת ה-XML של סוג המדיניות שבחרתם. לכן, יכול להיות שתראו רכיבים בהגדרת המדיניות שלא תמיד נכללים במסמכים, לשם הבהרה.

כל כללי המדיניות מגדירים את המאפיינים הבאים:

  • enabled: מציין אם המדיניות מופעלת או מושבתת. אפשר להפעיל או להשבית מדיניות בזמן הריצה על ידי שינוי ההגדרה הזו. מדיניות שבה הערך של enabled מוגדר כ-false לא נאכפת.
  • continueOnError: מגדיר אם הצינור צריך להמשיך לעבד את ההודעה אם המדיניות נכשלת. כשמחילים מדיניות מכסה, שגיאות כנראה מצביעות על חריגה מהמכסה, ולכן צריך להגדיר את המאפיין הזה כ-False.
  • name: השם שנותנים למדיניות הזו. השם הזה ייחודי למופע המדיניות הזה, והוא משמש לצירוף המדיניות לזרימה כשלב עיבוד.

בדוגמה שלמעלה, הרכיבים Allow, Interval ו-TimeUnit ספציפיים למדיניות בנושא מכסות. האלמנטים האלה מספקים הגדרות ששירותי API אוכפים בשם API. סוגי מדיניות אחרים מגדירים הגדרות משלהם, שאפשר לקרוא עליהן בהפניה למדיניות.