คําถามที่พบบ่อยเกี่ยวกับ Edge Microgateway

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

เริ่มต้นใช้งาน

ฉันจะติดตั้ง Edge Microgateway ได้อย่างไร
โปรดดูการติดตั้ง Edge Microgateway
ฉันจะเรียกใช้ Edge Microgateway ได้อย่างไร
ดู การ ตั้งค่าและกำหนดค่า Microgateway ของ Edge
ฉันต้องใช้ฐานข้อมูลเพื่อเรียกใช้ Microgateway ไหม
API ที่ส่งผ่านพร็อกซีผ่าน Edge Microgateway อาจโต้ตอบกับฐานข้อมูลที่ทํางานเป็นส่วนหนึ่งของบริการเป้าหมาย อย่างไรก็ตาม Edge Microgateway จะทำงานแยกจากฐานข้อมูลหรือที่เก็บข้อมูลแบ็กเอนด์

การดำเนินการ

การเปลี่ยนแปลงใดใน Edge ที่ต้องมีการรีสตาร์ท Microgateway ของ Edge
Edge Microgateway จะสำรวจการเปลี่ยนแปลงที่ทำใน Apigee Edge โดยอัตโนมัติ เช่น การเปลี่ยนแปลงพร็อกซี ผลิตภัณฑ์ หรือแอปของนักพัฒนาซอฟต์แวร์ที่รับรู้ไมโครเกตเวย์ ช่วงการหยั่งสัญญาณเริ่มต้นคือ 600 วินาที แต่คุณเปลี่ยนระยะเวลาได้ด้วยการตั้งค่ากำหนดของ config_change_poll_interval ดู แอตทริบิวต์ edgemicro
หากไม่ต้องการรอช่วงเวลาการโหวต ให้ใช้คำสั่ง edgemicro reloadเพื่อรับการเปลี่ยนแปลงล่าสุด ดูหัวข้อการโหลดคลัสเตอร์ Microgateway ซ้ำ
ฉันจะแยกความแตกต่างระหว่างพร็อกซีที่ทำให้ใช้งานได้ใน Edge กับพร็อกซีใน Edge Microgateway ได้อย่างไร
เมื่อกำหนดค่า Edge Microgateway รายการพร็อกซีที่รับรู้ถึงไมโครเกตเวย์ที่ทำให้ใช้งานได้ใน Apigee Edge จะได้รับการดาวน์โหลดไปยังการกำหนดค่าภายในของ Edge Microgateway พร็อกซีที่รับรู้ Microgateway คือพร็อกซีที่มีชื่อเป็นคำนำหน้า edgemicro_
ตัวเลือกการบันทึกด้วย Edge Microgateway มีอะไรบ้าง
Edge Microgateway มีฟีเจอร์การบันทึกในตัว โปรดดูรายละเอียดที่หัวข้อ การจัดการไฟล์บันทึก
คุณยังเขียนปลั๊กอินที่กำหนดเองเพื่อใช้บริการบันทึกของบุคคลที่สามกับ Edge Microgateway ได้ด้วย คุณไม่สามารถใช้นโยบายการบันทึกข้อความของ Apigee Edge เพื่อบันทึกข้อความสําหรับ Edge Microgateway เนื่องจากลักษณะการทํางานของ Edge Microgateway โปรดดูบทความของชุมชน Logging Plugin for Microgateway
ฉันจะใช้ชุดค่าผสมคีย์/ข้อมูลลับซ้ำระหว่างอินสแตนซ์ของ Edge Microgateway ได้ไหม
ตราบใดที่องค์กรและสภาพแวดล้อมเหมือนกันสำหรับอินสแตนซ์ Microgateway คุณจะใช้คู่คีย์/ข้อมูลลับที่สร้างขึ้นระหว่างการกำหนดค่าซ้ำได้
ฉันจะกำหนดค่า Edge Microgateway เพื่อเริ่มต้นใช้งานในสภาพแวดล้อมที่ใช้งานจริงได้อย่างไร
คุณสามารถตั้งค่าตัวแปรสภาพแวดล้อมสำหรับพารามิเตอร์คำสั่งเริ่มต้นได้ เช่น EDGEMICRO_KEY, EDGEMICRO_SECRET, EDGEMICRO_ORG และ EDGEMICRO_ENV ตัวแปรเหล่านี้ (และอื่นๆ) จะช่วยให้คุณเริ่มใช้งาน Edge Microgateway ด้วยคําสั่งเดียว edgemicro start โปรดดูเพิ่มเติมที่ การตั้งค่าตัวแปรสภาพแวดล้อม
ฉันจะใช้แอตทริบิวต์ผลิตภัณฑ์ที่กำหนดเองหรือแอปของนักพัฒนาซอฟต์แวร์กับ Edge Microgateway ได้ไหม
ไม่ โดยค่าเริ่มต้น Edge Microgateway จะดำเนินการกับแอตทริบิวต์ที่เกี่ยวข้องกับการกำหนดเส้นทางพื้นฐานและความปลอดภัยเท่านั้น อย่างไรก็ตาม คุณสามารถแก้ปัญหาชั่วคราวได้โดยใช้ตัวเลือกต่อไปนี้
  1. เพิ่มแอตทริบิวต์ที่กำหนดเองลงในedgemicro-authพร็อกซีที่ Edge Microgateway ติดตั้งใช้งานใน Apigee Edge แอตทริบิวต์เหล่านี้จะพร้อมใช้งานเมื่อใช้ความปลอดภัยของคีย์ API หรือโทเค็น OAuth
  2. แก้ไขปลั๊กอิน 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 ใช้ API การจัดการใด

คำสั่ง Edge Microgateway ต่อไปนี้จะเรียก API การจัดการ Apigee Edge ให้ทำงานตามที่อธิบายไว้ใน ข้อมูลอ้างอิง CLI สำหรับ Edge Microgateway

  • edgemicro configure
  • edgemicro upgradeauth
  • edgemicro upgradekvm
  • edgemicro rotatekey
  • edgemicro cert check
  • edgemicro cert delete
  • edgemicro cert install

ส่วนต่อไปนี้แสดงรายการการเรียก Management API ที่แต่ละคําสั่งใช้

คำสั่ง edgemicro configure และ upgradeauth จะเรียกใช้ API การจัดการต่อไปนี้

  • (รายการการทำให้ใช้งานได้) GET: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/deployments
  • (get deployment info) 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
  • (deploy proxy) 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 เรียกใช้ 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 เรียกใช้ API การจัดการต่อไปนี้

  • POST: https://api.enterprise.apigee.com/v1/organizations/[org]/environments/[env]/keyvaluemaps

การทำให้ใช้งานได้

ฉันจะติดตั้งใช้งาน Edge Microgateway ในเซิร์ฟเวอร์เดียวกับที่บริการเป้าหมายทำงานอยู่ได้ไหม
ได้ Edge Microgateway เป็นกระบวนการขนาดเล็กที่สามารถทำงานใกล้กับบริการเป้าหมายได้ รวมถึงในเครื่องเดียวกัน
ฉันจะติดตั้งใช้งานพุลส์พร็อกซี Edge ที่มีอยู่เป็นการทําให้ใช้งานได้ของ Edge Microgateway ได้ไหม
ไม่ พร็อกซีที่ทราบเกี่ยวกับ Microgateway ของ Edge มีข้อกําหนดเฉพาะและไม่รองรับฟีเจอร์ทั้งหมดของพร็อกซี Edge ปกติ ดูส่วนที่ 2: สร้างเอนทิตีใน Apigee Edge
ฉันจะเปิดใช้การทดแทนระหว่างการติดตั้งใช้งานพุลส์พร็อกซีของ Edge กับการติดตั้งใช้งาน Microgateway ของ Edge สําหรับพร็อกซี 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 รวมถึงการเรียกผ่าน Microgateway ของ Edge ต้องเป็นไปตามขีดจํากัดเดียวกัน
ฉันจะเชื่อมโยงการติดตั้งใช้งาน 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 ผ่าน Microgateway ของ Edge อย่างไรก็ตาม คุณต้องมีสิทธิ์ระดับองค์กรจึงจะสร้างหรือเปลี่ยนพร็อกซีที่รับรู้ Microgateway ของ Edge ซึ่งติดตั้งใช้งานใน Edge ได้

ประสิทธิภาพ

ข้อควรพิจารณาด้านประสิทธิภาพในการใช้ Edge Microgateway
หากเรียกใช้ Edge Microgateway ร่วมกับแอปพลิเคชันเป้าหมาย ให้ตรวจสอบว่าเซิร์ฟเวอร์มีความจุเพียงพอ
แนวทางปฏิบัติแนะนำในการใช้งาน Edge Microgateway หลายเครื่องพร้อมกันมีอะไรบ้าง
Apigee แนะนำให้เรียกใช้อินสแตนซ์ Edge Microgateway หลายรายการในเซิร์ฟเวอร์ที่แตกต่างกันโดยมีตัวกระจายโหลด เช่น NGINX อยู่ด้านหน้า โปรดดูเพิ่มเติมที่หัวข้อ การจัดการ API ด้วย Apigee Edge Microgateway และ NGINX และ การปรับขนาดแนวนอนแนวตั้งในชุมชน Apigee
โดยค่าเริ่มต้น Edge Microgateway TPS คืออะไร และมีข้อกำหนดฮาร์ดแวร์อะไรบ้างสำหรับอินสแตนซ์ Microgateway
ข้อกำหนดด้านฮาร์ดแวร์และการวัด TPS นั้นวัดได้ยากด้วย Edge Microgateway ขึ้นอยู่กับการตั้งค่าของคุณ ซึ่งประกอบด้วยการปรับแต่ง Edge Microgateway, การใช้ปลั๊กอิน, ปลั๊กอินที่กำหนดเอง และการกําหนดค่าสิ่งอื่นๆ เช่น TLS โดยทั่วไป Apigee ขอแนะนำให้คุณลองใช้ชุดค่าผสมของรายการต่างๆ และทำการทดสอบประสิทธิภาพกับการตั้งค่าที่เฉพาะเจาะจง

การติดตั้งใช้งาน Private Cloud

Edge Microgateway ทำงานร่วมกับ Edge สำหรับ Private Cloud ได้ไหม
ได้ โปรดดูรายละเอียดที่หัวข้อ ขั้นตอนการกำหนดค่า Apigee Private Cloud

ปลั๊กอิน

โควต้าบังคับใช้กับ Edge Microgateway อย่างไร
คุณเลือกที่จะเพิ่มปลั๊กอินโควต้าลงในอินสแตนซ์ของ Edge Microgateway ได้ โปรดดูรายละเอียดที่หัวข้อการใช้ปลั๊กอินโควต้า
Spike Arrest บังคับใช้กับ 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 เช่น โควต้า การหยุดการเพิ่มขึ้นอย่างฉับพลัน การรักษาความปลอดภัยของคีย์ API และการรักษาความปลอดภัย OAuth2 คุณยังเขียนปลั๊กอินที่กำหนดเองได้ด้วย ดูหัวข้อใช้ปลั๊กอินและพัฒนาปลั๊กอินที่กำหนดเอง

โพสต์ชุมชนและบล็อก Apigee ต่อไปนี้พูดถึงกรณีการใช้งานปลั๊กอินเพิ่มเติม

ความปลอดภัย

ฉันจะปกป้องทรัพยากร /products ได้อย่างไร
ภาพรวม
เมื่อคุณกำหนดค่า Edge Microgateway พร็อกซี API ชื่อ edgemicro-auth จะใช้งานได้กับองค์กร:สภาพแวดล้อมใน Apigee Edge พร็อกซีนี้จะแสดงปลายทาง /products ที่แสดงรายการผลิตภัณฑ์ API หากคุณติดตั้ง Edge Microgateway ในวันที่ 5 ตุลาคม 2018 หรือก่อนหน้านั้น Apigee ขอแนะนำให้คุณดำเนินการเพื่อปกป้องปลายทางนี้ เนื่องจากคำตอบมีอีเมลของนักพัฒนาแอปที่สร้างและแก้ไขผลิตภัณฑ์ API ในองค์กร Apigee
คุณสามารถปกป้องอุปกรณ์ปลายทางโดยการอัปเกรด Microgateway ของ Edge หรือกำหนดค่า Mutual TLS ตัวเลือกทั้ง 2 รายการนี้อธิบายไว้ด้านล่าง
ตรวจสอบว่าปลายทางของ /products ได้รับการปกป้องหรือไม่

หากไม่แน่ใจว่าปลายทาง /products ได้รับการป้องกันหรือไม่ ให้ไปที่ส่วนยืนยันว่าทรัพยากร /products ได้รับการป้องกัน แล้วทำตามขั้นตอนในส่วนนั้นก่อนดำเนินการต่อ

ตัวเลือกที่ 1: อัปเกรด Edge Microgateway

หากคุณติดตั้ง Edge Microgateway ไว้ก่อนวันที่ 5 ตุลาคม 2018 Apigee ขอแนะนำให้คุณอัปเกรดเป็น Edge Microgateway เวอร์ชันล่าสุด ทำตามขั้นตอนในหัวข้อ การอัปเกรด Edge Microgateway หากคุณมีการเชื่อมต่ออินเทอร์เน็ต

หากอัปเกรดไม่ได้ในขณะนี้ ให้ไปที่ตัวเลือกที่ 2

ตัวเลือกที่ 2: กำหนดค่า Mutual TLS

หากอัปเกรด Edge Microgateway ไม่ได้ในขณะนี้ Apigee ขอแนะนําให้คุณปกป้องการสื่อสารระหว่าง Edge Microgateway กับพร็อกซี edgemicro-auth ด้วย TLS ร่วมกัน (หรือที่เรียกว่า TLS แบบ 2 ทาง)

  1. เปิดไฟล์ $HOME/.edgemicro/org-env-config.yaml โปรดดูที่ ติดตั้ง Edge Microgateway ที่ไหน หากไม่พบไฟล์นี้
  2. เพิ่มบล็อก tlsOptions ต่อไปนี้ลงในไฟล์ org-env-config.yaml เพื่อเปิดใช้ TLS ร่วมระหว่าง Edge Microgateway กับ Apigee Edge
    edge_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: รหัสผ่านสำหรับไฟล์ pfx
    • ciphers: ระบุการเข้ารหัส TLS
  3. ตรวจสอบว่าโฮสต์เสมือนที่ติดตั้งใช้งานedgemicro-auth Proxies ได้เปิดใช้ TLS ร่วม โปรดดูรายละเอียดที่หัวข้อการกําหนดโฮสต์เสมือนสําหรับ TLS แบบ 2 ทางในเอกสารประกอบของ Apigee Edge

    ภาพหน้าจอต่อไปนี้แสดงวิธีเปิดใช้ TLS ร่วมในโฮสต์เสมือนใน UI ของ Apigee Edge

  4. ดูที่พร็อกซี API ของ edgemicro-auth ใน 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" }

และดู:

การกำหนดค่า SSL ใน Windows
หากใช้ Edge Microgateway ใน Windows คุณต้องติดตั้ง OpenSSL ในเครื่องและเพิ่มลงใน PATH เครื่อง Windows บางรุ่นไม่มีบริการ OpenSSL ดูข้อมูลเกี่ยวกับการดาวน์โหลดและการติดตั้ง OpenSSL ได้จากเอกสารประกอบของ OpenSSL
ฉันจะอนุญาตให้เข้าถึงทรัพยากร API โดยใช้ผลิตภัณฑ์ API ที่เชื่อมโยงกับพร็อกซีที่ Micro-aware ของ Edge ได้ไหม

ปัจจุบันระบบจะตรวจสอบเฉพาะเส้นทางฐานเพื่อระบุว่า API ได้รับอนุมัติสำหรับผลิตภัณฑ์ API ที่เชื่อมโยงกับโทเค็น OAuth รายการใดรายการหนึ่งหรือไม่

เช่น

  1. คุณสร้างพร็อกซีที่มีคำนำหน้า edgemicro_ ที่มีเส้นทางฐานและเป้าหมาย
  2. คุณเพิ่มพร็อกซีนี้ลงในผลิตภัณฑ์ เราขอเรียกไฟล์นี้ว่า edgemicro-prod1
  3. เมื่อมีการเรียก API ผ่าน Edge Microgateway โดยใช้คีย์ API หรือโทเค็น OAuth ทาง Edge Microgateway จะตรวจสอบว่าเส้นทางฐานของ API ตรงกับเส้นทางฐานของedgemicro_*พร็อกซีที่ได้รับอนุมัติสำหรับรายการผลิตภัณฑ์ที่ได้รับอนุมัติสำหรับคีย์หรือโทเค็นนั้นหรือไม่

โปรดดู เมื่อใช้เกตเวย์ edgemicro ในผลิตภัณฑ์ URL ใดบ้างที่ต้องเพิ่มลงในรายการที่อนุญาตพิเศษในผลิตภัณฑ์ที่ใช้ภายใต้ทรัพยากรในชุมชน Apigee

ฉันจะใช้ใบรับรอง SSL ที่กำหนดเองกับ Edge Microgateway ได้ไหม

ปัจจุบันระบบรองรับเฉพาะใบรับรอง SSL เริ่มต้นของ Apigee เท่านั้น ระบบยังไม่รองรับใบรับรอง SSL ที่กำหนดเองในขณะนี้

วิธีแก้ปัญหาเฉพาะหน้า:

หากต้องการใช้ใบรับรอง SSL ที่กำหนดเอง (ค่าเริ่มต้นที่ไม่ใช่ Apigee) คุณมีตัวเลือกต่อไปนี้

  • ใช้ปลายทาง jwt_public_key ที่ไม่ใช่ SSL แก้ไขไฟล์การกําหนดค่า Edge Microgateway เพื่อใช้ http://{org}-{env}.apigee.net/edgemicro-auth/publicKey -หรือ-
  • ก่อนเริ่ม Edge Microgateway ให้ตั้งค่าตัวแปรสภาพแวดล้อมนี้: export NODE_TLS_REJECT_UNAUTHORIZED ="0"

โปรดดูหัวข้อ ยืนยันข้อผิดพลาดในการติดตั้ง Edge Micro ในใบรับรอง SSL ในชุมชน Apigee ด้วย

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

คุณใช้โทเค็นของคุณเองได้ แต่ก่อนอื่นคุณต้องปิดการให้สิทธิ์ในตัวสําหรับ Edge Microgateway หากต้องการทำสิ่งต่อไปนี้

  1. เปิดไฟล์การกำหนดค่าสำหรับ Edge Microgateway
  2. เปลี่ยนการตั้งค่า OAuth ทั้ง 2 รายการให้เป็น "จริง" ดังนี้

    oauth:
        allowNoAuthorization: true
        allowInvalidAuthorization: true
    
ฉันได้รับข้อผิดพลาดการเข้าถึงถูกปฏิเสธเมื่อเริ่ม Edge Microgateway
หากคุณได้รับข้อผิดพลาด "การเข้าถึงถูกปฏิเสธ" เมื่อเริ่มต้นใช้งาน Edge Microgateway ด้วยคำสั่งนี้
edgemicro start -o [org] -e [env] -k [key] -s [secret]
อาจเป็นไปได้ว่าคีย์และข้อมูลลับไม่ถูกต้องด้วยเหตุผลบางอย่าง วิธีที่ดีที่สุดคือสร้างคีย์และรหัสลับอีกครั้งด้วยคำสั่ง edgemicro genkeys

การทดสอบและการแก้ไขข้อบกพร่อง

ฉันจะป้องกันข้อผิดพลาด "เปิดไฟล์มากเกินไป" ในระหว่างการทดสอบการโหลดได้อย่างไร

ในบางกรณี ระบบอาจพบปัญหาการเชื่อมต่อไฟล์ที่เปิดอยู่มากเกินไป ซึ่งอาจทำให้ Edge Micro ขัดข้อง การบันทึกเริ่มต้นต้องใช้การเชื่อมต่อ HTTP 2 รายการสําหรับธุรกรรมขาเข้าและขาออกผ่าน Microgateway

Apigee จะแนะนำให้ตั้งค่าคำสั่ง ulimit ของระบบเป็นไม่จำกัด: ulimit -n unlimited เพื่อวัตถุประสงค์ในการทดสอบและการเปรียบเทียบ โปรดดูหัวข้อข้อผิดพลาดของ Edge ขณะทำการทดสอบการโหลด Microgateway ในชุมชน Apigee ด้วย

เคล็ดลับสำหรับการพัฒนาและการแก้ไขข้อบกพร่องอย่างรวดเร็ว

หากคุณกำลังพัฒนาปลั๊กอินสําหรับ Edge Microgateway คุณอาจพบว่าการรองรับการพัฒนาอย่างรวดเร็วมีจํากัด

ในระหว่างนี้ โปรดดูเคล็ดลับต่อไปนี้

  • หากต้องการเริ่ม Microgateway ของ Edge คุณสามารถตั้งค่าตัวแปรสภาพแวดล้อม EDGEMICRO_KEY และ EDGEMICRO_SECRET เป็นคู่คีย์/ข้อมูลลับที่จําเป็นสําหรับคําสั่งการเริ่มต้น Microgateway ซึ่งจะช่วยให้คุณเริ่ม Edge Microgateway ได้โดยไม่ต้องป้อนคีย์/ข้อมูลลับในบรรทัดคำสั่ง โปรดดู การกําหนดตัวแปรสภาพแวดล้อมในเอกสารของ Edge Microgateway ด้วย
  • เริ่ม Edge Microgateway ในโหมดแก้ไขข้อบกพร่องเพื่อดูเอาต์พุตเพิ่มเติมในเทอร์มินัลคำสั่ง DEBUG=* edgemicro start -o [org] -e [env] -k [key] -s [secret]

ธุรกิจและการออกใบอนุญาต

โมเดลการรองรับ Apigee-127 และ Edge Microgateway เกี่ยวข้องกันอย่างไร

Apigee-127 เป็นโปรเจ็กต์ซอฟต์แวร์โอเพนซอร์สที่รองรับในโมเดลโอเพนซอร์ส กล่าวคือ คุณสามารถแจ้งปัญหาในโปรเจ็กต์ GitHub และส่งคำขอดึงข้อมูลได้หากต้องการแก้ไขปัญหา Apigee-127 ไม่ได้กำหนดหรือรวมข้อตกลงการอนุญาตให้ใช้ซอฟต์แวร์กับ Apigee

ส่วน Edge Microgateway เป็นผลิตภัณฑ์ Enterprise ที่ Apigee รองรับสำหรับลูกค้า Apigee กล่าวคือ ลูกค้า Apigee จะสร้างคำขอแจ้งปัญหา คำขอฟีเจอร์ และรายงานข้อบกพร่องได้โดยใช้การสนับสนุน Apigee Edge ของ Google Cloud