驗證憑證用途

查看 Apigee Edge 說明文件。
前往 Apigee X說明文件
資訊

這份文件說明如何在上傳憑證前驗證憑證的用途 新增至 KeyStore 或信任儲存庫這項程序仰賴 OpenSSL 進行驗證,且適用 。

TLS 憑證通常是由一或多項用途所核發。 這通常是用來限制公開金鑰包含的作業數量 可以使用憑證憑證用途如下: 憑證擴充欄位:

  • 金鑰使用方式
  • 擴充金鑰使用方式

金鑰使用方式

金鑰用途擴充功能會定義用途 (例如加密、簽名或 憑證中的金鑰簽署)。如果公開金鑰是用於 實體驗證,則憑證擴充資料應具有金鑰使用方式 數位簽章

透過 憑證授權單位 (CA) 的程序如下:

  • 數位簽名
  • 不可否認性
  • 金鑰編密
  • 資料加密
  • 金鑰協議
  • 憑證簽署
  • CRL 簽署
  • 僅限編碼器
  • 僅限解密

如要進一步瞭解這些重要使用情形的擴充功能,請參閱 RFC5280、金鑰使用方式

擴充金鑰使用方式

這項擴充資料指出可用於認證公開金鑰的一或多項用途。 ,配合或取代金鑰使用擴充內容所述的基本用途。於 一般而言,這項擴充功能只會顯示在終端實體憑證中。

以下列舉幾個常見的擴充金鑰用途擴充功能:

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

擴充金鑰可以「重大」或「非重要」

  • 如果擴充功能為「重大」,則憑證只能用於指定的 或目的。如果該憑證用於其他用途,則違反了 政策。
  • 如果擴充功能沒有重大影響,表示擴充功能的原意或用途 金鑰為參考資訊,不代表 CA 會限制使用 用途不過,使用憑證的應用程式可能會要求 才能接受憑證。

如果憑證同時包含金鑰用途欄位和擴充金鑰用途欄位 ( 那麼這兩個欄位都必須分開處理,而憑證可以使用 是用於「同時」符合「兩個」金鑰用途值的用途。不過,如果沒有 可同時符合兩個金鑰使用值的用途,則不得將該憑證用於 用於任何目的

購買憑證時,請確定已定義憑證的正確使用方式以滿足需求 用戶端或伺服器憑證的需求,若沒有 TLS 握手將會失敗。

目的 金鑰使用方式

(必要)

擴充金鑰使用方式

(選填)

在 Apigee Edge 虛擬主機金鑰庫中使用的伺服器實體憑證
  • 數位簽名
  • 金鑰加密或金鑰協議
TLS 網路伺服器驗證
在 Apigee Edge 虛擬主機信任存放區中使用的用戶端實體憑證
  • 數位簽章或金鑰協議
TLS Web 用戶端驗證
在 Apigee Edge 目標伺服器的信任儲存庫中使用的伺服器實體憑證
  • 數位簽名
  • 金鑰加密或金鑰協議
TLS 網路伺服器驗證
在 Apigee Edge 目標伺服器的 KeyStore 中使用的用戶端實體憑證
  • 數位簽章或金鑰協議
TLS Web 用戶端驗證
中繼憑證和根憑證
  • 憑證簽署
  • 憑證撤銷清單 (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
,瞭解如何調查及移除這項存取權。