更新 Cloud 的傳輸層安全標準 (TLS) 憑證

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

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

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

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

設定類型 如何更新/替換憑證 如何更新虛擬主機、目標端點/目標伺服器
參考檔案 (建議)

針對 KeyStore,以新名稱和別名

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

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

無須與 Apigee Edge 支援團隊聯絡。

流程變異數 (僅限目標端點)

針對 KeyStore,以新名稱和別名 相同的名稱或新名稱

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

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

無須與 Apigee Edge 支援團隊聯絡。

直接 建立新的 KeyStore、別名、信任存放區。

如果是虛擬主機,請Apigee Edge 支援團隊聯絡,重新啟動路由器。

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

直接 請刪除 KeyStore 或信任儲存庫,並以相同的名稱重新建立金鑰庫。

不必更新虛擬主機。不過,到新的 KeyStore 和 別名已設定完成。

如果 KeyStore 用於 Edge 和後端服務之間的雙向 TLS, 請與 Apigee Edge 支援團隊聯絡,以重新啟動訊息處理器。

直接 僅適用於信任儲存庫,請將新的憑證上傳至信任存放區。

如果是虛擬主機,請Apigee Edge 支援團隊聯絡,以便重新啟動 Edge 路由器。

如果目標端點/目標伺服器使用信任儲存庫,請Apigee Edge 支援團隊聯絡,重新啟動訊息處理器。

在 更新

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

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

其中 HOSTNAME 是主機別名,ORG-ENV 則是機構; 環境。例如:

echo | openssl s_client -servername example.com -connect myOrg-prod.apigee.net: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 的方式,並 信任儲存庫

  1. 前往 https://enterprise.apigee.com 登入 Edge 管理 UI。
  2. 在 Edge 管理 UI 選單中,選取貴機構的名稱。
  3. 虛擬主機:決定虛擬主機如何指定 KeyStore 建立信任存放區
    1. 視您的 Edge UI 版本而定:
      1. 如果您使用傳統版 Edge UI:請選取 API> 環境設定。
      2. 如果使用的是新版 Edge UI:請選取 Admin > 環境。
    2. 選取「Virtual Hosts」分頁標籤。
    3. 針對您要更新的特定虛擬主機,選取「顯示」 按鈕,顯示其屬性。顯示畫麵包含下列屬性:
      1. Key Store:目前 KeyStore 的名稱,通常指定 做為 ref://mykeystoreref 中的參照。

        或者,您也可以直接使用以下格式: myKeystoreName 或流程變數指定,格式為 {ssl.keystore}
      2. 金鑰別名:這個屬性的值是 KeyStore。新的 KeyStore 必須建立具有相同別名的別名 名稱
      3. Trust Store:目前信任存放區的名稱 (如果有的話),通常 是在 ref://mytruststoreref 中指定為參照。

        或者,您也可以直接使用以下格式: myTruststoreName 或流程變數指定,格式為 {ssl.truststorestore}
  4. 針對目標端點/目標伺服器,判斷目標端點的方式 會指定 KeyStore 和信任儲存庫:
    1. 在 Edge 管理 UI 選單中,選取「API」
    2. 選取 API Proxy 名稱。
    3. 選取「開發」分頁標籤。
    4. 在「目標端點」下方,選取「預設」
    5. 在程式碼區域中,會出現 TargetEndpoint 定義。查看 <SSLInfo> 元素,查看 KeyStore/truststore 的定義方式。

      注意:如果目標端點使用目標伺服器,則 XML 的 目標端點的定義如下所示,其中 <LoadBalancer> 標記會指定 API 使用的目標伺服器 Proxy 上。
      <TargetEndpoint name="default">
        …
        <HTTPTargetConnection>
          <LoadBalancer>
            <Server name="target1" />
            <Server name="target2" />
          </LoadBalancer>
          <Path>/test</Path>
        </HTTPTargetConnection>
          …
      </TargetEndpoint>
      檢查目標伺服器定義中的 <SSLInfo> 元素,判斷如何判斷 KeyStore/truststore 已完成定義

更新 KeyStore 中的 TLS 憑證

KeyStore 中的憑證到期後,您就無法將新憑證上傳至 KeyStore。而是 請建立新的 KeyStore 並上傳憑證,然後更新虛擬主機或目標伺服器/目標 即可使用新的 KeyStore

一般而言,您可以在目前的憑證到期前建立新的 KeyStore,然後更新 讓虛擬主機或目標端點使用新的 KeyStore,以便持續 因憑證過期而中斷服務要求。隨後即可刪除舊的 確認新的 KeyStore 正常運作後,KeyStore。

針對雲端式 Edge 部署:

  1. 建立新的 KeyStore,並上傳憑證和金鑰,如所述 使用 Edge UI 建立 KeyStore 和信任儲存庫

    請在新的 KeyStore 中,確認您使用的金鑰別名名稱與先前使用 現有金鑰儲存庫

  2. 如果是傳入連線使用的虛擬主機,代表 API 傳送至 Edge:
    1. 如果虛擬主機使用 KeyStore 的參照,請更新參照。
    2. 如果您的虛擬主機使用 KeyStore 的直接名稱,請與 Apigee Edge 支援團隊聯絡。
  3. 如果是傳出連線使用的目標端點/目標伺服器, 從 Apigee 到後端伺服器
    1. 如果目標端點/目標伺服器使用 KeyStore 的參照,請更新 參照。不需要重新部署 Proxy。
    2. 如果目標端點/目標伺服器使用流程變數,請更新流量變數。否 必須重新部署 Proxy。
    3. 如果目標端點/目標伺服器使用 KeyStore 的直接名稱,請更新 目標端點/目標伺服器設定適用於參照舊 Pod 用來參照新的 KeyStore 和金鑰別名的 KeyStore 和金鑰別名。

      接著,您必須重新部署 Proxy。

  4. 確認新 KeyStore 運作正常後,請刪除舊的金鑰庫 含有過期憑證和金鑰的 KeyStore。

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

信任存放區中的憑證到期後,通常會建立新的信任存放區並上傳憑證。 然後更新虛擬主機或目標伺服器/目標端點,以使用新的信任存放區。

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

一般而言,您可以在目前憑證到期前建立新的信任存放區,然後更新 虛擬主機或目標端點,使用新的信任存放區,以便持續 因憑證過期而中斷服務要求。隨後即可刪除舊的 信任商店,然後再確定新的信任存放區正常運作。

針對雲端式 Edge 部署:

  1. 建立新的信任存放區,並上傳憑證 使用 Edge UI 建立 KeyStore 和信任儲存庫

    將新憑證上傳至新的信任存放區時,別名名稱沒有任何影響。

  2. 如果是傳入連線使用的虛擬主機,代表 API 傳送至 Edge:
    1. 如果您的虛擬主機使用信任儲存庫的參照,請更新參照。
    2. 如果您的虛擬主機使用信任存放區的直接名稱,請與 Apigee Edge 支援團隊聯絡。
  3. 如果是傳出連線使用的目標端點/目標伺服器, 從 Apigee 到後端伺服器
    1. 如果目標端點/目標伺服器使用信任儲存庫的參照,請更新 參照。不需要重新部署 Proxy。
    2. 如果目標端點/目標伺服器使用流程變數,請更新流量變數。否 必須重新部署 Proxy。
    3. 如果目標端點/目標伺服器使用信任存放區的直接名稱, 針對參照的所有 API Proxy,更新目標端點/目標伺服器設定 參照新的 KeyStore 和金鑰別名。

      接著,您必須重新部署 Proxy。

  4. 確認新的信任存放區運作正常後,請刪除舊的信任存放區 憑證