คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่
เอกสารประกอบของ Apigee X info
เอกสารนี้มีภาพรวมเกี่ยวกับวิธีกำหนดค่า TLS ใน Edge สำหรับ 2 ส่วนงานต่อไปนี้
- การเข้าถึงพร็อกซี API ของไคลเอ็นต์ API ใช้โฮสต์เสมือน ใน Edge Router เพื่อกำหนดค่า 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 ทางเดียวระหว่าง Edge กับไคลเอ็นต์ API หรือระหว่าง Edge กับแบ็กเอนด์เป้าหมาย สำหรับโฮสต์เสมือน คุณต้องกำหนดคีย์สโตร์ที่มีใบรับรองและคีย์ส่วนตัว คีย์ |
| <ClientAuthEnabled> |
เปิดใช้ TLS 2 ทางระหว่าง Edge กับไคลเอ็นต์ API หรือระหว่าง Edge กับแบ็กเอนด์เป้าหมาย โดยปกติการเปิดใช้ TLS 2 ทางกำหนดให้คุณต้องตั้งค่า Trust Store ใน Edge |
| <KeyStore> | คีย์สโตร์ |
| <KeyAlias> | ชื่อแทนที่ระบุเมื่อคุณอัปโหลดใบรับรองและคีย์ส่วนตัวไปยังคีย์สโตร์ |
| <TrustStore> | Trust Store |
| <IgnoreValidationErrors> | หากเป็น "จริง" Edge จะไม่สนใจข้อผิดพลาดของใบรับรอง TLS ใช้ได้เมื่อกำหนดค่า TLS สำหรับ เซิร์ฟเวอร์เป้าหมายและปลายทางเป้าหมาย รวมถึงเมื่อกำหนดค่าโฮสต์เสมือนที่ใช้ TLS 2 ทาง ค่าเริ่มต้นคือ "เท็จ" เมื่อใช้กับปลายทางเป้าหมาย/เซิร์ฟเวอร์เป้าหมาย หากระบบแบ็กเอนด์ใช้ SNI และแสดงผลใบรับรองที่มีชื่อที่แยกความแตกต่าง (DN) ของ Subject ซึ่งไม่ตรงกับชื่อโฮสต์ คุณจะไม่มีวิธีละเว้นข้อผิดพลาดและการเชื่อมต่อจะล้มเหลว |
| <CommonName> | หากระบุไว้ ค่าที่จะใช้ตรวจสอบชื่อสามัญของใบรับรองเป้าหมาย ค่านี้ใช้ได้กับการกำหนดค่า TargetEndpoint และ TargetServer เท่านั้น และใช้ไม่ได้กับการกำหนดค่า VirtualHost โดยค่าเริ่มต้น ระบบจะจับคู่ค่าที่ระบุกับชื่อสามัญของใบรับรองเป้าหมาย ทุกประการ
เช่น การใช้ Apigee สามารถจับคู่กับไวลด์การ์ดได้โดยใช้แอตทริบิวต์ เช่น ระบบจะจับคู่และตรวจสอบชื่อสามัญที่ระบุเป็น <CommonName wildcardMatch="true">*.myhost.com</CommonName> |
เกี่ยวกับการตั้งค่าองค์ประกอบ <KeyStore> และ <TrustStore>
ในตัวอย่างโฮสต์เสมือนด้านบน ระบบจะระบุคีย์สโตร์และ Trust Store โดยใช้ ข้อมูลอ้างอิง ในรูปแบบต่อไปนี้
<KeyStore>ref://myKeystoreRef</KeyStore> <TrustStore>ref://myTruststoreRef</TrustStore>
Apigee ขอแนะนำให้คุณใช้ข้อมูลอ้างอิงไปยังคีย์สโตร์และ Trust Store เสมอ ข้อมูลอ้างอิงคือตัวแปรที่มีชื่อของคีย์สโตร์หรือ Trust Store แทนที่จะระบุชื่อคีย์สโตร์โดยตรง ในตัวอย่างนี้
myKeystoreRefคือข้อมูลอ้างอิงที่มีชื่อของ คีย์สโตร์ ในตัวอย่างนี้ ชื่อของคีย์สโตร์คือ myKeystoremyTruststoreRefคือข้อมูลอ้างอิงที่มีชื่อของ Trust Store ในตัวอย่างนี้ ชื่อของ Trust Store คือ myTruststore
เมื่อใบรับรองหมดอายุ คุณต้องอัปเดตโฮสต์เสมือนหรือปลายทางเป้าหมาย/เซิร์ฟเวอร์เป้าหมายเพื่อ ระบุคีย์สโตร์หรือ Trust Store ที่มีใบรับรองใหม่ ข้อดีของข้อมูลอ้างอิงคือ คุณสามารถแก้ไขค่าของข้อมูลอ้างอิงเพื่อเปลี่ยนคีย์สโตร์หรือ Trust Store ได้โดยไม่ต้อง แก้ไขโฮสต์เสมือนหรือปลายทางเป้าหมาย/เซิร์ฟเวอร์เป้าหมายเอง:
- สำหรับลูกค้า Cloud: การเปลี่ยนค่าของข้อมูลอ้างอิงไม่จำเป็นต้องให้ คุณติดต่อทีมสนับสนุนของ Apigee Edge
- สำหรับลูกค้า Private Cloud: การเปลี่ยนค่าของข้อมูลอ้างอิงไม่จำเป็นต้อง ให้คุณรีสตาร์ทคอมโพเนนต์ Edge เช่น เราเตอร์และ Message Processor
หรือคุณจะระบุชื่อคีย์สโตร์และชื่อ Trust Store โดยตรงก็ได้
<KeyStore>myKeystore</KeyStore> <TrustStore>myTruststore</TrustStore>
หากคุณระบุชื่อคีย์สโตร์หรือ Trust Store โดยตรง ลูกค้า Cloud จะต้อง ติดต่อ ทีมสนับสนุนของ Apigee Edge และลูกค้า Private Cloud จะต้องรีสตาร์ทคอมโพเนนต์ Edge บางรายการเพื่ออัปเดตใบรับรอง
ตัวเลือกที่ 3 สำหรับปลายทางเป้าหมาย/เซิร์ฟเวอร์เป้าหมายเท่านั้นคือการใช้ตัวแปรโฟลว์
<KeyStore>{ssl.keystore}</KeyStore>
<TrustStore>{ssl.truststore}</TrustStore> ตัวแปรโฟลว์ใช้ได้กับปลายทางเป้าหมาย/เซิร์ฟเวอร์เป้าหมายและช่วยให้คุณอัปเดตคีย์สโตร์หรือ Trust Store ได้เหมือนข้อมูลอ้างอิง อย่างไรก็ตาม ตัวแปรโฟลว์ใช้ไม่ได้กับโฮสต์เสมือน และกำหนดให้คุณต้องส่ง ข้อมูลเกี่ยวกับคีย์สโตร์ ชื่อแทน และ Trust Store ในทุกคำขอ
ข้อจำกัดในการใช้ ข้อมูลอ้างอิงไปยังคีย์สโตร์และ Trust Store
ลูกค้า Cloud แบบชำระเงินและลูกค้า Private Cloud ทั้งหมดที่กำหนดค่า TLS ต้องคำนึงถึง ข้อจำกัดต่อไปนี้เมื่อใช้ข้อมูลอ้างอิงไปยังคีย์สโตร์และ Trust Store
- คุณจะใช้ข้อมูลอ้างอิงคีย์สโตร์และ Trust Store ในโฮสต์เสมือนได้ก็ต่อเมื่อคุณยุติ TLS ใน Apigee Router
- หากคุณมี Load Balancer อยู่หน้า Apigee Router และคุณยุติ TLS ใน Load Balancer คุณจะใช้ข้อมูลอ้างอิงคีย์สโตร์และ Trust Store ในโฮสต์เสมือนไม่ได้
กรณีที่โฮสต์เสมือนที่มีอยู่ใช้ชื่อคีย์สโตร์หรือ Trust Store แบบตามตัวอักษร
โฮสต์เสมือนที่มีอยู่ใน Edge อาจไม่ได้กำหนดค่าให้ใช้ข้อมูลอ้างอิงสำหรับคีย์สโตร์และ Trust Store ในกรณีนี้ คุณสามารถอัปเดตโฮสต์เสมือนให้ใช้ข้อมูลอ้างอิงได้
Edge for the Cloud
หากต้องการเปลี่ยนโฮสต์เสมือนให้ใช้ข้อมูลอ้างอิงไปยังคีย์สโตร์ คุณต้องติดต่อทีมสนับสนุนของ Apigee Edge
Edge for the 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 และระบุ Trust Store โดยใช้ ข้อมูลอ้างอิง กับองค์ประกอบ <TrustStore>
ดูข้อมูลเพิ่มเติมได้ที่การกำหนดค่าโฮสต์เสมือนสำหรับ Cloud
เกี่ยวกับการกำหนดค่า TLS
ปัจจัยหลัก 2 ข้อที่กำหนดวิธีที่คุณกำหนดค่า TLS ได้แก่
- คุณเป็นลูกค้า Edge Cloud หรือ Private Cloud
- คุณจะอัปเดตใบรับรองที่หมดอายุหรือกำลังจะหมดอายุอย่างไร
ตัวเลือกการกำหนดค่า Cloud และ Private Cloud options
ตารางต่อไปนี้แสดงตัวเลือกการกำหนดค่าต่างๆ สำหรับลูกค้า Cloud และ Private Cloud
| Private Cloud | Cloud | |
|---|---|---|
| โฮสต์เสมือน | ควบคุมได้โดยสมบูรณ์ | ควบคุมได้โดยสมบูรณ์สำหรับบัญชีแบบชำระเงินเท่านั้น |
| ปลายทางเป้าหมาย/เซิร์ฟเวอร์เป้าหมาย | ควบคุมได้โดยสมบูรณ์ | ควบคุมได้โดยสมบูรณ์ |
ลูกค้า Private Cloud จะควบคุมการกำหนดค่าทั้งโฮสต์เสมือนและ ปลายทางเป้าหมาย/เซิร์ฟเวอร์เป้าหมายได้โดยสมบูรณ์ การควบคุมดังกล่าวรวมถึงความสามารถในการสร้างและลบโฮสต์เสมือน รวมถึงตั้งค่าพร็อพเพอร์ตี้ทั้งหมดในโฮสต์เสมือน
ลูกค้า Cloud ทั้งแบบชำระเงินและแบบทดลองใช้จะควบคุมการกำหนดค่า ปลายทางเป้าหมาย/เซิร์ฟเวอร์เป้าหมายได้โดยสมบูรณ์ นอกจากนี้ ลูกค้า Cloud แบบชำระเงินยังควบคุม โฮสต์เสมือนได้โดยสมบูรณ์ ซึ่งรวมถึงพร็อพเพอร์ตี้ TLS
การจัดการใบรับรองที่หมดอายุ
หากใบรับรอง TLS หมดอายุ หรือหากการกำหนดค่าระบบมีการเปลี่ยนแปลงจนทำให้ใบรับรอง ใช้ไม่ได้อีกต่อไป คุณจะต้องอัปเดตใบรับรอง เมื่อกำหนดค่า TLS สำหรับ โฮสต์เสมือนหรือปลายทางเป้าหมาย/เซิร์ฟเวอร์เป้าหมาย คุณควรตัดสินใจว่าจะอัปเดตอย่างไรก่อนที่จะทำการกำหนดค่า
สิ่งที่จะเกิดขึ้นเมื่อใบรับรองหมดอายุ
ใน Edge คุณจะจัดเก็บใบรับรองไว้ใน 2 ที่ต่อไปนี้
- คีย์สโตร์ - มีใบรับรอง TLS และคีย์ส่วนตัวที่ใช้ระบุ เอนทิตีระหว่างแฮนด์เชค TLS
- Trust Store - มีใบรับรองที่เชื่อถือได้ในไคลเอ็นต์ TLS ที่ใช้ ตรวจสอบใบรับรองของเซิร์ฟเวอร์ TLS ที่แสดงต่อไคลเอ็นต์ โดยปกติใบรับรองเหล่านี้จะเป็นใบรับรองแบบ Self-signed, ใบรับรองที่ลงชื่อโดย CA ที่เชื่อถือได้ หรือใบรับรองที่ใช้เป็นส่วนหนึ่งของ TLS 2 ทาง
เมื่อใบรับรองในคีย์สโตร์หมดอายุและคุณใช้ข้อมูลอ้างอิงไปยัง คีย์สโตร์ คุณจะอัปโหลดใบรับรองใหม่ไปยังคีย์สโตร์ไม่ได้ แต่คุณต้องทำดังนี้
- สร้างคีย์สโตร์ใหม่
- อัปโหลดใบรับรองใหม่ไปยังคีย์สโตร์ใหม่ โดยใช้ชื่อแทนเดียวกัน กับใน คีย์สโตร์เก่า
- อัปเดตข้อมูลอ้างอิงในโฮสต์เสมือนหรือเซิร์ฟเวอร์เป้าหมาย/ปลายทางเป้าหมายให้ใช้คีย์สโตร์ใหม่
เมื่อใบรับรองใน Trust Store หมดอายุและคุณใช้ข้อมูลอ้างอิงไปยัง Trust Store คุณต้องทำดังนี้
- สร้าง Trust Store ใหม่
- อัปโหลดใบรับรองใหม่ไปยัง Trust Store ใหม่ ชื่อแทนไม่มีผลกับ Trust Store หมายเหตุ: หากใบรับรองเป็นส่วนหนึ่งของเชน คุณต้องสร้างไฟล์เดียว ที่มีใบรับรองทั้งหมดและอัปโหลดไฟล์นั้นไปยังชื่อแทนเดียว หรืออัปโหลดใบรับรองทั้งหมดใน เชนแยกกันไปยัง Trust Store โดยใช้ชื่อแทนที่แตกต่างกันสำหรับใบรับรองแต่ละรายการ
- อัปเดตข้อมูลอ้างอิงในโฮสต์เสมือนหรือเซิร์ฟเวอร์เป้าหมาย/ปลายทางเป้าหมายให้ใช้ Trust Store ใหม่
สรุปวิธีการอัปเดตใบรับรองที่หมดอายุ
วิธีการที่คุณใช้ระบุชื่อคีย์สโตร์และ Trust Store ในโฮสต์เสมือน หรือปลายทางเป้าหมาย/เซิร์ฟเวอร์เป้าหมายจะเป็นตัวกำหนดวิธีที่คุณอัปเดตใบรับรอง โดยคุณสามารถใช้วิธีการต่อไปนี้
- ข้อมูลอ้างอิง
- ชื่อโดยตรง
- ตัวแปรโฟลว์
วิธีการแต่ละวิธีจะมีผลกระทบที่แตกต่างกันต่อกระบวนการอัปเดต ดังที่อธิบายไว้ใน ตารางต่อไปนี้ คุณจะเห็นว่าข้อมูลอ้างอิงมีความยืดหยุ่นมากที่สุดสำหรับลูกค้าทั้ง Cloud และ Private Cloud
| ประเภทการกำหนดค่า | วิธีอัปเดต/แทนที่ใบรับรอง | Private Cloud | Cloud |
|---|---|---|---|
| ข้อมูลอ้างอิง (แนะนำ) |
สำหรับคีย์สโตร์ ให้สร้างคีย์สโตร์ใหม่ด้วยชื่อใหม่ และชื่อแทนที่มี
ชื่อเดียวกัน กับชื่อแทนเก่า
สำหรับ Trust Store ให้สร้าง Trust Store ด้วยชื่อใหม่ |
อัปเดตข้อมูลอ้างอิงไปยังคีย์สโตร์หรือ Trust Store
ไม่จำเป็นต้องรีสตาร์ทเราเตอร์หรือ Message Processor |
อัปเดตข้อมูลอ้างอิงไปยังคีย์สโตร์หรือ Trust Store
ไม่จำเป็นต้องติดต่อทีมสนับสนุนของ Apigee |
| ตัวแปรโฟลว์ (ปลายทางเป้าหมายเท่านั้น) |
สำหรับคีย์สโตร์ ให้สร้างคีย์สโตร์ใหม่ด้วยชื่อใหม่ และชื่อแทนที่มี
ชื่อเดียวกันหรือชื่อใหม่
สำหรับ Trust Store ให้สร้าง Trust Store ด้วยชื่อใหม่ |
ส่งตัวแปรโฟลว์ที่อัปเดตในทุกคำขอพร้อมชื่อคีย์สโตร์ ชื่อแทน หรือ
Trust Store ใหม่
ไม่จำเป็นต้องรีสตาร์ทเราเตอร์หรือ Message Processor |
ส่งตัวแปรโฟลว์ที่อัปเดตในทุกคำขอพร้อมชื่อคีย์สโตร์ ชื่อแทน หรือ
Trust Store ใหม่
ไม่จำเป็นต้องติดต่อทีมสนับสนุนของ Apigee |
| โดยตรง | สร้างคีย์สโตร์ ชื่อแทน และ Trust Store ใหม่ |
อัปเดตโฮสต์เสมือนและรีสตาร์ทเราเตอร์
หากปลายทางเป้าหมาย/เซิร์ฟเวอร์เป้าหมายใช้ Trust Store ให้ปรับใช้พร็อกซีอีกครั้ง |
สำหรับโฮสต์เสมือน โปรดติดต่อ ทีมสนับสนุนของ Apigee Edge เพื่อรีสตาร์ทเราเตอร์
หากปลายทางเป้าหมาย/เซิร์ฟเวอร์เป้าหมายใช้ Trust Store ให้ปรับใช้พร็อกซีอีกครั้ง |
| โดยตรง | ลบคีย์สโตร์หรือ Trust Store แล้วสร้างใหม่ด้วยชื่อเดิม |
ไม่จำเป็นต้องอัปเดตโฮสต์เสมือน ไม่จำเป็นต้องรีสตาร์ทเราเตอร์ อย่างไรก็ตาม คำขอ API จะล้มเหลว
จนกว่าจะมีการตั้งค่าคีย์สโตร์และชื่อแทนใหม่
หากใช้คีย์สโตร์สำหรับ TLS 2 ทางระหว่าง Edge กับบริการแบ็กเอนด์ ให้รีสตาร์ท Message Processor |
ไม่จำเป็นต้องอัปเดตโฮสต์เสมือน อย่างไรก็ตาม คำขอ API จะล้มเหลวจนกว่าจะมีการตั้งค่าคีย์สโตร์และ
ชื่อแทนใหม่
หากใช้คีย์สโตร์สำหรับ TLS 2 ทางระหว่าง Edge กับบริการแบ็กเอนด์ โปรดติดต่อ ทีมสนับสนุนของ Apigee Edge เพื่อรีสตาร์ท Message Processor |
| โดยตรง | สำหรับ Trust Store เท่านั้น ให้อัปโหลดใบรับรองใหม่ไปยัง Trust Store |
หากโฮสต์เสมือนใช้ Trust Store ให้รีสตาร์ทเราเตอร์
หากปลายทางเป้าหมาย/เซิร์ฟเวอร์เป้าหมายใช้ Trust Store ให้รีสตาร์ท Message Processor |
สำหรับโฮสต์เสมือน โปรดติดต่อ ทีมสนับสนุนของ Apigee Edge เพื่อรีสตาร์ท Edge Router
หากปลายทางเป้าหมาย/เซิร์ฟเวอร์เป้าหมายใช้ Trust Store โปรดติดต่อ ทีมสนับสนุนของ Apigee Edge เพื่อรีสตาร์ท Message Processor |