คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่
เอกสารประกอบของ Apigee X info
เมื่อวันพฤหัสบดีที่ 13 ตุลาคม 2016 เราได้เริ่มเผยแพร่ Apigee Edge เวอร์ชันใหม่สำหรับระบบคลาวด์สาธารณะ
ฟีเจอร์และการอัปเดตใหม่ๆ
ฟีเจอร์และการอัปเดตใหม่ๆ ในรุ่นนี้มีดังนี้
Shared Flows และ Flow Hooks เพื่อทำให้พร็อกซี API ใช้งานได้ (เบต้าตามคำขอเท่านั้น)
ฟีเจอร์ "Shared Flows" ใหม่ช่วยให้คุณทำให้ฟังก์ชันการทำงานในพร็อกซี API ใช้งานได้ เมื่อรวมนโยบายและทรัพยากรที่มีเงื่อนไขไว้ใน Shared Flow คุณจะอ้างอิง Shared Flow จาก พร็อกซี API ใดก็ได้เพื่อเรียกใช้ตรรกะที่ใช้ซ้ำได้จากแหล่งเดียว ตัวอย่างเช่น Shared Flow อาจตรวจสอบ คีย์ API ป้องกันการเพิ่มขึ้นอย่างฉับพลัน และบันทึกข้อมูล
คุณกำหนด Shared Flows ใน UI การจัดการ (APIs > Shared Flows) แล้ว อ้างอิง Shared Flows ได้ 2 วิธีดังนี้
- ด้วยนโยบาย Flow Callout ใหม่ในพร็อกซี API
หรือ -
ในอาร์ติแฟกต์ใหม่ที่เรียกว่า Flow Hooks ซึ่งอยู่ในตำแหน่งต่อไปนี้
- คำขอ: ก่อน ProxyEndpoint PreFlow, หลัง TargetEndpoint PostFlow
- การตอบกลับ: ก่อน TargetEndpoint PreFlow, หลัง ProxyEndpoint PostFlow
จุดแนบเหล่านี้ช่วยให้คุณเรียกใช้ตรรกะการทำงานก่อนหรือหลังจุดโฟลว์หลักของพร็อกซีแต่ละรายการ คุณกำหนด Shared Flows ให้กับตำแหน่ง Flow Hook เหล่านี้ใน UI การจัดการ (APIs > Environment Configuration > Flow Hooks)
แผนผังค่าคีย์ที่เข้ารหัส
คุณสามารถสร้างแผนผังค่าคีย์ (KVM) ที่เข้ารหัสเพื่อจัดเก็บข้อมูลที่ละเอียดอ่อน เช่น ข้อมูลเข้าสู่ระบบหรือข้อมูล PII/HIPAA ฟีเจอร์นี้แตกต่างจากที่เก็บข้อมูลที่ปลอดภัย (Vault) ที่มีอยู่ของ Edge และออกแบบมาเพื่อแทนที่ Vault เนื่องจากค่า Vault จะเข้าถึงได้ด้วย Node.js เท่านั้น (นอกเหนือจาก Management API) คุณสามารถเข้าถึงค่า KVM ที่เข้ารหัสด้วย Node.js หรือนโยบาย Key Value Map Operations
การสร้าง KVM ที่เข้ารหัส
- ใช้ KVM API ที่มีอยู่ เมื่อรวม
“encrypted”: “true”ไว้ในคำจำกัดความเพย์โหลดเมื่อสร้าง KVM, Edge จะเข้ารหัส KVM และสร้างคีย์การเข้ารหัสที่มีขอบเขตเดียวกันกับ KVM - คุณไม่สามารถใช้นโยบาย Key Value Map Operations เพื่อสร้าง KVM ที่เข้ารหัส
- คุณไม่สามารถเข้ารหัส KVM ที่ไม่ได้เข้ารหัสที่มีอยู่
การใช้ KVM ที่เข้ารหัส
- ใช้นโยบาย Key Value Map Operations เพื่อรับและอัปเดตค่า 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 Spec รวมอยู่ในข้อมูลเมตาของพร็อกซี API
เมื่อสร้างพร็อกซี API ตามข้อกำหนดของ OpenAPI ระบบจะจัดเก็บตำแหน่งของ OpenAPI Spec ไว้ในข้อมูลเมตาของพร็อกซี API ตัวอย่างเช่น หากคุณใช้ Management API เพื่อรับรายละเอียดของการแก้ไขพร็อกซี ข้อมูลเมตาจะมีเส้นทางไปยัง OpenAPI Spec ในรูปแบบต่อไปนี้
"spec" :
"https://raw.githubusercontent.com/apigee/api-platform-samples/master/default-proxies/helloworld/openapi/mocktarget.yaml"
การปรับปรุงนี้รองรับ Edge เวอร์ชันถัดไป ซึ่งจะลิงก์ OpenAPI Spec กับ พร็อกซี 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 Service Callout |
| 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 ไม่ถูกต้องทำให้เกิดข้อผิดพลาดภายในเซิร์ฟเวอร์ |