查看 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 的方式,並 信任儲存庫
- 前往 https://enterprise.apigee.com 登入 Edge 管理 UI。
- 在 Edge 管理 UI 選單中,選取貴機構的名稱。
-
虛擬主機:決定虛擬主機如何指定 KeyStore
建立信任存放區
- 視您的 Edge UI 版本而定:
- 如果您使用傳統版 Edge UI:請選取 API> 環境設定。
- 如果使用的是新版 Edge UI:請選取 Admin > 環境。
- 選取「Virtual Hosts」分頁標籤。
- 針對您要更新的特定虛擬主機,選取「顯示」
按鈕,顯示其屬性。顯示畫麵包含下列屬性:
- Key Store:目前 KeyStore 的名稱,通常指定
做為
ref://mykeystoreref
中的參照。
或者,您也可以直接使用以下格式:myKeystoreName
或流程變數指定,格式為{ssl.keystore}
。 - 金鑰別名:這個屬性的值是 KeyStore。新的 KeyStore 必須建立具有相同別名的別名 名稱
- Trust Store:目前信任存放區的名稱 (如果有的話),通常
是在
ref://mytruststoreref
中指定為參照。
或者,您也可以直接使用以下格式:myTruststoreName
或流程變數指定,格式為{ssl.truststorestore}
。
- Key Store:目前 KeyStore 的名稱,通常指定
做為
- 視您的 Edge UI 版本而定:
-
針對目標端點/目標伺服器,判斷目標端點的方式
會指定 KeyStore 和信任儲存庫:
- 在 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 部署:
建立新的 KeyStore,並上傳憑證和金鑰,如所述 使用 Edge UI 建立 KeyStore 和信任儲存庫。
請在新的 KeyStore 中,確認您使用的金鑰別名名稱與先前使用 現有金鑰儲存庫
-
如果是傳入連線使用的虛擬主機,代表 API
傳送至 Edge:
- 如果虛擬主機使用 KeyStore 的參照,請更新參照。
- 如果您的虛擬主機使用 KeyStore 的直接名稱,請與 Apigee Edge 支援團隊聯絡。
-
如果是傳出連線使用的目標端點/目標伺服器,
從 Apigee 到後端伺服器
- 如果目標端點/目標伺服器使用 KeyStore 的參照,請更新 參照。不需要重新部署 Proxy。
- 如果目標端點/目標伺服器使用流程變數,請更新流量變數。否 必須重新部署 Proxy。
如果目標端點/目標伺服器使用 KeyStore 的直接名稱,請更新 目標端點/目標伺服器設定適用於參照舊 Pod 用來參照新的 KeyStore 和金鑰別名的 KeyStore 和金鑰別名。
接著,您必須重新部署 Proxy。
- 確認新 KeyStore 運作正常後,請刪除舊的金鑰庫 含有過期憑證和金鑰的 KeyStore。
在信任儲存庫中更新 TLS 憑證
信任存放區中的憑證到期後,通常會建立新的信任存放區並上傳憑證。 然後更新虛擬主機或目標伺服器/目標端點,以使用新的信任存放區。
如果憑證是鏈結的一部分,您必須建立單一檔案,其中包含所有 建立憑證,然後將檔案上傳至單一別名,或將鏈結中的所有憑證分別上傳至 讓信任存放區為每個憑證使用不同的別名
一般而言,您可以在目前憑證到期前建立新的信任存放區,然後更新 虛擬主機或目標端點,使用新的信任存放區,以便持續 因憑證過期而中斷服務要求。隨後即可刪除舊的 信任商店,然後再確定新的信任存放區正常運作。
針對雲端式 Edge 部署:
建立新的信任存放區,並上傳憑證 使用 Edge UI 建立 KeyStore 和信任儲存庫。
將新憑證上傳至新的信任存放區時,別名名稱沒有任何影響。
-
如果是傳入連線使用的虛擬主機,代表 API
傳送至 Edge:
- 如果您的虛擬主機使用信任儲存庫的參照,請更新參照。
- 如果您的虛擬主機使用信任存放區的直接名稱,請與 Apigee Edge 支援團隊聯絡。
-
如果是傳出連線使用的目標端點/目標伺服器,
從 Apigee 到後端伺服器
- 如果目標端點/目標伺服器使用信任儲存庫的參照,請更新 參照。不需要重新部署 Proxy。
- 如果目標端點/目標伺服器使用流程變數,請更新流量變數。否 必須重新部署 Proxy。
如果目標端點/目標伺服器使用信任存放區的直接名稱, 針對參照的所有 API Proxy,更新目標端點/目標伺服器設定 參照新的 KeyStore 和金鑰別名。
接著,您必須重新部署 Proxy。
- 確認新的信任存放區運作正常後,請刪除舊的信任存放區 憑證