การรักษาความปลอดภัยระยะสุดท้าย

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

การรักษาความปลอดภัยแบบไมล์สุดท้ายจะปกป้องบริการแบ็กเอนด์ที่พร็อกซีโดยบริการ API เป้าหมายหลักของการรักษาความปลอดภัยระยะสุดท้ายคือการป้องกันการโจมตีที่เรียกว่า "End-Run" ซึ่งนักพัฒนาแอปค้นพบ URL สำหรับบริการแบ็กเอนด์และข้ามพร็อกซี API เพื่อไปยัง URL แบ็กเอนด์โดยตรง

ตัวเลือกหลักในการตั้งค่าการรักษาความปลอดภัยแบบ Last-Mile มีดังนี้

  • TLS/SSL ของไคลเอ็นต์
  • การตรวจสอบสิทธิ์ขาออก
  • โมดูล tls ของ Node.js

TLS/SSL ของไคลเอ็นต์

กลไกหลักในการรักษาความปลอดภัยของระยะสุดท้ายคือ TLS/SSL ของไคลเอ็นต์ ซึ่งเรียกอีกอย่างว่า "การตรวจสอบสิทธิ์ร่วมกัน"

โปรดดูการกำหนดค่า TLS จาก Edge เป็นแบ็กเอนด์ (Cloud และ Private Cloud)

การตรวจสอบสิทธิ์ขาออก

การรักษาความปลอดภัยระยะสุดท้ายยังบังคับใช้ได้โดยกำหนดให้พร็อกซี API แสดงข้อมูลเข้าสู่ระบบแก่บริการแบ็กเอนด์

ตัวอย่างเช่น คุณอาจต้องการให้พร็อกซี API แสดงคีย์ API กับบริการแบ็กเอนด์ของคุณ คุณอาจมีพร็อกซี API ที่ได้รับและแสดงโทเค็นเพื่อการเข้าถึงข้อมูลเข้าสู่ระบบไคลเอ็นต์ OAuth ด้วย

คีย์ API

คีย์ API สามารถใช้กับคำขอขาออกจากพร็อกซี API ไปยังบริการแบ็กเอนด์ได้ โดยสมมติว่าบริการแบ็กเอนด์คือ API ที่ออกและตรวจสอบคีย์ API ได้

หากตั้งค่าพร็อกซี API ให้แสดงคีย์ API ในคำขอขาออก คุณต้องจัดเก็บคีย์ API ไว้ในที่ที่พร็อกซี API จะเรียกข้อมูลคีย์ดังกล่าวได้ในระหว่างรันไทม์ ตำแหน่ง 1 ตำแหน่งสำหรับจัดเก็บคีย์ API คือแมปคีย์/ค่า ดูนโยบายการดำเนินการแมปค่าคีย์

คุณสามารถใช้นโยบายประเภท AssignMessage เพื่อเพิ่มคีย์ API เป็นส่วนหัว HTTP, พารามิเตอร์การค้นหา หรือองค์ประกอบเพย์โหลดไปยังคำขอขาออก ดูมอบหมายนโยบายข้อความ

ข้อมูลเข้าสู่ระบบไคลเอ็นต์ OAuth

ข้อมูลเข้าสู่ระบบไคลเอ็นต์ OAuth จะใช้เพื่อเพิ่มชั้นความสามารถในการเพิกถอนลงในคีย์ API ได้ หากบริการแบ็กเอนด์รองรับข้อมูลเข้าสู่ระบบไคลเอ็นต์ OAuth คุณจะกำหนดค่าพร็อกซี API เพื่อแสดงโทเค็นการเข้าถึงข้อมูลเข้าสู่ระบบไคลเอ็นต์สำหรับคำขอแต่ละรายการได้

ต้องกำหนดค่าพร็อกซี API ให้ทำไฮไลต์เพื่อรับโทเค็นเพื่อการเข้าถึงจากปลายทางของโทเค็น นอกจากนี้ พร็อกซี API ยังจำเป็นสำหรับการแคชโทเค็นเพื่อการเข้าถึง เพื่อป้องกันไม่ให้ได้รับโทเค็นเพื่อการเข้าถึงใหม่สำหรับการเรียกแต่ละครั้ง

มีหลายวิธีที่คุณสามารถใช้เพื่อนำข้อมูลเข้าสู่ระบบของไคลเอ็นต์ขาออกไปใช้

คุณสามารถแก้ไขตัวอย่างนี้เพื่อเรียกใช้ปลายทางของโทเค็นเพื่อรับโทเค็นเพื่อการเข้าถึงได้ ตัวอย่างนี้ใช้ JavaScript ในการแนบโทเค็นไปยังคำขอขาออกเป็นส่วนหัวการให้สิทธิ์ HTTP นอกจากนี้ คุณยังใช้มอบหมายนโยบายข้อความเพื่อวัตถุประสงค์นี้ได้

SAML

คุณใช้นโยบาย Generate SAMLAssertion เพื่อแนบการยืนยัน SAML กับข้อความคำขอ XML ขาออกจากพร็อกซี API ไปยังบริการแบ็กเอนด์ได้ ซึ่งจะช่วยให้บริการแบ็กเอนด์ดำเนินการตรวจสอบสิทธิ์และให้สิทธิ์สำหรับคำขอที่ได้รับจากพร็อกซี API ได้

ดูนโยบายการยืนยัน SAML

Node.js

หากเป้าหมายพร็อกซี API ของคุณคือแอปพลิเคชัน Node.js คุณสามารถใช้โมดูล tls ของ Node.js เพื่อสร้างการเชื่อมต่อที่ปลอดภัยไปยังบริการแบ็กเอนด์ได้ คุณส่งคำขอขาออกด้วยโมดูล tls ด้วยวิธีเดียวกับที่ทำใน Node.js ตามปกติ โดยทั่วไปแล้ว คุณต้องเพิ่มคีย์และใบรับรองฝั่งไคลเอ็นต์ (ไฟล์ .pem) ลงในไดเรกทอรีทรัพยากร/โหนด แล้วโหลดภายในสคริปต์ ดูข้อมูลเกี่ยวกับการใช้โมดูล tls และวิธีการได้ที่เอกสารประกอบของโมดูล Node.js tls โปรดดูข้อมูลเพิ่มเติมที่การทำความเข้าใจการสนับสนุน Edge สำหรับโมดูล Node.js