กําลังตรวจสอบความถูกต้องของใบรับรอง

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

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

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

  • การใช้คีย์
  • การใช้งานคีย์ที่ขยาย

การใช้คีย์

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

ส่วนขยายการใช้งานคีย์แบบต่างๆ สำหรับใบรับรอง TLS ที่สร้างขึ้นโดยใช้กระบวนการของผู้ออกใบรับรอง (CA) มีดังนี้

  • ลายเซ็นดิจิทัล
  • การป้องกันการปฏิเสธการชำระเงิน
  • การเข้ารหัสคีย์
  • การเข้ารหัสข้อมูล
  • ข้อตกลงสำคัญ
  • การเซ็นใบรับรอง
  • การลงชื่อ CRL
  • เข้ารหัสเท่านั้น
  • ถอดรหัสเท่านั้น

ดูข้อมูลเพิ่มเติมเกี่ยวกับส่วนขยายการใช้งานคีย์เหล่านี้ได้ที่ RFC5280, การใช้คีย์

การใช้งานคีย์ที่ขยาย

ส่วนขยายนี้ระบุวัตถุประสงค์อย่างน้อย 1 ข้อที่สามารถใช้คีย์สาธารณะที่ผ่านการรับรอง นอกเหนือจากหรือแทนที่วัตถุประสงค์พื้นฐานที่ระบุไว้ในส่วนขยายการใช้งานคีย์ โดยทั่วไป ส่วนขยายนี้จะปรากฏเฉพาะในใบรับรองเอนทิตีปลายทางเท่านั้น

ส่วนขยายการใช้งานคีย์เพิ่มเติมทั่วไปบางส่วนมีดังนี้

  • TLS Web server authentication
  • TLS Web client authentication
  • anyExtendedKeyUsage

คีย์แบบขยายอาจเป็นได้ทั้งร้ายแรงหรือไม่สำคัญ

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

หากใบรับรองมีทั้งช่องการใช้งานคีย์และช่องการใช้งานคีย์เพิ่มเติมเป็นส่วนวิกฤต จะต้องประมวลผลทั้ง 2 ช่องแยกกัน และจะใช้ใบรับรองได้ก็ต่อเมื่อเป็นไปตามค่าการใช้งานคีย์ทั้งคู่เท่านั้น อย่างไรก็ตาม หากไม่มีวัตถุประสงค์ที่ตอบสนองต่อค่าการใช้งานคีย์ทั้ง 2 ค่า ก็ต้องไม่ใช้ใบรับรองนั้นเพื่อวัตถุประสงค์ใดๆ

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

Purpose การใช้งานคีย์

(บังคับ)

การใช้งานคีย์เพิ่มเติม

(ไม่บังคับ)

ใบรับรองเอนทิตีเซิร์ฟเวอร์ที่ใช้ในคีย์สโตร์ของโฮสต์เสมือนของ Apigee Edge
  • ลายเซ็นดิจิทัล
  • การเข้ารหัสหรือข้อตกลงหลัก
การตรวจสอบสิทธิ์เว็บเซิร์ฟเวอร์ TLS
ใบรับรองเอนทิตีไคลเอ็นต์ที่ใช้ใน Apigee Edge Truststore ของโฮสต์เสมือน
  • ลายเซ็นดิจิทัลหรือข้อตกลงสำคัญ
การตรวจสอบสิทธิ์ไคลเอ็นต์ของเว็บ TLS
ใบรับรองเอนทิตีเซิร์ฟเวอร์ที่ใช้ใน Apigee Edge ความน่าเชื่อถือของเซิร์ฟเวอร์เป้าหมาย
  • ลายเซ็นดิจิทัล
  • การเข้ารหัสหรือข้อตกลงหลัก
การตรวจสอบสิทธิ์เว็บเซิร์ฟเวอร์ TLS
ใบรับรองเอนทิตีไคลเอ็นต์ที่ใช้ในคีย์สโตร์ของเซิร์ฟเวอร์เป้าหมาย Apigee Edge
  • ลายเซ็นดิจิทัลหรือข้อตกลงสำคัญ
การตรวจสอบสิทธิ์ไคลเอ็นต์ของเว็บ TLS
ใบรับรองระดับกลางและรูท
  • สัญลักษณ์ใบรับรอง
  • สัญลักษณ์รายการยกเลิกใบรับรอง (CRL)

ก่อนเริ่มต้น

ก่อนทําตามขั้นตอนในเอกสารฉบับนี้ โปรดทําความเข้าใจหัวข้อต่อไปนี้

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

ตรวจสอบวัตถุประสงค์ของใบรับรอง

ส่วนนี้จะอธิบายขั้นตอนที่ใช้ตรวจสอบวัตถุประสงค์ของใบรับรอง

  1. เข้าสู่ระบบเซิร์ฟเวอร์ที่มี OpenSSL อยู่
  2. หากต้องการใช้คีย์ของใบรับรอง ให้เรียกใช้คำสั่ง OpenSSL ต่อไปนี้
    openssl x509 -noout -ext keyUsage < certificate
    

    โดย certificate คือชื่อของใบรับรอง

    ตัวอย่างเอาต์พุต

    openssl x509 -noout -ext keyUsage < entity.pem
    X509v3 Key Usage: critical
        Digital Signature, Key Encipherment
    
    openssl x509 -noout -ext keyUsage < intermediate.pem
    X509v3 Key Usage: critical
        Certificate Sign, CRL Sign
    
  3. หากเป็นการใช้งานคีย์ ระบบจะกำหนดให้การใช้งานดังกล่าวมีความสำคัญดังนี้
    openssl x509 -noout -ext keyUsage < intermediate.pem
    X509v3 Key Usage: critical
        Certificate Sign, CRL Sign
    
  4. เรียกใช้คำสั่งต่อไปนี้เพื่อรับการใช้งานคีย์เพิ่มเติมสำหรับใบรับรอง หากไม่ได้กำหนดการใช้งานคีย์แบบขยายว่าสำคัญ แสดงว่านี่เป็นคำแนะนำ ไม่ใช่การบังคับบัญชา
    openssl x509 -noout -ext extendedKeyUsage < certificate
    

    โดย certificate คือชื่อของใบรับรอง

    ตัวอย่างเอาต์พุต

    openssl x509 -noout -ext extendedKeyUsage < entity.pem
    X509v3 Extended Key Usage:
        TLS Web Server Authentication, TLS Web Client Authentication
    
    openssl x509 -noout -ext extendedKeyUsage < intermediate.pem
    X509v3 Extended Key Usage:
        TLS Web Server Authentication, TLS Web Client Authentication