在 Azure Spring Apps 的應用程式中使用 TLS/SSL 憑證
注意
基本、標準和企業方案將從 2025 年 3 月中旬開始淘汰,並停用 3 年。 建議您轉換至 Azure Container Apps。 如需詳細資訊,請參閱 Azure Spring Apps 淘汰公告。
標準 耗用量和專用 方案將從 2024 年 9 月 30 日起淘汰,並在六個月後完成關閉。 建議您轉換至 Azure Container Apps。 如需詳細資訊,請參閱 將 Azure Spring Apps 標準取用和專用方案遷移至 Azure Container Apps。
本文適用於:✅ 基本/標準 ✅ 企業
本文說明如何在 Azure Spring Apps 中為您的應用程式使用公開憑證。 您的應用程式可以做為用戶端,並存取需要憑證驗證的外部服務,或該應用程式可能需要執行密碼編譯工作。
當您將 TLS/SSL 憑證交由 App Spring Apps 管理時,便可個別維護憑證與應用程式的程式碼,以保護敏感性資料。 應用程式的程式碼可存取由您新增至 Azure Spring Apps 執行個體的公開憑證。
必要條件
- 部署至 Azure Spring Apps 的應用程式。 請參閱快速入門:在 Azure Spring Apps 中部署第一個應用程式;您也可以使用現有的應用程式。
- 具有 .crt、.cer、.pem 或 .der 副檔名的憑證檔案,或是具有私人憑證的已部署 Azure Key Vault 執行個體。
匯入憑證
您可以選擇從 Key Vault 或使用本機憑證檔案,將憑證匯入 Azure Spring Apps 執行個體。
從 Key Vault 匯入憑證
您必須在匯入憑證之前,為 Azure Spring Apps 授與您金鑰保存庫的存取權。
Azure Key Vault 提供兩種授權系統:Azure 角色型存取控制 (Azure RBAC),執行於 Azure 的控制和資料平面,以及存取原則模型,僅執行於資料平面。
使用下列步驟來授與存取權:
登入 Azure 入口網站。
選取 [金鑰保存庫],然後選擇要從中匯入憑證的 Key Vault。
在瀏覽窗格中,選取 [存取原則],然後選擇 [建立]。
選取 [憑證存取權限],然後選取 [取得] 和 [清單]。
在 [主體] 下方,選取 [Azure Spring Cloud 資源提供者]。
選取 [檢閱 + 建立],然後選取 [建立]。
授與金鑰保存庫的存取權之後,便可使用下列步驟匯入憑證:
移至您的服務執行個體。
從執行個體的左側瀏覽窗格中,選取 [TLS/SSL 設定]。
在 [公開金鑰憑證] 區段中,選取 [匯入金鑰憑證]。
在 [金鑰保存庫] 區段中選取您的金鑰保存庫,在 [憑證] 區段中選取您的憑證,然後選取 [選取]。
提供 [憑證名稱] 的值,並視需要選取 [啟用自動同步處理],然後選取 [套用]。 如需詳細資訊,請參閱將現有自訂網域對應至 Azure Spring 應用程式的自動同步憑證 (部分機器翻譯) 一節。
成功匯入憑證之後,您會在 [公開金鑰憑證] 清單中看到該憑證。
注意
Azure Key Vault 和 Azure Spring 應用程式執行個體應位於相同的租用戶中。
匯入本機憑證檔案
您可以使用下列步驟,匯入儲存在本機的憑證檔案:
- 移至您的服務執行個體。
- 從執行個體的左側瀏覽窗格中,選取 [TLS/SSL 設定]。
- 在 [公開金鑰憑證] 區段中,選取 [上傳公開憑證]。
成功匯入憑證之後,您會在 [公開金鑰憑證] 清單中看到該憑證。
載入憑證
若要在 Azure Spring Apps 中將憑證載入應用程式,請從下列步驟開始:
- 移至您的應用程式執行個體。
- 從應用程式的左側瀏覽窗格中,選取 [憑證管理]。
- 選取 [新增憑證],以選擇應用程式可存取的憑證。
從程式碼載入憑證
載入的憑證會位於 /etc/azure-spring-cloud/certs/public 資料夾中。 使用下列 Java 程式碼,在 Azure Spring Apps 的應用程式中載入公用憑證。
CertificateFactory factory = CertificateFactory.getInstance("X509");
FileInputStream is = new FileInputStream("/etc/azure-spring-cloud/certs/public/<certificate name>");
X509Certificate cert = (X509Certificate) factory.generateCertificate(is);
// use the loaded certificate
將憑證載入信任存放區
若為 Java 應用程式,可針對所選憑證選擇 [載入至信任存放區]。 憑證會自動新增至 Java 預設的 TrustStores,以便在 TLS/SSL 驗證中驗證伺服器。
您可以根據應用程式的下列記錄,確認成功載入憑證。
Load certificate from specific path. alias = <certificate alias>, thumbprint = <certificate thumbprint>, file = <certificate name>