คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่เอกสารประกอบของ Apigee X ข้อมูล
เมื่อวันพฤหัสบดีที่ 13 ตุลาคม 2016 เราได้เริ่มเปิดตัว Apigee Edge เวอร์ชันใหม่สำหรับ Public Cloud
ฟีเจอร์และการอัปเดตใหม่ๆ
ฟีเจอร์และการอัปเดตใหม่ๆ ในรุ่นนี้มีดังนี้
โฟลว์ที่แชร์และฮุกโฟลว์เพื่อทำให้พร็อกซี API ใช้งานได้ (เบต้าตามคำขอเท่านั้น)
ฟีเจอร์ "โฟลว์ที่แชร์" ใหม่ช่วยให้คุณใช้งานฟังก์ชันในพร็อกซี API ได้ การรวมนโยบายและทรัพยากรแบบมีเงื่อนไขเข้ากับโฟลว์ที่แชร์ช่วยให้คุณอ้างอิงนโยบายนั้นจากพร็อกซี API ใดก็ได้เพื่อเรียกใช้ตรรกะแบบต้นทางเดียวที่นำมาใช้ใหม่ได้ ตัวอย่างเช่น โฟลว์ที่แชร์อาจยืนยันคีย์ API ป้องกันการถูกระงับการเพิ่มขึ้น และข้อมูลบันทึก
คุณกำหนดโฟลว์ที่แชร์ใน UI การจัดการ (API > โฟลว์ที่แชร์) แล้วอ้างอิงโฟลว์เหล่านั้นด้วย 2 วิธีดังนี้
- เมื่อใช้นโยบายไฮไลต์โฟลว์ใหม่ในพร็อกซี API
หรือ -
ในอาร์ติแฟกต์ใหม่ที่เรียกว่า Flow Hook ซึ่งอยู่ในตำแหน่งต่อไปนี้
- คำขอ: ก่อน ProxyEndpoint PreFlow หลัง TargetEndpoint PostFlow
- Response: ก่อน TargetEndpoint PreFlow หลัง ProxyEndpoint PostFlow
จุดไฟล์แนบเหล่านี้ช่วยให้คุณดำเนินการตรรกะการดำเนินการก่อนหรือหลังจุดโฟลว์หลักของพร็อกซีแต่ละรายการได้ คุณสามารถกำหนดโฟลว์ที่แชร์ให้กับตำแหน่งของ Flow Hook เหล่านี้ใน UI การจัดการ (API > การกำหนดค่าสภาพแวดล้อม > ฮุกโฟลว์)
แมปค่าคีย์ที่เข้ารหัส
คุณสามารถสร้างแมปค่าคีย์ (KVM) ที่เข้ารหัสเพื่อจัดเก็บข้อมูลที่ละเอียดอ่อน เช่น ข้อมูลเข้าสู่ระบบหรือข้อมูล PII/HIPAA ฟีเจอร์นี้แตกต่างจากที่เก็บที่ปลอดภัย (ห้องนิรภัย) ของ Edge ที่มีอยู่และออกแบบมาเพื่อแทนที่ฟีเจอร์ดังกล่าว เนื่องจากค่าห้องนิรภัยเข้าถึงได้ด้วย Node.js เท่านั้น (นอกเหนือจาก API การจัดการ) คุณเข้าถึงค่า KVM ที่เข้ารหัสได้ด้วย Node.js หรือนโยบายการดำเนินการแมปค่าคีย์
การสร้าง KVM ที่เข้ารหัส
- ใช้ KVM API ที่มีอยู่ เมื่อคุณใส่
“encrypted”: “true”
ในคำจำกัดความเพย์โหลดเมื่อสร้าง KVM แล้ว Edge จะเข้ารหัส KVM และสร้างคีย์การเข้ารหัสที่มีขอบเขตเดียวกับ KVM - คุณจะใช้นโยบายการดำเนินการแมปค่าคีย์เพื่อสร้าง KVM ที่เข้ารหัสไม่ได้
- คุณเข้ารหัส KVM ที่ไม่เข้ารหัสที่มีอยู่ไม่ได้
การใช้ KVM ที่เข้ารหัส
- ใช้นโยบายการดำเนินการแมปค่าคีย์เพื่อรับและอัปเดตค่า KVM ที่เข้ารหัส
- เมื่อรับค่าคีย์ที่เข้ารหัส ให้ขึ้นต้นตัวแปรเพื่อเก็บค่าเป็น "private"
เช่น
<Get assignTo="private.secretVar">
ตัวแปรprivate.secretVar
ดังกล่าวจะเก็บค่าที่ถอดรหัส - เมื่ออัปเดตค่าด้วยนโยบาย คุณไม่จำเป็นต้องดำเนินการใดๆ เป็นพิเศษ ระบบจะเข้ารหัสค่าโดยอัตโนมัติใน KVM ที่เข้ารหัส
- คุณยังสามารถเข้าถึงค่าที่ถอดรหัสได้โดยใช้โมดูล apigee-access ในโค้ด Node.js ใช้ฟังก์ชัน
getKeyValueMap()
เพื่อเรียกข้อมูล KVM ตามชื่อและขอบเขต มี 2 ฟังก์ชันที่พร้อมใช้งานในออบเจ็กต์ที่แสดงผล ได้แก่getKeys(callback)
เพื่อรับอาร์เรย์ของชื่อคีย์ และget(key, callback)
เพื่อรับค่าสำหรับคีย์หนึ่งๆ เช่นvar apigee = require('apigee-access'); var encryptedKVM = apigee.getKeyValueMap('VerySecureKVM', 'apiproxy'); encryptedKVM.get('secret1', function(err, secretValue) { // use the secret value here });
(APIRT-1197)
URL ข้อมูลจำเพาะของ OpenAPI รวมอยู่ในข้อมูลเมตาของพร็อกซี API
เมื่อคุณสร้างพร็อกซี API ตามข้อกำหนด OpenAPI ระบบจะจัดเก็บตำแหน่งของข้อมูลจำเพาะของ OpenAPI ไว้ในข้อมูลเมตาของพร็อกซี API ตัวอย่างเช่น หากคุณใช้ API การจัดการเพื่อรับรายละเอียดของการแก้ไขพร็อกซี ข้อมูลเมตาจะมีเส้นทางไปยังข้อกำหนดของ OpenAPI ในรูปแบบต่อไปนี้
"spec" :
"https://raw.githubusercontent.com/apigee/api-platform-samples/master/default-proxies/helloworld/openapi/mocktarget.yaml"
การเพิ่มประสิทธิภาพนี้รองรับ Edge รุ่นใหม่ ซึ่งลิงก์ข้อกำหนดของ OpenAPI กับพร็อกซี API, ผลิตภัณฑ์ API และเอกสารอ้างอิง API ในพอร์ทัลสำหรับนักพัฒนาซอฟต์แวร์ใหม่ (MGMT-2913)
การควบคุม IP ของไคลเอ็นต์ด้วย Sense
Sense ให้คุณกำหนดตำแหน่งของ IP ไคลเอ็นต์ด้วยตัวแปร additionalIPVars
เพื่อควบคุมตำแหน่งในการค้นหาที่อยู่ IP สำหรับการตรวจจับบ็อต Sense เมื่อใช้การกำหนดเส้นทางผลิตภัณฑ์ เช่น Akamai ได้แม่นยำยิ่งขึ้น ตัวอย่างเช่น คุณตั้งค่า additionalIPVars
ให้ใช้ส่วนหัว true-client-ip
ซึ่งมี IP ที่ถูกต้องจาก Akamai เพื่อประเมินในกฎของบ็อต (APIRT-3332)
แก้ไขข้อบกพร่องแล้ว
ข้อบกพร่องต่อไปนี้ได้รับการแก้ไขในรุ่นนี้ รายการนี้มีไว้เพื่อให้ผู้ใช้ตรวจสอบเพื่อดูว่าตั๋วสนับสนุนได้รับการแก้ไขแล้วหรือยังเป็นหลัก แต่ไม่ได้ออกแบบมาเพื่อให้ข้อมูลโดยละเอียดแก่ผู้ใช้ทั้งหมด
รหัสปัญหา | คำอธิบาย |
---|---|
APIRT-3507 | ข้อผิดพลาดที่เกิดขึ้นเป็นระยะๆ (เช่น ข้อผิดพลาด SNI) ในคำขอราคาเสนอบริการ JavaScript |
APIRT-3408 | MP รุ่น 160817 โมดูลการวิเคราะห์ apigee-access ในการประมวลผลข้อความต่างออกไป |
APIRT-3390 |
การเปลี่ยนแปลงการตอบกลับข้อผิดพลาดที่แสดงผลโดยนโยบายโทเค็นเพื่อการเข้าถึงสำหรับการรีเฟรช |
APIRT-3389 | |
APIRT-3381 | เวลาในการตอบสนองสูงในพร็อกซีการผลิตของลูกค้า |
APIRT-3366 | นโยบาย JavaScript ล้มเหลวในองค์กรทดลองใช้ใหม่ทุกองค์กร |
APIRT-3363 | การแยกวิเคราะห์ URL ที่ไม่ถูกต้องจะแสดงสถานะ 500 ด้วย ApplicationNotFound |
APIRT-3356 | ข้อความโทเค็น OAuth ไม่ถูกต้อง |
APIRT-3355 | ข้อผิดพลาด 403 เป็นระยะๆ ในพร็อกซี OAuth |
APIRT-3285 | |
APIRT-3261 | มีการตรวจสอบข้อมูลเข้าสู่ระบบกับนักพัฒนาแอปอื่นในเวอร์ชันที่ใช้งานจริง |
APIRT-3234 | แอป Node.js แสดงผล NPE |
APIRT-3223 | ปัญหาแคชเก่าของ Apigee |
APIRT-3193 | เซิร์ฟเวอร์เป้าหมาย Node.js หยุดทำงานหลังจากย้ายไปยัง ASG |
APIRT-3152 | การเรียกใช้การจัดการ cachedlogs จะทำให้ข้อความบันทึกแบ่งออก |
APIRT-3117 | MP มีการใช้งาน CPU ถึง 100% และหยุดแสดงการรับส่งข้อมูล |
APIRT-3064 | เราเตอร์ - ข้อความแสดงข้อผิดพลาด 503 ที่กำหนดเองจากเราเตอร์ |
APIRT-2620 | แยกกลุ่มเทรดสำหรับขั้นตอนการบล็อกบางขั้นตอนเพื่อปรับปรุงการจัดการโหลด |
CORESERV-774 | การเข้าถึงโดยใช้คีย์ที่ถูกต้องซึ่งมีการอ้างอิง apiproduct ที่ไม่ถูกต้องทำให้เกิดข้อผิดพลาดภายในเซิร์ฟเวอร์ |