คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่เอกสารประกอบของ
Apigee X info
เริ่มต้นใช้งาน
- ฉันจะติดตั้ง Edge Microgateway ได้อย่างไร
- ดูการติดตั้ง Edge Microgateway
- ฉันจะเรียกใช้ Edge Microgateway ได้อย่างไร
- ดู การตั้งค่าและกำหนดค่า Edge Microgateway
- ฉันต้องมีฐานข้อมูลเพื่อเรียกใช้ Microgateway ไหม
- API ที่พร็อกซีผ่าน Edge Microgateway อาจโต้ตอบกับฐานข้อมูลที่ทำงานเป็นส่วนหนึ่งของบริการเป้าหมาย อย่างไรก็ตาม Edge Microgateway จะทำงานแยกจากฐานข้อมูลหรือที่เก็บข้อมูลแบ็กเอนด์
การดำเนินการ
- การเปลี่ยนแปลงใดใน Edge ที่ต้องรีสตาร์ท Edge Microgateway
- Edge Microgateway จะสำรวจการเปลี่ยนแปลงที่เกิดขึ้นใน Apigee Edge โดยอัตโนมัติ เช่น การเปลี่ยนแปลงพร็อกซีที่รับรู้ Microgateway, ผลิตภัณฑ์ หรือแอปของนักพัฒนาซอฟต์แวร์
ช่วงเวลาการสำรวจเริ่มต้นคือ 600 วินาที แต่คุณเปลี่ยนช่วงเวลาได้ด้วย
config_change_poll_intervalการตั้งค่าการกำหนดค่า ดู แอตทริบิวต์ edgemicro - หากไม่ต้องการรอช่วงเวลาการสำรวจ ให้ใช้คำสั่ง
edgemicro reloadเพื่อรับการเปลี่ยนแปลงล่าสุด ดู การโหลดคลัสเตอร์ Microgateway ซ้ำ - ฉันจะแยกความแตกต่างระหว่างพร็อกซีที่ติดตั้งใช้งานใน Edge กับพร็อกซีใน Edge Microgateway ได้อย่างไร
- เมื่อกำหนดค่า Edge Microgateway ระบบจะดาวน์โหลดรายการพร็อกซีที่รับรู้ Microgateway ซึ่งติดตั้งใช้งานใน Apigee
Edge ไปยังการกำหนดค่าภายในของ Edge Microgateway พร็อกซีที่รับรู้ Microgateway
คือพร็อกซีที่มีชื่อขึ้นต้นด้วย
edgemicro_ - ตัวเลือกการบันทึกด้วย Edge Microgateway มีอะไรบ้าง
- Edge Microgateway มีฟีเจอร์การบันทึกในตัว โปรดดูรายละเอียดที่หัวข้อ การจัดการไฟล์บันทึก
- คุณยังเขียนปลั๊กอินที่กำหนดเองเพื่อใช้บริการบันทึกของบุคคลที่สามกับ Edge Microgateway ได้ด้วย เนื่องจากลักษณะการทำงานของ Edge Microgateway คุณจึงไม่สามารถใช้นโยบายการบันทึกข้อความของ Apigee Edge เพื่อบันทึกข้อความสำหรับ Edge Microgateway ได้ ดูบทความของชุมชนเกี่ยวกับ ปลั๊กอินการบันทึกสำหรับ Microgateway ด้วย
- ฉันจะใช้ชุดค่าผสมคีย์/ลับระหว่างอินสแตนซ์ของ Edge Microgateway ซ้ำได้ไหม
- ตราบใดที่องค์กรและสภาพแวดล้อมของอินสแตนซ์ Microgateway เหมือนกัน คุณจะ ใช้คู่คีย์/ลับที่สร้างขึ้นระหว่างการกำหนดค่าซ้ำได้
- ฉันจะกำหนดค่า Edge Microgateway ให้เริ่มต้นในสภาพแวดล้อมฮาร์ดแวร์และซอฟต์แวร์ได้อย่างไร
- คุณตั้งค่าตัวแปรสภาพแวดล้อมสำหรับพารามิเตอร์คำสั่งเริ่มต้นได้ เช่น
EDGEMICRO_KEY,EDGEMICRO_SECRET,EDGEMICRO_ORGและEDGEMICRO_ENVตัวแปรเหล่านี้ (และตัวแปรอื่นๆ) จะช่วยให้คุณเริ่ม Edge Microgateway ได้ด้วยคำสั่งเดียวedgemicro startดู การตั้งค่าตัวแปรสภาพแวดล้อมด้วย - ฉันใช้แอตทริบิวต์ผลิตภัณฑ์หรือแอปของนักพัฒนาซอฟต์แวร์ที่กำหนดเองกับ Edge Microgateway ได้ไหม
- ไม่ โดยค่าเริ่มต้น Edge Microgateway จะดำเนินการกับแอตทริบิวต์ที่เกี่ยวข้องกับการกำหนดเส้นทางพื้นฐานและความปลอดภัยเท่านั้น อย่างไรก็ตาม คุณมีตัวเลือกต่อไปนี้เป็นวิธีแก้ปัญหาชั่วคราว
-
เพิ่มแอตทริบิวต์ที่กำหนดเองลงในพร็อกซี
edgemicro-authที่ Edge Microgateway จะติดตั้งใช้งานใน Apigee Edge แอตทริบิวต์เหล่านี้จะพร้อมใช้งานเมื่อใช้ความปลอดภัยของคีย์ API หรือโทเค็น OAuth - แก้ไขปลั๊กอิน OAuth เพื่อดำเนินการกับแอตทริบิวต์เหล่านั้น
-
เพิ่มแอตทริบิวต์ที่กำหนดเองลงในพร็อกซี
- มีการจำกัดขนาดส่วนหัวของคำขอไหม
- หากอัปเกรด Node.js เป็นv8.14.0 หรือเวอร์ชันที่ใหม่กว่า โปรดทราบว่าขนาดส่วนหัวสูงสุดที่อนุญาตในคำขอจะลดลงจาก 80 KB เป็น 8 KB ส่วนหัวที่มีขนาดเกิน 8 KB จะทำให้เกิดข้อผิดพลาด HTTP 431
- ตัวเลือกการกำหนดค่า Node.js ที่เพิ่มใน Node.js v11.6.0 ช่วยให้คุณเปลี่ยนขนาดส่วนหัวสูงสุดเริ่มต้นได้
พารามิเตอร์
--max-http-header-sizeนี้ช่วยให้คุณระบุ ขนาดสูงสุดของส่วนหัว HTTP เป็นไบต์ได้ - หากต้องการเปลี่ยนการกำหนดค่าเริ่มต้น ให้ตั้งค่าตัวแปรสภาพแวดล้อม
NODE_OPTIONSในบรรทัดคำสั่งดังนี้NODE_OPTIONS=--max-http-header-size=NUM_BYTES
เช่น
NODE_OPTIONS=--max-http-header-size=80000
Edge Microgateway ใช้ Management API ใด
คำสั่ง Edge Microgateway ต่อไปนี้เรียกใช้ Apigee Edge Management API เพื่อทำงาน ตามที่อธิบายไว้ใน ข้อมูลอ้างอิง CLI สำหรับ Edge Microgateway
edgemicro configureedgemicro upgradeauthedgemicro upgradekvmedgemicro rotatekeyedgemicro cert checkedgemicro cert deleteedgemicro cert install
ส่วนต่อไปนี้แสดงรายการการเรียก Management API ที่แต่ละคำสั่งใช้
คำสั่ง edgemicro configure และ upgradeauth จะเรียกใช้
Management API ต่อไปนี้
- (แสดงรายการการติดตั้งใช้งาน)
GET: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/deployments - (รับข้อมูลการติดตั้งใช้งาน)
GET: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth - (อัปโหลดแหล่งข้อมูล)
POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=java&name=micro-gateway-products-javacallout-2.0.0.jar - (อัปโหลดแหล่งข้อมูล)
POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=adjust-quota.js - (อัปโหลดแหล่งข้อมูล)
POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=generate-jwk.js - (อัปโหลดแหล่งข้อมูล)
POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=generate-verify-jwt.js - (อัปโหลดแหล่งข้อมูล)
POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=jsrsasign-all-min.js - (อัปโหลดแหล่งข้อมูล)
POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=jwt-initialization.js - (อัปโหลดแหล่งข้อมูล)
POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=send-jwk-response.js - (อัปโหลดแหล่งข้อมูล)
POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=send-product-list.js - (อัปโหลดแหล่งข้อมูล)
POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=send-public-key.js - (อัปโหลดแหล่งข้อมูล)
POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=set-jwt-variables.js - (อัปโหลดแหล่งข้อมูล)
POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=set-quota-variables.js - (อัปโหลดแหล่งข้อมูล)
POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=set-response.js - (อัปโหลดแหล่งข้อมูล)
POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=validate-params.js - (สร้างพร็อกซี API)
POST: https://api.enterprise.apigee.com/v1/o/[org]/apis?action=import&validate=false&name=edgemicro-auth - (นโยบายการอัปโหลด)
POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/policies - (อัปโหลดพร็อกซี)
POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/proxies?name=default - (ติดตั้งใช้งานพร็อกซี)
POST: https://api.enterprise.apigee.com/v1/o/[org]/e/[env]/apis/edgemicro-auth/revisions/1/deployments
คำสั่ง upgradekvm จะเรียกใช้ Management API ต่อไปนี้
PUT: https://api.enterprise.apigee.com/v1/organizations/[org]/environments/[env]/keyvaluemaps/microgateway
คำสั่ง rotatekey จะเรียกใช้ Management API ต่อไปนี้
GET: https://api.enterprise.apigee.com/v1/organizations/[org]/environments/[env]/keyvaluemaps/microgateway/entries/private_key
คำสั่ง cert check จะเรียกใช้ Management API ต่อไปนี้
GET: https://api.enterprise.apigee.com/v1/organizations/[org]/environments/[env]/keyvaluemaps/microgateway
คำสั่ง cert delete จะเรียกใช้ Management API ต่อไปนี้
DELETE: https://api.enterprise.apigee.com/v1/organizations/[org]/environments/[env]/keyvaluemaps/microgateway
คำสั่ง cert install จะเรียกใช้ Management API ต่อไปนี้
POST: https://api.enterprise.apigee.com/v1/organizations/[org]/environments/[env]/keyvaluemaps
การทำให้ใช้งานได้
- ฉันติดตั้งใช้งาน Edge Microgateway ในเซิร์ฟเวอร์เดียวกับที่บริการเป้าหมายทำงานอยู่ได้ไหม
- ได้ Edge Microgateway เป็นกระบวนการที่มีน้ำหนักเบาซึ่งทำงานใกล้กับบริการเป้าหมายได้ รวมถึงในเครื่องเดียวกัน
- ฉันจะติดตั้งใช้งานแพ็กเกจพร็อกซี Edge ที่มีอยู่เป็นการติดตั้งใช้งาน Edge Microgateway ได้ไหม
- ไม่ได้ พร็อกซีที่รับรู้ Edge Microgateway มีข้อกำหนดเฉพาะและไม่รองรับฟีเจอร์ทั้งหมด ของพร็อกซี Edge ปกติ ดูส่วนที่ 2: สร้างเอนทิตีใน Apigee Edge
- ฉันจะเปิดใช้เฟลโอเวอร์ระหว่างการติดตั้งใช้งานชุดพร็อกซี Edge กับการติดตั้งใช้งาน Edge Microgateway สำหรับพร็อกซี API เดียวกันได้ไหม
- ไม่ Edge Microgateway ไม่ทราบเกี่ยวกับการติดตั้งใช้งานพร็อกซี API ที่ไม่ใช่ Microgateway ใน Apigee Edge
- รูปแบบการติดตั้งใช้งานที่มีความพร้อมใช้งานสูงสำหรับ Edge Microgateway คืออะไร
- ดูการอภิปรายที่ดีเกี่ยวกับวิธีเรียกใช้ Edge Microgateway โดยใช้ NGINX เป็นตัวจัดสรรภาระงานได้ที่ การจัดการ API ด้วย Apigee Edge Microgateway และ NGINX
- ฉันใช้ตัวโหลดบาลานซ์ใดกับ Edge Microgateway ได้บ้าง
- Edge Microgateway ทำงานร่วมกับตัวจัดสรรภาระงานได้ทุกตัว
- มีการจำกัดจำนวนพร็อกซี Edge Microgateway ที่ฉันจะติดตั้งใช้งานได้ไหม
- ดูขีดจำกัดการกำหนดค่าผลิตภัณฑ์ที่ระบุสำหรับ พร็อกซี Edge ปกติ จำนวนพร็อกซีที่รับรู้ถึง Microgateway ที่คุณสามารถทําให้ใช้งานได้ในองค์กรและสภาพแวดล้อม Apigee Edge และเรียกผ่าน Edge Microgateway ต้องเป็นไปตามขีดจํากัดเดียวกัน
- ฉันจะเชื่อมโยงการติดตั้งใช้งาน Edge Microgateway กับองค์กรและสภาพแวดล้อมที่เฉพาะเจาะจงได้ไหม
- เมื่อกำหนดค่าอินสแตนซ์ของ Edge Microgateway คุณต้องเชื่อมโยงอินสแตนซ์กับองค์กรและสภาพแวดล้อม Edge ที่เฉพาะเจาะจง
- ฉันเชื่อมโยงการติดตั้งใช้งาน Edge Microgateway กับภูมิภาคที่เฉพาะเจาะจงได้ไหม (หากฉันเป็นลูกค้าแบบหลายภูมิภาค)
- Edge Microgateway จะเลือกภูมิภาคที่ดีที่สุดสำหรับการโต้ตอบกับ Apigee Edge โดยอัตโนมัติ คุณสามารถทําให้อินสแตนซ์ Edge Microgateway ใช้งานได้ในแต่ละภูมิภาคที่ต้องการให้บริการ
การบริหารจัดการ
- ฉันต้องเป็นผู้ดูแลระบบขององค์กรเพื่อกำหนดค่าและติดตั้งใช้งาน Edge Microgateway ไหม
- ได้ คุณต้องมีข้อมูลเข้าสู่ระบบผู้ดูแลระบบองค์กรเพื่อกำหนดค่าและติดตั้งใช้งาน Edge Microgateway
- ฉันต้องเป็นผู้ดูแลระบบขององค์กรจึงจะเรียกใช้ Edge Microgateway ได้ใช่ไหม
- ไม่ Edge Microgateway เป็น
Node.jsแอปพลิเคชัน และใครก็ตามที่มีสิทธิ์ เรียกใช้แอปพลิเคชันดังกล่าวในเครื่องที่กำหนดก็สามารถเรียกใช้ได้ - ผู้ใช้ในองค์กร ของฉันใช้ Edge Microgateway ได้ไหม
- คุณไม่จำเป็นต้องเป็นผู้ใช้ในองค์กร Apigee Edge เพื่อทำการเรียก API ผ่าน Edge Microgateway อย่างไรก็ตาม คุณต้องมีสิทธิ์ระดับองค์กรเพื่อสร้างหรือเปลี่ยนพร็อกซีที่รับรู้ Edge Microgateway ซึ่งติดตั้งใช้งานใน Edge
ประสิทธิภาพ
- ข้อควรพิจารณาด้านประสิทธิภาพสำหรับการใช้ Edge Microgateway มีอะไรบ้าง
- หากเรียกใช้ Edge Microgateway ร่วมกับแอปพลิเคชันเป้าหมาย โปรดตรวจสอบว่าเซิร์ฟเวอร์มีความสามารถเพียงพอ
- แนวทางปฏิบัติแนะนำในการเรียกใช้ Edge Microgateway ในวงกว้างมีอะไรบ้าง
- Apigee ขอแนะนำให้เรียกใช้ Edge Microgateway หลายอินสแตนซ์ในเซิร์ฟเวอร์ต่างๆ ที่มีตัว จัดสรรภาระงาน เช่น NGINX อยู่ด้านหน้า ดูเพิ่มเติม การจัดการ API ด้วย Apigee Edge Microgateway และ NGINX และ การปรับขนาดแนวตั้งและแนวนอนในชุมชน Apigee
- TPS ของ Edge Microgateway โดยค่าเริ่มต้นคือเท่าใด และข้อกำหนดด้านฮาร์ดแวร์ที่จำเป็นสำหรับอินสแตนซ์ Microgateway คืออะไร
- การวัดข้อกำหนดเกี่ยวกับฮาร์ดแวร์และ TPS เป็นสิ่งที่ประเมินได้ยากด้วย Edge Microgateway ขึ้นอยู่กับการตั้งค่าของคุณ ซึ่งเป็นการผสมผสานระหว่างการปรับแต่ง Edge Microgateway, การใช้ปลั๊กอิน, ปลั๊กอินที่กำหนดเอง และการกำหนดค่าอื่นๆ เช่น TLS โดยปกติแล้ว Apigee จะแนะนำให้คุณลองใช้ชุดค่าผสมดังกล่าว และทำการทดสอบประสิทธิภาพกับการตั้งค่าเฉพาะของคุณ
การติดตั้งใช้งาน Private Cloud
- Edge Microgateway ใช้กับ Edge สำหรับ Private Cloud ได้ไหม
- ได้ โปรดดูรายละเอียดที่หัวข้อ ขั้นตอนการกำหนดค่า Apigee Private Cloud
ปลั๊กอิน
- Edge Microgateway บังคับใช้โควต้าอย่างไร
- คุณจะเพิ่มปลั๊กอินโควต้าลงในอินสแตนซ์ของ Edge Microgateway ก็ได้ ดูรายละเอียดได้ที่ การใช้ปลั๊กอิน โควต้า
- Edge Microgateway บังคับใช้การป้องกันการเพิ่มขึ้นของทราฟิกอย่างฉับพลันอย่างไร
- คุณเลือกเพิ่มปลั๊กอินการป้องกันการเพิ่มขึ้นของทราฟิกอย่างฉับพลันในอินสแตนซ์ของ Edge Microgateway ได้ ดูรายละเอียดได้ที่การใช้ปลั๊กอินการป้องกันช่วงที่เพิ่มขึ้น
- มีวิธีอื่นๆ ในการเขียนปลั๊กอินนอกเหนือจาก
Node.jsสำหรับ Edge Microgateway ไหม - ไม่ได้ ปลั๊กอินต้องเขียนด้วย
Node.js - จะเกิดอะไรขึ้นเมื่อ Edge Microgateway อัปโหลดข้อมูล Analytics ไปยัง Edge ไม่ได้
- Edge Microgateway มีบัฟเฟอร์ในหน่วยความจำ หากบัฟเฟอร์เต็ม ระบบจะทิ้งเพย์โหลดที่เก่ากว่า เพื่อให้การรับส่งข้อมูล API เป็นไปอย่างราบรื่น
- ฉันจะเพิ่มนโยบายใน Edge Microgateway ได้ไหม
- หากคุณแนบนโยบาย Apigee Edge ปกติกับพร็อกซีที่รองรับ Microgateway
ใน Apigee Edge ระบบจะไม่สนใจนโยบายเหล่านั้น แต่ Edge Microgateway จะใช้ปลั๊กอินเพื่อมอบฟังก์ชันการทำงานที่คล้ายกับนโยบายใน Edge เช่น โควต้า การป้องกันการเพิ่มขึ้นของทราฟิกอย่างฉับพลัน ความปลอดภัยของคีย์ API และความปลอดภัยของ OAuth2 นอกจากนี้ คุณยังเขียนปลั๊กอินที่กำหนดเองได้ด้วย ดู
ใช้ปลั๊กอินและ
พัฒนาปลั๊กอินที่กำหนดเอง
โพสต์และบล็อกในชุมชน Apigee ต่อไปนี้จะกล่าวถึงกรณีการใช้งานปลั๊กอินเพิ่มเติม
ความปลอดภัย
- ฉันจะปกป้อง
/productsได้อย่างไร - ภาพรวม
- เมื่อคุณกำหนดค่า Edge Microgateway
ระบบจะติดตั้งใช้งานพร็อกซี API ที่ชื่อ
edgemicro-authในสภาพแวดล้อมขององค์กรใน Apigee Edge พร็อกซีนี้แสดง/productsปลายทางที่แสดงรายการผลิตภัณฑ์ API หากคุณติดตั้ง Edge Microgateway ในวันที่ 5 ตุลาคม 2018 หรือก่อนหน้านั้น Apigee ขอแนะนำ ให้คุณทำตามขั้นตอนเพื่อปกป้องปลายทางนี้ เนื่องจากคำตอบ มีอีเมลของนักพัฒนาแอปที่สร้างและแก้ไขผลิตภัณฑ์ API ในองค์กร Apigee ของคุณ - คุณปกป้องปลายทางได้โดยการอัปเกรด Edge Microgateway หรือกำหนดค่า TLS ร่วมกัน โดยจะอธิบายตัวเลือกทั้ง 2 รายการนี้ด้านล่าง
- ตรวจสอบว่าปลายทาง
/productsได้รับการปกป้องหรือไม่ -
หากไม่แน่ใจว่าปลายทาง
/productsได้รับการปกป้องหรือไม่ ให้ไปที่ส่วน ยืนยันว่าทรัพยากร/productsได้รับการปกป้อง แล้วทำตามขั้นตอนที่นั่น ก่อนดำเนินการต่อตัวเลือกที่ 1: อัปเกรด Edge Microgateway
หากคุณติดตั้ง Edge Microgateway ในวันที่ 5 ตุลาคม 2018 หรือก่อนหน้านั้น Apigee ขอแนะนำให้อัปเกรดเป็น Edge Microgateway เวอร์ชันล่าสุด ทำตามขั้นตอนใน การอัปเกรด Edge Microgateway หากคุณมีการเชื่อมต่ออินเทอร์เน็ต
หากอัปเกรดไม่ได้ในขณะนี้ ให้ไปที่ตัวเลือกที่ 2
ตัวเลือกที่ 2: กำหนดค่า TLS แบบ 2 ทาง
หากอัปเกรด Edge Microgateway ไม่ได้ในขณะนี้ Apigee ขอแนะนำให้คุณปกป้องการสื่อสารระหว่าง Edge Microgateway กับพร็อกซี
edgemicro-authด้วย TLS แบบ 2 ทาง (หรือที่เรียกว่า TLS แบบ 2 ทาง)- เปิดไฟล์
$HOME/.edgemicro/org-env-config.yamlดู ตำแหน่งที่ติดตั้ง Edge Microgateway หากคุณไม่พบไฟล์นี้ - เพิ่มบล็อก
tlsOptionsต่อไปนี้ลงในไฟล์org-env-config.yamlเพื่อเปิดใช้ TLS แบบ 2 ทางระหว่าง Edge Microgateway กับ Apigee Edgeedge_config: bootstrap: >- https://domain/edgemicro/bootstrap/organization/org/environment/env jwt_public_key: 'https://domain/edgemicro-auth/publicKey' managementUri: 'https://api.enterprise.apigee.com' tlsOptions: agentOptions: requestCert: true cert: 'path/to/cert' key: 'path/to/key'เช่น
tlsOptions: agentOptions: requestCert: true cert: '/Users/jdoe/twowayssl/ssl/client.key' key: '/Users/jdoe/twowayssl/ssl/ca.crt'นอกจากนี้ คุณยังรวมพารามิเตอร์
agentOptionsที่ไม่บังคับต่อไปนี้ได้ด้วยca: ระบุเส้นทางไปยังผู้ออกใบรับรองpfx: ระบุหากต้องการใช้ไฟล์ p12/pfx แทนใบรับรองและคีย์passphrase: พาสเฟรสสำหรับไฟล์ pfxciphers: ระบุการเข้ารหัส TLS
- ตรวจสอบว่าโฮสต์เสมือนที่พร็อกซี
edgemicro-authได้รับการติดตั้งใช้งานมีการเปิดใช้ TLS แบบ 2 ทาง โปรดดูรายละเอียดในการกำหนดโฮสต์เสมือนสำหรับ TLS แบบ 2 ทาง ในเอกสารประกอบของ Apigee Edgeภาพหน้าจอต่อไปนี้แสดงวิธีเปิดใช้ TLS แบบ 2 ทางในโฮสต์เสมือนใน UI ของ Apigee Edge
- ดู
edgemicro-authพร็อกซี API ใน Edge UI และตรวจสอบว่าได้ระบุ โฮสต์เสมือนที่ถูกต้องในการกำหนดค่าพร็อกซี ตัวอย่างเช่น หากคุณสร้างโฮสต์เสมือนที่เปิดใช้ TLS ชื่อmutualtlsสตริงHTTPProxyConnectionของพร็อกซี ควรมีลักษณะดังนี้<HTTPProxyConnection> <BasePath>/edgemicro-auth</BasePath> <Properties/> <VirtualHost>mutualtls</VirtualHost> </HTTPProxyConnection>
- เปิดไฟล์
/products ได้รับการปกป้อง/products
ได้รับการปกป้องหรือไม่ คุณควรทำการทดสอบนี้หลังจากทำตามขั้นตอน
(ตัวเลือกที่ 1 หรือตัวเลือกที่ 2) เพื่อปกป้องทรัพยากร คุณสามารถทำได้โดยใช้ cURL เช่น
curl -v https://your_domain/edgemicro-auth/products
/products ได้รับการปกป้อง
{
"error":"unauthorized",
"error_description": "authentication failed"
}หรือ
curl: (35) error:1408F10B:SSL routines:ssl3_get_record:wrong version number
หากเห็นการตอบกลับที่มีลักษณะดังนี้ แสดงว่า/productsทรัพยากรไม่มีการป้องกัน
และอีเมลของนักพัฒนาแอปอาจถูกเปิดเผย
{ "apiProduct":[ { "apiResources":[ "/", "/**" ], "approvalType":"auto", "attributes":[ ], "createdAt":1537374680948, "createdBy":"jdoe@foo.com", "description":"", "displayName":"mock", "environments":[ "test" ], "lastModifiedAt":1537374680948, "lastModifiedBy":"test@test.com", "name":"mock", "proxies":[ "edgemicro-auth", "edgemicro_mock" ], "quota":"null", "quotaInterval":"null", "quotaTimeUnit":"null", "scopes":[ "" ] } ] }
Apigee ยังแนะนําให้คุณทดสอบโฮสต์เสมือน HTTP ด้วย
เช่น
curl -v http://your_domain/edgemicro-auth/products
หากการเรียก cURL แสดงรายการผลิตภัณฑ์ API แสดงว่าอาจมีการเปิดเผยอีเมลของนักพัฒนาแอป
หากไม่ต้องการเปิดเผยปลายทางด้วยโฮสต์เสมือนที่ไม่ใช่ TLS นี้ ให้นำออกจาก
edgemicro-auth การกำหนดค่า HTTPProxyConnection
หากต้องการปกป้องทรัพยากร ให้เลือกตัวเลือกใดตัวเลือกหนึ่งต่อไปนี้
ปัจจุบันคุณไม่สามารถต่ออายุโทเค็น JWT สำหรับอินสแตนซ์ Edge Microgateway ที่ระบุได้
วิธีแก้ปัญหา:
โทเค็น JWT แต่ละรายการมีแอตทริบิวต์ exp ที่ระบุวันที่หมดอายุของโทเค็น แอปสามารถ
คำนวณเวลาหมดอายุและขอโทเค็นใหม่ได้โดยการเรียก API ไปยัง
ปลายทางโทเค็น edgemicro-auth โดยตรง ตัวอย่างเช่น คุณสามารถเรียก API ได้ดังนี้
POST https: //{your_org}-{your_env}.apigee.net/edgemicro-auth/token
... โดยมีเนื้อหา JSON ดังนี้
{ "client_id": {your_id}, "client_secret": {your_secret},
"grant_type": "client_credentials" }
และดู:
- รักษาความปลอดภัย API ด้วยโทเค็น OAuth หรือคีย์ API ในเอกสารประกอบของ Edge Microgateway
- กระบวนการต่ออายุโทเค็นผู้ถือเมื่อโทเค็นหมดอายุในชุมชน Apigee มีอะไรบ้าง
ปัจจุบันระบบจะตรวจสอบเฉพาะ basepath เพื่อพิจารณาว่า API ได้รับอนุมัติสำหรับผลิตภัณฑ์ API ที่เชื่อมโยงกับโทเค็น OAuth ที่เฉพาะเจาะจงหรือไม่
เช่น
- คุณสร้างพร็อกซีที่นำหน้าด้วย
edgemicro_โดยมีเส้นทางฐานและเป้าหมาย - คุณเพิ่มพร็อกซีนี้ลงในผลิตภัณฑ์ เราจะเรียกฟังก์ชันนี้ว่า
edgemicro-prod1 - เมื่อมีการเรียก API ผ่าน Edge Microgateway โดยใช้คีย์ API หรือโทเค็น OAuth
Edge Microgateway จะตรวจสอบว่า basepath ของ API ตรงกับ basepath ของ
edgemicro_*พร็อกซีที่ได้รับอนุมัติสำหรับรายการผลิตภัณฑ์ที่ได้รับอนุมัติสำหรับคีย์หรือโทเค็นนั้นหรือไม่
ดูเพิ่มเติมที่ When using the edgemicro gateway in the products which url needs whitelisting in the products used under resources? ในชุมชน Apigee
ปัจจุบันระบบรองรับเฉพาะใบรับรอง SSL ของ Apigee เริ่มต้น เท่านั้น ขณะนี้ระบบยังไม่รองรับใบรับรอง SSL ที่กำหนดเอง
วิธีแก้ปัญหาชั่วคราว
หากต้องการใช้ใบรับรอง SSL ที่กำหนดเอง (ไม่ใช่ค่าเริ่มต้นของ Apigee) คุณมีตัวเลือกต่อไปนี้
-
ใช้
jwt_public_keyปลายทางที่ไม่ใช่ SSL แก้ไขไฟล์การกำหนดค่า Edge Microgateway เพื่อใช้http://{org}-{env}.apigee.net/edgemicro-auth/publicKey-or- -
ก่อนที่จะเริ่ม Edge Microgateway ให้ตั้งค่าตัวแปรสภาพแวดล้อมนี้: export
NODE_TLS_REJECT_UNAUTHORIZED ="0"
ดูหัวข้อ ยืนยันข้อผิดพลาดในการติดตั้ง Edge Micro ในใบรับรอง SSL ในชุมชน Apigee
edgemicro-auth กับ Edge และการติดตั้งใช้งานนี้ต้องใช้ข้อมูลเข้าสู่ระบบของผู้ดูแลระบบองค์กรคุณสามารถใช้โทเค็นของคุณเองได้ แต่ก่อนอื่นคุณต้องปิดการให้สิทธิ์ในตัวสำหรับ Edge Microgateway หากต้องการทำสิ่งต่อไปนี้
- เปิดไฟล์การกำหนดค่าสำหรับ Edge Microgateway
-
เปลี่ยนการตั้งค่า OAuth ทั้ง 2 รายการเป็น "จริง" ดังนี้
oauth: allowNoAuthorization: true allowInvalidAuthorization: true
edgemicro start -o [org] -e [env] -k [key] -s [secret]การทดสอบและการแก้ไขข้อบกพร่อง
- ฉันจะป้องกันข้อผิดพลาด "เปิดไฟล์มากเกินไป" ระหว่างการทดสอบโหลดได้อย่างไร
-
ในบางกรณี ระบบอาจพบสถานการณ์ที่มีการเชื่อมต่อไฟล์ที่เปิดอยู่มากเกินไป ซึ่งอาจทำให้ Edge Micro ขัดข้อง การบันทึกเริ่มต้นต้องใช้การเชื่อมต่อ HTTP 2 รายการสำหรับธุรกรรมขาเข้าและขาออกผ่าน Microgateway
Apigee ขอแนะนำให้ตั้งค่าคำสั่ง ulimit ของระบบเป็นไม่จำกัด
ulimit -n unlimitedเพื่อวัตถุประสงค์ในการทดสอบและเปรียบเทียบ ดูข้อผิดพลาดของ Edge Microgateway ระหว่างการทดสอบการโหลดในชุมชน Apigee ด้วย - เคล็ดลับสำหรับการพัฒนาและการแก้ไขข้อบกพร่องอย่างรวดเร็ว
-
หากคุณกำลังพัฒนาปลั๊กอินสำหรับ Edge Microgateway คุณอาจพบว่าการรองรับการพัฒนาอย่างรวดเร็ว นั้นมีข้อจำกัด
ตอนนี้เรามีเคล็ดลับมาฝาก
- หากต้องการเริ่มต้น Edge Microgateway คุณสามารถตั้งค่าตัวแปรสภาพแวดล้อม EDGEMICRO_KEY และ EDGEMICRO_SECRET เป็นคู่คีย์/ข้อมูลลับที่คำสั่งเริ่มต้น Microgateway ต้องการ ซึ่งจะช่วยให้คุณเริ่ม Edge Microgateway ได้โดยไม่ต้องป้อนคีย์/ข้อมูลลับที่บรรทัดคำสั่ง ดู การตั้งค่าตัวแปรสภาพแวดล้อมในเอกสารประกอบของ Edge Microgateway ด้วย
-
เริ่ม Edge Microgateway ในโหมด DEBUG เพื่อดูเอาต์พุตเพิ่มเติมในเทอร์มินัลคำสั่ง
DEBUG=* edgemicro start -o [org] -e [env] -k [key] -s [secret]
ธุรกิจและการออกใบอนุญาต
- โมเดลการสนับสนุน Apigee-127 และ Edge Microgateway มีความสัมพันธ์กันอย่างไร
-
Apigee-127 เป็นโปรเจ็กต์ซอฟต์แวร์โอเพนซอร์สที่รองรับในโมเดลโอเพนซอร์ส กล่าวคือ คุณสามารถแจ้งปัญหาในโปรเจ็กต์ GitHub และส่งคำขอ Pull Request หากพยายามแก้ไข สิ่งใด Apigee-127 ไม่ได้กำหนดหรือรวมข้อตกลงใบอนุญาตซอฟต์แวร์กับ Apigee
ในทางกลับกัน Edge Microgateway เป็นผลิตภัณฑ์ระดับองค์กรที่ Apigee ให้การสนับสนุนสำหรับลูกค้า Apigee กล่าวคือ ลูกค้า Apigee สามารถสร้างคำขอแจ้งปัญหา คำขอฟีเจอร์ และรายงานข้อบกพร่องได้โดยใช้การสนับสนุน Apigee Edge ของ Google Cloud