查看 Apigee Edge 說明文件。
前往 Apigee X 說明文件。info
您在虛擬主機或目標端點/目標伺服器中指定金鑰庫和信任存放區名稱的方式,會決定您執行憑證更新的方式。可指定的意圖包括 使用下列指令,瞭解 KeyStore 和信任儲存庫的名稱:
- 參考資料 - 建議
- 直接姓名
- 流程變數
這些方法對憑證更新程序的影響不同,詳情請見 下表。
設定類型 | 如何更新/替換憑證 | 如何更新虛擬主機、目標端點/目標伺服器 |
---|---|---|
參考資料 (建議) |
針對 KeyStore,請使用新名稱建立新的 KeyStore,並使用與舊別名相同的名稱建立別名。 如要建立信任存放區,請使用新名稱建立信任存放區。 |
更新 KeyStore 或信任儲存庫的參照。
無須與 Apigee Edge 支援團隊聯絡。 |
流程變數 (僅限目標端點) |
針對 KeyStore,以新名稱和別名 相同的名稱或新名稱 針對信任儲存庫,請以新名稱建立信任存放區。 |
在每個要求中傳遞更新後的流程變數,並附上新的 KeyStore、別名或 TrustStore 名稱。 無須與 Apigee Edge 支援團隊聯絡。 |
直接 | 建立新的 KeyStore、別名和信任存放區。 |
如果是虛擬主機,請與 Apigee Edge 支援團隊聯絡,重新啟動路由器。 如果目標端點/目標伺服器使用信任存放區,請重新部署 Proxy。 |
直接 | 刪除金鑰庫或信任庫,並使用相同名稱重新建立。 |
不需要更新虛擬主機。不過,到新的 KeyStore 和 別名已設定完成。 如果 KeyStore 用於 Edge 和後端服務之間的雙向 TLS, 請與 Apigee Edge 支援團隊聯絡,以重新啟動訊息處理器。 |
直接 | 僅適用於信任儲存庫,請將新的憑證上傳至信任存放區。 |
如果是虛擬主機,請與 Apigee Edge 支援團隊聯絡,重新啟動 Edge Router。 如果信任存放區由目標端點/目標伺服器使用,請與 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 的方式,並 信任儲存庫
- 前往 https://enterprise.apigee.com 登入 Edge 管理 UI。
- 在 Edge 管理 UI 選單中,選取貴機構的名稱。
-
針對虛擬主機,決定虛擬主機如何指定 KeyStore 和 TrustStore。
- 視您的 Edge UI 版本而定:
- 如果您使用的是 Edge 經典版 UI:請依序選取「API」>「環境設定」。
- 如果使用的是新版 Edge UI:請選取 Admin > 環境。
- 選取「虛擬主機」分頁。
- 針對要更新的特定虛擬主機,選取「Show」按鈕,即可查看其屬性。顯示畫面包含下列屬性:
- Key Store:目前 KeyStore 的名稱,通常指定
做為
ref://mykeystoreref
中的參照。
或者,您也可以使用直接名稱 (格式為myKeystoreName
) 或流程變數 (格式為{ssl.keystore}
) 來指定。 - 金鑰別名:這個屬性的值是 KeyStore。新的 KeyStore 必須建立具有相同別名的別名 名稱
- Trust Store:目前信任儲存庫的名稱 (如果有的話),通常是
是在
ref://mytruststoreref
中指定為參照。
或者,您也可以使用直接名稱 (格式為myTruststoreName
) 或流程變數 (格式為{ssl.truststorestore}
) 來指定。
- Key Store:目前 KeyStore 的名稱,通常指定
做為
- 視您的 Edge UI 版本而定:
-
針對目標端點/目標伺服器,決定目標端點如何指定 KeyStore 和 TrustStore:
- 在 Edge 管理 UI 選單中,選取「API」。
- 選取 API Proxy 名稱。
- 選取「開發」分頁標籤。
- 在「目標端點」下方,選取「預設」。
- 在程式碼區域中,會出現 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:
按照「使用 Edge UI 建立 Keystore 和 Truststore」一文的指示,建立新的 Keystore,並上傳憑證和金鑰。
在新 KeyStore 中,請務必使用與現有 KeyStore 相同的金鑰別名名稱。
-
針對由內送連線 (也就是 Edge 中的 API 要求) 使用的虛擬主機:
- 如果虛擬主機使用 KeyStore 的參照,請更新參照。
- 如果您的虛擬主機使用 KeyStore 的直接名稱,請與 Apigee Edge 支援團隊聯絡。
-
如果是傳出連線使用的目標端點/目標伺服器,
從 Apigee 到後端伺服器
- 如果目標端點/目標伺服器使用金鑰庫的參照,請更新參照。不需要重新部署 Proxy。
- 如果目標端點/目標伺服器使用流程變數,請更新流量變數。不需要重新部署 Proxy。
如果目標端點/目標伺服器使用 KeyStore 的直接名稱,請更新 目標端點/目標伺服器設定適用於參照舊 Pod 用來參照新的 KeyStore 和金鑰別名的 KeyStore 和金鑰別名。
接著,您必須重新部署 Proxy。
- 確認新 KeyStore 運作正常後,請刪除舊的金鑰庫 含有過期憑證和金鑰的 KeyStore。
更新信任存放區中的 TLS 憑證
信任存放區中的憑證到期後,通常會建立新的信任存放區並上傳憑證。 然後更新虛擬主機或目標伺服器/目標端點,以使用新的信任存放區。
如果憑證是鏈結的一部分,您必須建立包含所有憑證的單一檔案,並將該檔案上傳至單一別名,或是為每個憑證使用不同的別名,將鏈結中的所有憑證分別上傳至信任存放區。
一般而言,您會在目前憑證到期前建立新的信任存放區,然後更新虛擬主機或目標端點,以便使用新的信任存放區,這樣您就能繼續處理要求,不會因憑證到期而中斷。隨後即可刪除舊的 信任商店,然後再確定新的信任存放區正常運作。
針對雲端式 Edge 部署:
建立新的信任存放區,並上傳憑證 使用 Edge UI 建立 KeyStore 和信任儲存庫。
將新憑證上傳至新的信任存放區時,別名名稱沒有任何影響。
-
針對由內送連線使用的虛擬主機 (也就是 Edge 中的 API 要求):
- 如果虛擬主機使用信任存放區的參照,請更新參照。
- 如果虛擬主機使用信任存放區的直接名稱,請與 Apigee Edge 支援團隊聯絡。
-
外連連線使用的目標端點/目標伺服器 (即從 Apigee 到後端伺服器):
- 如果目標端點/目標伺服器使用信任儲存庫的參照,請更新 參照。不需要重新部署 Proxy。
- 如果目標端點/目標伺服器使用流程變數,請更新流程變數。不需要重新部署 Proxy。
如果目標端點/目標伺服器使用信任存放區的直接名稱, 針對參照的所有 API Proxy,更新目標端點/目標伺服器設定 參照新的 KeyStore 和金鑰別名。
接著,您必須重新部署 Proxy。
- 確認新的信任存放區運作正常後,請刪除含有過期憑證的舊信任存放區。