更新私有雲的傳輸層安全標準 (TLS) 憑證

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

指定虛擬主機中 KeyStore 和信任儲存庫名稱的方法 或目標端點/目標伺服器會決定憑證更新的方式。可指定的意圖包括 使用下列指令,瞭解 KeyStore 和信任儲存庫的名稱:

  • 參考資料 - 建議
  • 直接姓名
  • 流程變數

這些方法對憑證更新程序的影響不同,詳情請見 下表。

設定類型 如何更新/替換憑證 如何更新虛擬主機、目標端點/目標伺服器
參考檔案 (建議) 針對 KeyStore,以新名稱和別名

針對信任儲存庫,請以新名稱建立信任存放區。

更新 KeyStore 或信任儲存庫的參照。

不需重新啟動路由器或訊息處理器。

流程變異數 (僅限目標端點) 針對 KeyStore,以新名稱和別名 相同的名稱或新名稱

針對信任儲存庫,請以新名稱建立信任存放區。

針對每個要求,使用新 KeyStore、別名或 信任儲存庫

不需重新啟動路由器或訊息處理器。

直接 建立新的 KeyStore、別名、信任存放區。 更新虛擬主機並重新啟動路由器。

如果目標端點/目標伺服器使用 Truststore,請重新部署 Proxy。

直接 請刪除 KeyStore 或信任儲存庫,並以相同的名稱重新建立金鑰庫。 不必更新虛擬主機,不必重新啟動路由器。不過 API 要求會失敗 直到設定新的 KeyStore 和別名為止

如果 KeyStore 用於 Edge 和後端服務之間的雙向 TLS,請重新啟動 訊息處理器

直接 僅適用於信任儲存庫,請將新的憑證上傳至信任存放區。 如果虛擬主機使用信任存放區,請重新啟動路由器。

如果目標端點/目標伺服器使用 Truststore,請重新啟動訊息 處理器:

在 更新

更新前,請先使用下列 openssl 指令測試目前的憑證 它:

echo | openssl s_client -servername hostAlias -connect hostAlias.apigee.net:443 2>/dev/null | openssl x509 -noout -dates -subject

其中 hostAlias 是虛擬主機或 IP 位址的主機別名。 例如:

echo | openssl s_client -servername api.myCompany.com -connect api.myCompany.com:443 2>/dev/null | openssl x509 -noout -dates -subject

輸出內容應如下所示:

notBefore=Dec 30 22:11:38 2015 GMT
notAfter=Dec 30 22:11:38 2016 GMT
subject= /OU=Domain Control Validated/CN=*.apigee.net

更新憑證後,請使用相同的指令進行測試。

更新 KeyStore 中的 TLS 憑證

針對 Edge 的地端部署部署:

  1. 建立新的 KeyStore,並上傳憑證和金鑰,如: Keystores 和 Truststore。 在新 KeyStore 中,請務必使用相同名稱的金鑰別名 現有金鑰儲存庫

    注意:您可以刪除目前的 KeyStore,並使用相同的金鑰庫建立新金鑰 名稱和別名不必重新啟動路由器。不過,在新的 KeyStore 前,API 要求會失敗 並設定別名。
  2. 傳入連線使用的虛擬主機,代表 API 要求 導入邊緣:
    1. 如果您的虛擬主機使用 KeyStore 的參照,請將參照更新為 如工作 參照
    2. 如果虛擬主機使用 KeyStore 的直接名稱:
      1. 將參照舊 KeyStore 和金鑰別名的所有虛擬主機更新為 並參照新的 KeyStore 和金鑰別名。
      2. 逐一重新啟動路由器。請注意,如果刪除舊 KeyStore 就會用相同名稱建立新的 KeyStore,這樣就不必重新啟動路由器。

        不需要重新部署 Proxy。
  3. 如果是傳出連線使用的目標端點/目標伺服器, 從 Apigee 到後端伺服器
    1. 如果目標端點/目標伺服器使用 KeyStore 的參照,請更新 參考「使用參考資料」一文所述。 不需要重新部署 Proxy。
    2. 如果目標端點/目標伺服器使用流程變數,請更新流量變數。否 必須重新部署 Proxy。
    3. 如果目標端點/目標伺服器使用 KeyStore 的直接名稱:
      1. 針對符合以下條件的 API Proxy,更新目標端點/目標伺服器設定: 參照舊 KeyStore 和金鑰別名,以參照新的 KeyStore 和金鑰 別名。
      2. 針對從 TargetEndpoint 定義參照 KeyStore 的任何 API Proxy, 必須重新部署 Proxy

        如果 TargetEndpoint 參照 TargetServer 定義,且目標伺服器 定義會參照 KeyStore,則不需要重新部署 Proxy。
      3. 若 KeyStore 用於 Edge 和後端服務之間的雙向 TLS,且 您刪除/重新建立了相同名稱的 KeyStore,因此必須重新啟動 Edge 訊息處理器。
  4. 確認新 KeyStore 運作正常後,請刪除舊的金鑰庫 含有過期憑證和金鑰的 KeyStore (如上所述)。

在信任儲存庫中更新 TLS 憑證

如果您使用信任儲存庫的參照,則是指在信任儲存庫中更新憑證的程序 與上述 KeyStore 相同。唯一的差別在於:

  • 將新憑證上傳至新的信任存放區時,別名名稱 信任存放區
  • 如果憑證是鏈結的一部分,您必須建立單一檔案,其中包含所有 建立憑證,然後將檔案上傳至單一別名,或將鏈結中的所有憑證分別上傳至 讓信任存放區為每個憑證使用不同的別名

如果您使用 KeyStore 和信任儲存庫的直接名稱:

  1. 按照 Keystores 和 Truststore。 因此無須刪除舊憑證。
  2. 傳入連線使用的虛擬主機,代表 API 要求 進入 Edge,請逐一重新啟動路由器。
  3. 如果是傳出連線使用的目標端點/目標伺服器, 也就是從 Apigee 到後端伺服器 讓應用程式從可以最快做出回應的位置 回應使用者要求
  4. 確認新的信任存放區運作正常。