การแนบและกำหนดค่านโยบายใน UI

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

การเพิ่มความสามารถตามนโยบายให้กับพร็อกซี API มี 2 ขั้นตอนดังนี้

  1. กำหนดค่าอินสแตนซ์ของประเภทนโยบาย
  2. แนบอินสแตนซ์นโยบายกับโฟลว์

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

ความสัมพันธ์ระหว่างนโยบายและขั้นตอน

นโยบายประเภทหนึ่งที่ใช้กันโดยทั่วไปคือ SpikeArrest SpikeArrest ป้องกันการเข้าชมข้อความที่เพิ่มขึ้นอย่างกะทันหันซึ่งอาจทำให้บริการแบ็กเอนด์ของคุณท่วมท้น

การแนบนโยบายกับขั้นตอน

วิธีแนบนโยบายกับโฟลว์

  1. เลือกพร็อกซี API และไปที่มุมมองพัฒนา
  2. ในเครื่องมือแก้ไขพร็อกซี API ให้เลือกโฟลว์ที่คุณต้องการแนบนโยบายในแผงการนำทาง
    ตัวอย่างเช่น มีการเลือกขั้นตอน PreFlow สำหรับปลายทางพร็อกซี API เริ่มต้นในรูปต่อไปนี้
    เลือกขั้นตอนที่คุณต้องการแนบนโยบาย
  3. ในมุมมองการออกแบบ ให้คลิก +ขั้นตอนที่เชื่อมโยงกับคำขอหรือขั้นตอนการตอบกลับเพื่อแนบนโยบาย ตัวอย่างเช่น
    คลิก +ขั้นตอน
    กล่องโต้ตอบ "เพิ่มขั้นตอน" จะเปิดขึ้นโดยแสดงรายการนโยบายที่จัดหมวดหมู่
    รายการนโยบายในหมวดหมู่
  4. เลื่อนและเลือกประเภทนโยบายที่ต้องการแนบกับขั้นตอนที่เลือก
  5. แก้ไขช่องต่อไปนี้
    • ชื่อที่แสดง: ชื่อที่แสดงที่ไม่ซ้ำกันสำหรับนโยบาย UI จะสร้างชื่อเริ่มต้น แต่เราขอแนะนำให้สร้างชื่อที่สื่อความหมายสำหรับนโยบาย วิธีนี้จะช่วยให้นักพัฒนาซอฟต์แวร์รายอื่นในองค์กรเข้าใจวัตถุประสงค์ของนโยบายได้อย่างง่ายดาย

    • ชื่อ: ชื่อที่ไม่ซ้ำกันสำหรับนโยบาย ชื่อนโยบายตรงกับชื่อที่แสดงโดยมีข้อยกเว้นต่อไปนี้

      • การเว้นวรรคจะถูกแทนที่ด้วยเครื่องหมายขีดกลาง

      • เครื่องหมายขีดคั่นต่อเนื่องกันจะถูกแทนที่ด้วยเครื่องหมายขีดเดียว

      • ระบบจะนำอักขระที่ไม่ใช่ตัวอักษรและตัวเลขคละกัน เช่น เครื่องหมายสี่เหลี่ยม เครื่องหมายเปอร์เซ็นต์ เครื่องหมายและ และอื่นๆ ออก ยกเว้นขีดกลาง ขีดล่าง และเว้นวรรค (ซึ่งจะถูกแทนที่ตามที่ระบุไว้ข้างต้น)

  6. คลิกเพิ่ม

    นโยบายนี้แนบไปกับขั้นตอนที่เลือก

หลังจากแนบนโยบายแล้ว คุณจะเห็นนโยบายสำหรับโฟลว์ในมุมมอง Designer ในตัวอย่างนี้คือ PreFlow ของปลายทางพร็อกซีเริ่มต้น และในรายการนโยบายในแผงการนำทาง มุมมองโค้ดที่แสดง XML สำหรับนโยบายที่แนบใหม่จะแสดงใต้มุมมอง Designer Edge จะสร้างอินสแตนซ์ของนโยบายที่มีชุดค่าเริ่มต้นที่สมเหตุสมผล

นโยบายใน PreFlow ในมุมมองนักออกแบบและโค้ด

การเพิ่มนโยบายโดยไม่แนบไปกับขั้นตอน

หากต้องการเพิ่มนโยบายโดยไม่แนบไปกับโฟลว์ ซึ่งเป็นประโยชน์สำหรับการจัดการข้อผิดพลาด ให้คลิก + ในแถบนโยบายในมุมมองตัวนำทาง เพื่อเปิดกล่องโต้ตอบเพิ่มนโยบาย และเพิ่มนโยบาย (ตามที่อธิบายไว้ในขั้นตอนที่ 4 ถึง 6 ในส่วนก่อนหน้า)

คลิก + เพื่อเพิ่มนโยบาย

นโยบายที่ไม่ได้แนบอยู่กับขั้นตอนใดๆ จะมีไอคอน "ปลดออกแล้ว" ในรายการนโยบาย ตามที่แสดงถัดจากนโยบายข้อความคีย์ API ที่แสดงในรูปก่อนหน้า

หลังจากสร้างนโยบายแล้ว คุณจะแนบไว้ในโฟลว์ได้โดยลากและวางนโยบายจากรายการนโยบายลงในโฟลว์ที่ต้องการในมุมมองนักออกแบบ

การปลดนโยบายออกจากขั้นตอน

หากต้องการปลดนโยบายออกจากโฟลว์ ให้เลือกโฟลว์ วางเมาส์เหนือไอคอนของนโยบายในมุมมองนักออกแบบของโฟลว์ คลิก X ในวงกลมที่ปรากฏในไอคอน

การลบอินสแตนซ์นโยบาย

หากต้องการลบอินสแตนซ์นโยบาย ให้วางเมาส์เหนือรายการนโยบายในมุมมอง Navigator คลิก X ในวงกลมที่ปรากฏทางด้านขวาของรายการ

การกำหนดค่านโยบายใน UI

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

ตัวอย่างเช่น
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<SpikeArrest async="false" continueOnError="false" enabled="true" name="spikearrest-1">
  <DisplayName>SpikeArrest-1</DisplayName>
  <FaultRules/>
  <Properties/>
  <Identifier ref="request.header.some-header-name"/>
  <MessageWeight ref="request.header.weight"/>
  <Rate>30ps</Rate>
</SpikeArrest>

คุณกำหนดค่านโยบายได้โดยแก้ไขการกำหนดค่า XML ของนโยบายโดยตรงในมุมมองโค้ด เช่น อัตราข้อความสูงสุดสำหรับนโยบาย Spike Arrest เริ่มต้นตั้งไว้ที่ 30 ข้อความต่อวินาที คุณเปลี่ยนอัตราสูงสุดได้โดยเปลี่ยนค่าองค์ประกอบ <Rate> ใน XML สำหรับนโยบาย ดูรายละเอียดเพิ่มเติมเกี่ยวกับการกำหนดค่านโยบายได้ที่ข้อมูลอ้างอิงนโยบาย

นอกจากนี้ คุณยังตัดและวางนโยบายในมุมมองโค้ดได้ด้วย ซึ่งเป็นวิธีที่ยอดเยี่ยมในการนำนโยบายจากตัวอย่างที่มีอยู่ใน GitHub มาใช้ซ้ำ

เมื่อคุณเปลี่ยนแปลงคำจำกัดความของนโยบายในมุมมองโค้ด การเปลี่ยนแปลงจะแสดงในเครื่องมือตรวจสอบพร็อพเพอร์ตี้ หรือในทางกลับกัน ให้ทำการเปลี่ยนแปลงใน Property Inspector และปรากฏใน XML ในมุมมองโค้ด

ดูเอกสารเกี่ยวกับนโยบายโควต้าที่ใช้ในหัวข้อนี้โดยเฉพาะได้ที่นโยบายโควต้า