將憑證轉換為支援的格式

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

本文說明如何將 TLS 憑證和相關私密金鑰轉換為 PEM 或 PFX (PKCS #12) 格式。

Apigee Edge 僅支援在 KeyStore 和信任存放區中儲存 PEM 或 PFX 格式憑證。 將憑證從任何現有格式轉換為 PEM 或 PFX 格式的步驟,都需要仰賴 OpenSSL 工具包,適用於所有 。

事前準備

使用本文件中的步驟前,請務必先瞭解下列主題:

  • 如果不熟悉 PEM 或 PFX 格式,請參閱 關於 TLS/SSL
  • 如果您不熟悉憑證格式,請參閱 SSL 憑證格式
  • 如果您不熟悉 OpenSSL 程式庫,請參閱 OpenSSL
  • 如要使用本指南中的指令列範例,請安裝或更新至最新版本 OpenSSL 用戶端的版本。

正在將憑證從 DER 格式轉換為 PEM 格式

本節說明如何從 DER 轉換憑證和相關聯的私密金鑰 轉換為 PEM 格式。

  1. 轉移含有完整憑證鏈結的檔案 (certificate.der) 您想轉換成 PEM 格式的相關私密金鑰 (private_key.der) 安裝至使用 scpsftp 或任何安裝 OpenSSL 的電腦 其他公用程式)。

    例如,使用 scp 指令將檔案轉移至 /tmp 安裝在包含 OpenSSL 的伺服器上,如下所示:

    scp certificate.der servername:/tmp
    scp private_key.der servername:/tmp
    

    其中 servername 是包含 OpenSSL 的伺服器名稱。

  2. 登入已安裝 OpenSSL 的裝置。
  3. 從憑證所在的目錄執行下列指令,以完成 將憑證和相關私密金鑰從 DER 格式轉換為 PEM 格式:
    openssl x509 -inform DER -in certificate.der -outform PEM -out certificate.pem
    openssl rsa -inform DER -in private_key.der -outform PEM -out private.key
    
  4. 確認憑證已轉換為 PEM 格式

正在將憑證從 P7B 格式轉換為 PEM 格式

本節說明如何將憑證從 P7B 格式轉換為 PEM 格式。

  1. 轉移含有完整憑證鏈結的檔案 (certificate.p7b) 並指定要轉換為使用 scp 安裝 OpenSSL 的機器。 sftp 或任何其他公用程式。

    例如,使用 scp 指令將檔案轉移至 /tmp 安裝在包含 OpenSSL 的伺服器上,如下所示:

    scp certificate.p7b servername:/tmp
    

    其中 servername 是包含 OpenSSL 的伺服器名稱。

  2. 登入已安裝 OpenSSL 的裝置。
  3. 從憑證所在的目錄執行下列指令,以轉換 從 P7B 格式的憑證改成 PEM 格式:
    openssl pkcs7 -print_certs -in certificate.p7b -out certificate.pem
    
  4. 確認憑證已轉換為 PEM 格式

正在將憑證從 PFX 格式轉換為 PEM 格式

本節說明如何將 TLS 憑證從 PFX 格式轉換為 PEM 格式。

將 PFX 檔案轉換為 PEM 格式時,OpenSSL 放入所有憑證和私密金鑰 整理成單一檔案您必須在文字編輯器中開啟檔案,然後複製每個憑證 和私密金鑰 (包括 BEGIN/END 陳述式) 寫入個別文字檔,並儲存為 certificate.pfxIntermediate.pfx (如適用)、 CACert.pfxprivateKey.key

Apigee 支援 PFX/PKCS #12 格式;不過,PEM 格式適合許多 包括驗證在內

  1. 轉移憑證和私密金鑰 (certificate.pfxIntermediate.pfx CACert.pfxprivateKey.key) 您想將 PEM 格式轉換為使用 scp 安裝 OpenSSL 的機器。 sftp 或任何其他公用程式。

    例如,使用 scp 指令將檔案轉移至 /tmp 安裝在包含 OpenSSL 的伺服器上,如下所示:

    scp certificate.pfx servername:/tmp
    

    其中 servername 是包含 OpenSSL 的伺服器名稱。

  2. 登入已安裝 OpenSSL 的裝置。
  3. 從憑證所在的目錄執行下列指令,以轉換 從 P7B 格式的憑證改成 PEM 格式:
    openssl pkcs12 -in certificate.pfx -out certificate.pem -nodes
    
  4. 確認憑證已轉換為 PEM 格式

正在將憑證從 P7B 格式轉換為 PFX 格式

本節說明如何將 TLS 憑證從 P7B 格式轉換為 PFX 格式。

如要轉換為 PFX 格式,您還需要取得私密金鑰。

  1. 將要轉換為 PFX 的憑證 (certificate.p7b) 轉移至 透過 scpsftp 或任何其他公用程式安裝 OpenSSL 的機器。

    例如,使用 scp 指令將檔案轉移至 /tmp 安裝在包含 OpenSSL 的伺服器上,如下所示:

    scp certificate.p7b servername:/tmp
    scp private_key.key servername:/tmp
    

    其中 servername 是包含 OpenSSL 的伺服器名稱。

  2. 登入已安裝 OpenSSL 的裝置。
  3. 從憑證所在的目錄執行下列指令,以轉換 從 P7B 轉換為 PFX 格式的憑證,並匯出實體和中繼 CA 憑證轉換為不同的檔案:
    openssl pkcs7 -print_certs -in certificate.p7b -out certificate.cer
    
    openssl pkcs12 -export -in certificate.cer -inkey private_key.key -out certificate.pfx -certfile CACert.cer
    

確認憑證為 PEM 格式

本節將說明如何驗證憑證是否為 PEM 格式。

  1. 如要查看 PEM 格式的憑證,請執行下列指令:
    openssl x509 -in certificate.pem -text -noout
    
  2. 如果您可以使用人類可讀的格式查看憑證內容,但沒有 如果出現任何錯誤,您就可以確認憑證採用 PEM 格式。
  3. 如果是任何其他格式的憑證,您會看到以下錯誤訊息:
    unable to load certificate
    12626:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:647:Expecting: TRUSTED CERTIFICATE View DER encoded Certificate