คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่เอกสารประกอบของ
Apigee X info
เมื่อวันพฤหัสบดีที่ 13 ตุลาคม 2016 เราได้เริ่มเปิดตัว Apigee Edge สำหรับ Public Cloud เวอร์ชันใหม่
ฟีเจอร์และการอัปเดตใหม่ๆ
ฟีเจอร์และการอัปเดตใหม่ในรุ่นนี้มีดังนี้
Shared Flows and Flow Hooks to operationalize API proxies (beta-by-request only)
ฟีเจอร์ใหม่ "โฟลว์ที่แชร์" ช่วยให้คุณใช้งานฟังก์ชันในพร็อกซี API ได้ การรวมนโยบายและทรัพยากรแบบมีเงื่อนไขไว้ในโฟลว์ที่ใช้ร่วมกันจะช่วยให้คุณอ้างอิงจากพร็อกซี API ใดก็ได้เพื่อเรียกใช้ตรรกะแบบแหล่งที่มาเดียวที่นำกลับมาใช้ใหม่ได้ เช่น Shared Flow อาจยืนยัน คีย์ API ป้องกันการเพิ่มขึ้นอย่างรวดเร็ว และบันทึกข้อมูล
คุณกำหนดโฟลว์ที่ใช้ร่วมกันได้ใน UI การจัดการ (API > โฟลว์ที่ใช้ร่วมกัน) จากนั้น อ้างอิงโฟลว์ดังกล่าวได้ 2 วิธีดังนี้
- ด้วยนโยบาย Flow Callout ใหม่ในพร็อกซี API
หรือ -
ในอาร์ติแฟกต์ใหม่ที่ชื่อว่า Flow Hooks ซึ่งอยู่ในตำแหน่งต่อไปนี้
- คำขอ: ก่อน PreFlow ของ ProxyEndpoint หลังจาก PostFlow ของ TargetEndpoint
- การตอบกลับ: ก่อน TargetEndpoint PreFlow หลังจาก ProxyEndpoint PostFlow
จุดแนบเหล่านี้ช่วยให้คุณเรียกใช้ตรรกะการทำงานก่อนหรือหลังโฟลว์หลัก ของพร็อกซีแต่ละรายการได้ คุณกำหนดโฟลว์ที่แชร์ให้กับตำแหน่ง Flow Hook เหล่านี้ได้ใน UI การจัดการ (API > การกำหนดค่าสภาพแวดล้อม > Flow Hook)
แมปค่าคีย์ที่เข้ารหัส
คุณสามารถสร้าง Key Value Map (KVM) ที่เข้ารหัสเพื่อจัดเก็บข้อมูลที่ละเอียดอ่อน เช่น ข้อมูลเข้าสู่ระบบหรือข้อมูล PII/HIPAA ฟีเจอร์นี้แตกต่างจากที่เก็บข้อมูลที่ปลอดภัยของ Edge (Vault) ที่มีอยู่ และออกแบบมาเพื่อแทนที่ เนื่องจากจะเข้าถึงค่า Vault ได้ด้วย Node.js เท่านั้น (นอกเหนือจาก Management 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 เช่น หากคุณใช้ Management 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 analytics module ประมวลผลข้อความ แตกต่างกัน |
| 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 | Separate thread pool for some blocking steps to improve load handling |
| CORESERV-774 | การเข้าถึงโดยใช้คีย์ที่ถูกต้องพร้อมการอ้างอิง apiproduct ที่ไม่ถูกต้องจะทำให้เกิดข้อผิดพลาดภายในเซิร์ฟเวอร์ |