คุณกําลังดูเอกสารประกอบของ Apigee Edge
ไปที่เอกสารประกอบของ Apigee X info
เอกสารนี้มีภาพรวมของวิธีกำหนดค่า TLS ใน Edge สำหรับ 2 ฟังก์ชันการทำงาน ดังนี้
- สิทธิ์เข้าถึงพร็อกซี API ของไคลเอ็นต์ API ใช้โฮสต์เสมือนในเราเตอร์ Edge เพื่อกำหนดค่า TLS
- สิทธิ์เข้าถึงบริการแบ็กเอนด์โดย Edge ใช้ปลายทางเป้าหมายและเซิร์ฟเวอร์เป้าหมายใน Edge Message Processor เพื่อกำหนดค่า TLS
ประเภทการเข้าถึงทั้ง 2 ประเภทแสดงอยู่ด้านล่าง
เกี่ยวกับการตั้งค่าตัวเลือก TLS ในโฮสต์เสมือนหรือปลายทาง/เซิร์ฟเวอร์เป้าหมาย
โฮสต์เสมือนจะแสดงด้วยออบเจ็กต์ XML ในรูปแบบต่อไปนี้
<VirtualHost name="secure"> ... <SSLInfo> <Enabled>true</Enabled> <ClientAuthEnabled>true</ClientAuthEnabled> <KeyStore>ref://myKeystoreRef</KeyStore> <KeyAlias>myKeyAlias</KeyAlias> <TrustStore>ref://myTruststoreRef</TrustStore> <IgnoreValidationErrors>false</IgnoreValidationErrors> </SSLInfo> </VirtualHost>
พื้นที่ของโฮสต์เสมือนที่คุณแก้ไขเพื่อกําหนดค่า TLS จะกําหนดโดยแท็ก <SSLInfo> คุณใช้แท็ก <SSLInfo> เดียวกันเพื่อกําหนดค่าปลายทางหรือเซิร์ฟเวอร์เป้าหมาย
ตารางต่อไปนี้อธิบายองค์ประกอบการกําหนดค่า TLS ที่แท็ก <SSLInfo> ใช้
องค์ประกอบ | คำอธิบาย |
---|---|
<Enabled> |
เปิดใช้ TLS แบบ 1 ทิศทางระหว่าง Edge กับไคลเอ็นต์ API หรือระหว่าง Edge กับแบ็กเอนด์เป้าหมาย สําหรับโฮสต์เสมือน คุณต้องกําหนดคีย์สโตร์ที่มีใบรับรองและคีย์ส่วนตัว |
<ClientAuthEnabled> |
เปิดใช้ TLS แบบ 2 ทางระหว่าง Edge กับไคลเอ็นต์ API หรือระหว่าง Edge กับแบ็กเอนด์เป้าหมาย โดยทั่วไปแล้ว การเปิดใช้ TLS แบบ 2 ทางกำหนดให้คุณตั้งค่าที่เก็บข้อมูลที่เชื่อถือใน Edge |
<KeyStore> | คีย์สโตร์ |
<KeyAlias> | อีเมลที่ใช้แทนที่ระบุไว้เมื่อคุณอัปโหลดใบรับรองและคีย์ส่วนตัวไปยังคีย์สโตร์ |
<TrustStore> | Truststore |
<IgnoreValidationErrors> | หากเป็น "จริง" Edge จะละเว้นข้อผิดพลาดเกี่ยวกับใบรับรอง TLS ใช้ได้เมื่อกำหนดค่า TLS สำหรับเซิร์ฟเวอร์เป้าหมายและปลายทางเป้าหมาย และเมื่อกำหนดค่าโฮสต์เสมือนที่ใช้ TLS แบบ 2 ทาง ค่าเริ่มต้นคือเท็จ เมื่อใช้กับปลายทาง/เซิร์ฟเวอร์เป้าหมาย หากระบบแบ็กเอนด์ใช้ SNI และแสดงผลใบรับรองที่มี Distinguished Name (DN) ของเรื่องไม่ตรงกับชื่อโฮสต์ คุณจะไม่สามารถละเว้นข้อผิดพลาดและการเชื่อมต่อจะล้มเหลว |
<CommonName> | หากระบุ ค่าที่จะใช้ตรวจสอบชื่อทั่วไปของใบรับรองเป้าหมาย ค่านี้ใช้ได้กับการกําหนดค่า TargetEndpoint และ TargetServer เท่านั้น และไม่สามารถใช้กับการกําหนดค่า VirtualHost โดยค่าเริ่มต้น ค่าที่ระบุจะจับคู่กับชื่อจริงของใบรับรองเป้าหมายทุกประการ
ตัวอย่างเช่น การใช้ Apigee สามารถจับคู่ด้วยไวลด์การ์ดได้โดยใช้แอตทริบิวต์ ตัวอย่างเช่น ระบบจะจับคู่และตรวจสอบชื่อทั่วไปที่ระบุเป็น <CommonName wildcardMatch="true">*.myhost.com</CommonName> |
เกี่ยวกับการตั้งค่าองค์ประกอบ <KeyStore> และ <TrustStore>
ในตัวอย่างโฮสต์เสมือนด้านบน จะมีการระบุคีย์สโตร์และทรัสต์สโตร์โดยใช้การอ้างอิงในรูปแบบต่อไปนี้
<KeyStore>ref://myKeystoreRef</KeyStore> <TrustStore>ref://myTruststoreRef</TrustStore>
Apigee ขอแนะนําอย่างยิ่งให้คุณใช้การอ้างอิงถึงคีย์สโตร์และทรัสต์สโตร์เสมอ การอ้างอิงคือตัวแปรที่มีชื่อของคีย์สโตร์หรือคลังความน่าเชื่อถือ แทนที่จะระบุชื่อคีย์สโตร์โดยตรง ในตัวอย่างนี้
myKeystoreRef
คือข้อมูลอ้างอิงที่มีชื่อของที่เก็บคีย์ ในตัวอย่างนี้ ชื่อของคีย์สโตร์คือ myKeystoremyTruststoreRef
คือข้อมูลอ้างอิงที่มีชื่อของไฟล์เก็บข้อมูลเชื่อถือ ในตัวอย่างนี้ ชื่อของคลังความน่าเชื่อถือคือ myTruststore
เมื่อใบรับรองหมดอายุ คุณต้องอัปเดตโฮสต์เสมือนหรือปลายทาง/เซิร์ฟเวอร์เป้าหมายเพื่อระบุคีย์สโตร์หรือคลังความน่าเชื่อถือที่มีใบรับรองใหม่ ข้อดีของการอ้างอิงคือคุณสามารถแก้ไขค่าของการอ้างอิงเพื่อเปลี่ยนคีย์สโตร์หรือทรัสต์สโตร์ได้โดยไม่ต้องแก้ไขโฮสต์เสมือนหรือปลายทาง/เซิร์ฟเวอร์เป้าหมายเอง
- สำหรับลูกค้า Cloud: การเปลี่ยนค่าของข้อมูลอ้างอิงไม่จําเป็นต้องติดต่อทีมสนับสนุน Apigee Edge
- สำหรับลูกค้าที่ใช้ระบบคลาวด์ส่วนตัว: การเปลี่ยนค่าของข้อมูลอ้างอิงไม่จําเป็นต้องรีสตาร์ทคอมโพเนนต์ Edge เช่น เราเตอร์และโปรแกรมประมวลผลข้อความ
หรือจะระบุชื่อคีย์สโตร์และชื่อที่เชื่อถือโดยตรงก็ได้ ดังนี้
<KeyStore>myKeystore</KeyStore> <TrustStore>myTruststore</TrustStore>
หากคุณระบุชื่อคีย์สโตร์หรือทรัสต์สโตร์โดยตรง ลูกค้า Cloud ต้องติดต่อทีมสนับสนุนของ Apigee Edge และลูกค้า Private Cloud ต้องรีสตาร์ทคอมโพเนนต์ Edge บางรายการเพื่ออัปเดตใบรับรอง
ตัวเลือกที่ 3 สำหรับปลายทาง/เซิร์ฟเวอร์เป้าหมายเท่านั้นคือการใช้ตัวแปรของโฟลว์
<KeyStore>{ssl.keystore}</KeyStore> <TrustStore>{ssl.truststore}</TrustStore>
ตัวแปรของโฟลว์ใช้ได้กับปลายทาง/เซิร์ฟเวอร์เป้าหมาย และให้คุณอัปเดตคีย์สโตร์หรือที่เก็บข้อมูลเชื่อถือได้ เช่น การอ้างอิง แต่จะไม่ทำงานร่วมกับโฮสต์เสมือน และกำหนดให้คุณส่งข้อมูลเกี่ยวกับคีย์สโตร์ อีเมลแทน และทรัสต์สโตร์ในคำขอทุกรายการ
ข้อจํากัดในการใช้การอ้างอิงถึงคีย์สโตร์และทรัสต์สโตร์
ลูกค้า Cloud แบบชําระเงินและลูกค้า Private Cloud ทั้งหมดที่กำหนดค่า TLS ต้องคำนึงถึงข้อจำกัดต่อไปนี้เมื่อใช้การอ้างอิงถึงคีย์สโตร์และทรัสต์สโตร์
- คุณจะใช้การอ้างอิงคีย์สโตร์และทรัสต์สโตร์ในโฮสต์เสมือนได้ก็ต่อเมื่อคุณสิ้นสุด TLS ในเราเตอร์ Apigee
- หากคุณมีตัวจัดสรรภาระงานอยู่หน้าเราเตอร์ Apigee และสิ้นสุด TLS ในตัวจัดสรรภาระงาน คุณจะไม่สามารถใช้การอ้างอิงคีย์สโตร์และ TrustStore ในโฮสต์เสมือน
หากโฮสต์เสมือนที่มีอยู่ใช้ชื่อคีย์สโตร์หรือคลังเก็บข้อมูลที่ตรงตามตัวอักษร
โฮสต์เสมือนที่มีอยู่บน Edge อาจไม่ได้รับการกำหนดค่าให้ใช้ข้อมูลอ้างอิงสำหรับคีย์สโตร์และที่เก็บข้อมูลเชื่อถือ ในกรณีนี้ คุณสามารถอัปเดตโฮสต์เสมือนให้ใช้ข้อมูลอ้างอิงได้
Edge สําหรับระบบคลาวด์
หากต้องการเปลี่ยนโฮสต์เสมือนให้ใช้การอ้างอิงถึงคีย์สโตร์ คุณต้องติดต่อทีมสนับสนุนของ Apigee Edge
Edge สําหรับ Private Cloud
วิธีแปลงโฮสต์เสมือนให้ใช้ข้อมูลอ้างอิง
- อัปเดตโฮสต์เสมือนให้ใช้ข้อมูลอ้างอิง
- รีสตาร์ทเราเตอร์
เกี่ยวกับการใช้ใบรับรองและคีย์ช่วงทดลองใช้ฟรีของ Apigee
หากมีบัญชี Edge for Cloud แบบชําระเงินแต่ยังไม่มีใบรับรองและคีย์ TLS คุณสามารถสร้างโฮสต์เสมือนที่ใช้ใบรับรองและคีย์ช่วงทดลองใช้ฟรีของ Apigee ได้ ซึ่งหมายความว่าคุณจะสร้างโฮสต์เสมือนได้โดยไม่ต้องสร้างคีย์สโตร์ก่อน
ออบเจ็กต์ XML ที่กําหนดโฮสต์เสมือนโดยใช้ใบรับรองและคีย์ช่วงทดลองใช้ฟรีของ Apigee จะละเว้นองค์ประกอบ <KeyStore>
และ <KeyAlias>
แล้วแทนที่ด้วยองค์ประกอบ <UseBuiltInFreeTrialCert>
ดังที่แสดงด้านล่าง
<VirtualHost name="myTLSVHost"> <HostAliases> <HostAlias>myapi.apigee.net</HostAlias> </HostAliases> <Port>443</Port> <SSLInfo> <Enabled>true</Enabled> <ClientAuthEnabled>false</ClientAuthEnabled> </SSLInfo> <UseBuiltInFreeTrialCert>true</UseBuiltInFreeTrialCert> </VirtualHost>
หากใช้ TLS แบบ 2 ทาง คุณยังคงต้องตั้งค่าองค์ประกอบ <ClientAuthEnabled>
เป็น true
และระบุที่เก็บข้อมูลที่เชื่อถือโดยใช้การอ้างอิงกับองค์ประกอบ <TrustStore>
ดูข้อมูลเพิ่มเติมได้ที่การกำหนดค่าโฮสต์เสมือนสำหรับระบบคลาวด์
เกี่ยวกับการกำหนดค่า TLS
ปัจจัยหลัก 2 ประการที่กําหนดวิธีกําหนดค่า TLS มีดังนี้
- คุณเป็นลูกค้า Edge Cloud หรือ Private Cloud ใช่ไหม
- คุณจะอัปเดตใบรับรองที่หมดอายุหรือกำลังจะหมดอายุอย่างไร
ตัวเลือกการกำหนดค่าระบบคลาวด์และ Private Cloud
ตารางต่อไปนี้แสดงตัวเลือกการกำหนดค่าต่างๆ สำหรับลูกค้าที่ใช้ระบบคลาวด์และระบบคลาวด์ส่วนตัว
Private Cloud | Cloud | |
---|---|---|
โฮสต์เสมือน | ควบคุมได้เต็มรูปแบบ | การควบคุมอย่างเต็มรูปแบบสำหรับบัญชีแบบชำระเงินเท่านั้น |
ปลายทาง/เซิร์ฟเวอร์เป้าหมาย | ควบคุมได้เต็มรูปแบบ | ควบคุมได้เต็มรูปแบบ |
ลูกค้าที่ใช้ระบบคลาวด์ส่วนตัวจะควบคุมการกำหนดค่าทั้งโฮสต์เสมือนและปลายทาง/เซิร์ฟเวอร์เป้าหมายได้อย่างเต็มที่ การควบคุมดังกล่าวรวมถึงความสามารถในการสร้างและลบโฮสต์เสมือน รวมถึงตั้งค่าพร็อพเพอร์ตี้ทั้งหมดในโฮสต์เสมือน
ลูกค้า Cloud ทุกคน ทั้งแบบชำระเงินและแบบทดลองใช้จะควบคุมการกำหนดค่าปลายทาง/เซิร์ฟเวอร์เป้าหมายได้อย่างเต็มที่ นอกจากนี้ ลูกค้า Cloud แบบชําระเงินจะควบคุมโฮสต์เสมือน รวมถึงพร็อพเพอร์ตี้ TLS ได้อย่างสมบูรณ์
การจัดการใบรับรองที่หมดอายุ
หากใบรับรอง TLS หมดอายุ หรือหากการกําหนดค่าระบบมีการเปลี่ยนแปลงจนใบรับรองใช้งานไม่ได้แล้ว คุณจะต้องอัปเดตใบรับรอง เมื่อกำหนดค่า TLS สำหรับโฮสต์เสมือนหรือปลายทาง/เซิร์ฟเวอร์เป้าหมาย คุณควรตัดสินใจว่าจะทำการอัปเดตอย่างไรก่อนที่จะทำการกำหนดค่า
เมื่อใบรับรองหมดอายุ
ใน Edge คุณจะจัดเก็บใบรับรองได้ 2 ที่ดังนี้
- คีย์สโตร์ - มีใบรับรอง TLS และคีย์ส่วนตัวที่ใช้ระบุเอนทิตีระหว่างการจับมือ TLS
- Truststore - มีใบรับรองที่เชื่อถือได้ในไคลเอ็นต์ TLS ซึ่งใช้ในการตรวจสอบใบรับรองของเซิร์ฟเวอร์ TLS ที่แสดงต่อไคลเอ็นต์ โดยปกติแล้วใบรับรองเหล่านี้จะเป็นใบรับรองที่ลงนามด้วยตนเอง ใบรับรองที่ลงนามโดย CA ที่เชื่อถือ หรือใบรับรองที่ใช้เป็นส่วนหนึ่งของ TLS แบบ 2 ทาง
เมื่อใบรับรองในคีย์สโตร์หมดอายุและคุณใช้การอ้างอิงถึงคีย์สโตร์ คุณจะอัปโหลดใบรับรองใหม่ไปยังคีย์สโตร์ไม่ได้ แต่ให้ทำดังนี้
- สร้างคีย์สโตร์ใหม่
- อัปโหลดใบรับรองใหม่ไปยังคีย์สโตร์ใหม่โดยใช้ชื่อแทนเดียวกันกับในคีย์สโตร์เดิม
- อัปเดตข้อมูลอ้างอิงในโฮสต์เสมือนหรือเซิร์ฟเวอร์เป้าหมาย/ปลายทางเป้าหมายเพื่อใช้คีย์สโตร์ใหม่
เมื่อใบรับรองใน Truststore หมดอายุและคุณใช้ข้อมูลอ้างอิงถึง Truststore คุณจะทำสิ่งต่อไปนี้ได้
- สร้างคลังใบรับรองใหม่
- อัปโหลดใบรับรองใหม่ไปยังที่เก็บข้อมูลที่เชื่อถือใหม่ ชื่ออีเมลแทนไม่สำคัญสำหรับที่เก็บข้อมูลเชื่อถือ หมายเหตุ: หากใบรับรองเป็นส่วนหนึ่งของเชน คุณจะต้องสร้างไฟล์เดียวที่มีใบรับรองทั้งหมดและอัปโหลดไฟล์นั้นไปยังอีเมลแทนที่เดียว หรืออัปโหลดใบรับรองทั้งหมดในเชนแยกต่างหากไปยังที่เก็บข้อมูลที่เชื่อถือโดยใช้อีเมลแทนที่แตกต่างกันสำหรับใบรับรองแต่ละรายการ
- อัปเดตข้อมูลอ้างอิงในโฮสต์เสมือนหรือเซิร์ฟเวอร์เป้าหมาย/ปลายทางเป้าหมายเพื่อใช้ Truststore ใหม่
สรุปวิธีการอัปเดตใบรับรองที่หมดอายุ
วิธีที่ใช้ในการระบุชื่อคีย์สโตร์และทรัสต์สโตร์ในโฮสต์เสมือนหรือปลายทาง/เซิร์ฟเวอร์เป้าหมายจะเป็นตัวกำหนดวิธีอัปเดตใบรับรอง คุณสามารถใช้สิ่งต่อไปนี้
- ข้อมูลอ้างอิง
- ชื่อโดยตรง
- ตัวแปรของโฟลว์
แต่ละวิธีเหล่านี้ส่งผลต่อกระบวนการอัปเดตแตกต่างกัน ดังที่อธิบายไว้ในตารางต่อไปนี้ ดังที่คุณเห็น ข้อมูลอ้างอิงมีความยืดหยุ่นมากที่สุดสำหรับทั้งลูกค้าระบบคลาวด์และ Private Cloud
ประเภทการกําหนดค่า | วิธีอัปเดต/แทนที่ใบรับรอง | Private Cloud | Cloud |
---|---|---|---|
ข้อมูลอ้างอิง (แนะนำ) |
สำหรับคีย์สโตร์ ให้สร้างคีย์สโตร์ใหม่ที่มีชื่อใหม่และชื่อแทนที่มีชื่อเดียวกันกับชื่อแทนเดิม
สําหรับที่เก็บข้อมูลเชื่อถือ ให้สร้างที่เก็บข้อมูลเชื่อถือที่มีชื่อใหม่ |
อัปเดตการอ้างอิงไปยังคีย์สโตร์หรือคลังความน่าเชื่อถือ
คุณไม่จำเป็นต้องรีสตาร์ทเราเตอร์หรือโปรแกรมประมวลผลข้อความ |
อัปเดตการอ้างอิงไปยังคีย์สโตร์หรือคลังความน่าเชื่อถือ
คุณไม่จำเป็นต้องติดต่อทีมสนับสนุนของ Apigee |
ตัวแปรของขั้นตอน (ปลายทางเป้าหมายเท่านั้น) |
สำหรับคีย์สโตร์ ให้สร้างคีย์สโตร์ใหม่โดยใช้ชื่อใหม่และชื่อแทนที่มีชื่อเดียวกันหรือชื่อใหม่
สําหรับที่เก็บข้อมูลเชื่อถือ ให้สร้างที่เก็บข้อมูลเชื่อถือที่มีชื่อใหม่ |
ส่งตัวแปรขั้นตอนที่อัปเดตแล้วในคำขอแต่ละรายการพร้อมชื่อของคีย์สโตร์ ชื่อแทน หรือที่เก็บข้อมูลที่เชื่อถือใหม่
คุณไม่จำเป็นต้องรีสตาร์ทเราเตอร์หรือโปรแกรมประมวลผลข้อความ |
ส่งตัวแปรขั้นตอนที่อัปเดตแล้วในคำขอแต่ละรายการพร้อมชื่อของคีย์สโตร์ ชื่อแทน หรือที่เก็บข้อมูลที่เชื่อถือใหม่
คุณไม่จำเป็นต้องติดต่อทีมสนับสนุนของ Apigee |
โดยตรง | สร้างคีย์สโตร์ ชื่อแทน และคลังความน่าเชื่อถือใหม่ |
อัปเดตโฮสต์เสมือนและรีสตาร์ทเราเตอร์
หากปลายทาง/เซิร์ฟเวอร์เป้าหมายใช้ที่เก็บข้อมูลเชื่อถือ ให้ติดตั้งใช้งานพร็อกซีอีกครั้ง |
สําหรับโฮสต์เสมือน ให้ติดต่อทีมสนับสนุนของ Apigee Edge เพื่อรีสตาร์ทเราเตอร์
หากปลายทาง/เซิร์ฟเวอร์เป้าหมายใช้ที่เก็บข้อมูลเชื่อถือ ให้ติดตั้งใช้งานพร็อกซีอีกครั้ง |
โดยตรง | ลบคีย์สโตร์หรือคลังความน่าเชื่อถือแล้วสร้างใหม่โดยใช้ชื่อเดิม |
ไม่ต้องอัปเดตโฮสต์เสมือน ไม่ต้องรีสตาร์ทเราเตอร์ อย่างไรก็ตาม คำขอ API จะดำเนินการไม่สำเร็จจนกว่าจะตั้งค่าคีย์สโตร์และอีเมลแทนใหม่
หากใช้คีย์สโตร์สำหรับ TLS แบบ 2 ทางระหว่าง Edge กับบริการแบ็กเอนด์ ให้รีสตาร์ทโปรแกรมประมวลผลข้อความ |
ไม่ต้องอัปเดตโฮสต์เสมือน อย่างไรก็ตาม คำขอ API จะดำเนินการไม่สำเร็จจนกว่าจะตั้งค่าคีย์สโตร์และอีเมลแทนใหม่
หากใช้คีย์สโตร์สำหรับ TLS แบบ 2 ทางระหว่าง Edge กับบริการแบ็กเอนด์ ให้ติดต่อทีมสนับสนุนของ Apigee Edge เพื่อรีสตาร์ทโปรแกรมประมวลผลข้อความ |
โดยตรง | สําหรับที่เก็บข้อมูลเชื่อถือเท่านั้น ให้อัปโหลดใบรับรองใหม่ไปยังที่เก็บข้อมูลเชื่อถือ |
หากโฮสต์เสมือนใช้ที่เก็บข้อมูลเชื่อถือ ให้รีสตาร์ทเราเตอร์
หากปลายทาง/เซิร์ฟเวอร์เป้าหมายใช้ที่เก็บข้อมูลเชื่อถือ ให้รีสตาร์ทโปรแกรมประมวลผลข้อความ |
สําหรับโฮสต์เสมือน ให้ติดต่อทีมสนับสนุนของ Apigee Edge เพื่อรีสตาร์ทเราเตอร์ Edge
หากปลายทาง/เซิร์ฟเวอร์ปลายทางใช้ที่เก็บข้อมูลเชื่อถือ ให้ติดต่อทีมสนับสนุนของ Apigee Edge เพื่อรีสตาร์ทโปรแกรมประมวลผลข้อความ |