共用方式為


將現有的自訂網域對應至 Azure Spring 應用程式

注意

基本標準和企業方案將從 2025 年 3 月中旬開始淘汰,並停用 3 年。 建議您轉換至 Azure Container Apps。 如需詳細資訊,請參閱 Azure Spring Apps 淘汰公告

標準 耗用量和專用 方案將從 2024 年 9 月 30 日起淘汰,並在六個月後完成關閉。 建議您轉換至 Azure Container Apps。 如需詳細資訊,請參閱 將 Azure Spring Apps 標準取用和專用方案遷移至 Azure Container Apps

本文適用於: ✔️ Java ✔️ C#

本文適用於: ✔️ 標準 ✔️ 企業

功能變數名稱服務 (DNS) 是在整個網路中儲存網路節點名稱的技術。 本文會使用 CNAME 記錄來對應網域,例如 www.contoso.com。 它會使用憑證保護自定義網域,並示範如何強制執行傳輸層安全性 (TLS),也稱為安全套接字層 (SSL)。

憑證會加密 Web 流量。 這些 TLS/SSL 憑證可以儲存在 Azure 金鑰保存庫。

必要條件

  • Azure 訂用帳戶。 如果您沒有訂用帳戶,請先建立免費帳戶,再開始操作。
  • (選擇性) Azure CLI 2.45.0 版或更高版本。 使用下列命令,以安裝 Azure Spring 應用程式延伸模組:az extension add --name spring
  • 部署至 Azure Spring Apps 的應用程式(請參閱快速入門:使用 Azure 入口網站 啟動 Azure Spring Apps 中的現有應用程式,或使用現有的應用程式)。 如果您的應用程式是使用基本方案部署,請務必升級至標準方案。
  • 具有網域提供者 DNS 登錄存取權的功能變數名稱,例如 GoDaddy。
  • 來自第三方提供者的私人憑證(也就是自我簽署憑證)。 憑證必須符合網域。
  • 已部署的 Azure 實例 金鑰保存庫。 如需詳細資訊,請參閱關於 Azure Key Vault (機器翻譯)。

Azure Spring Apps 管理的 IP 位址尚未屬於 Azure 受信任的 Microsoft 服務。 因此,若要讓 Azure Spring Apps 從受私人端點聯機保護 金鑰保存庫 載入憑證,您必須將下列 IP 位址新增至 Azure 金鑰保存庫 防火牆:

  • 20.99.204.111
  • 20.201.9.97
  • 20.74.97.5
  • 52.235.25.35
  • 20.194.10.0
  • 20.59.204.46
  • 104.214.186.86
  • 52.153.221.222
  • 52.160.137.39
  • 20.39.142.56
  • 20.199.190.222
  • 20.79.64.6
  • 20.211.128.96
  • 52.149.104.144
  • 20.197.121.209
  • 40.119.175.77
  • 20.108.108.22
  • 102.133.143.38
  • 52.226.244.150
  • 20.84.171.169
  • 20.93.48.108
  • 20.75.4.46
  • 20.78.29.213
  • 20.106.86.34
  • 20.193.151.132

匯入憑證

PFX 中準備您的憑證檔案(選擇性)

Azure 金鑰保存庫 支援以 PEM 和 PFX 格式匯入私人憑證。 如果您從憑證提供者取得的 PEM 檔案無法在 [金鑰保存庫 中的儲存憑證] 區段中運作,請遵循這裡的步驟來產生適用於 Azure 金鑰保存庫 的 PFX。

合併中繼憑證

如果您的證書頒發機構單位在憑證鏈結中提供多個憑證,您必須依序合併憑證。

若要執行這項工作,請開啟您在文字編輯器中收到的每個憑證。

建立合併憑證的檔案,稱為 mergedcertificate.crt。 在文字編輯器中,將每個憑證的內容複製到此檔案中。 憑證的順序應該遵循憑證鏈結中的順序,從您的憑證開始,並以跟證書結尾。 它看起來像下列範例:

-----BEGIN CERTIFICATE-----
<your entire Base64 encoded SSL certificate>
-----END CERTIFICATE-----

-----BEGIN CERTIFICATE-----
<The entire Base64 encoded intermediate certificate 1>
-----END CERTIFICATE-----

-----BEGIN CERTIFICATE-----
<The entire Base64 encoded intermediate certificate 2>
-----END CERTIFICATE-----

-----BEGIN CERTIFICATE-----
<The entire Base64 encoded root certificate>
-----END CERTIFICATE-----

將憑證導出至 PFX

使用憑證要求產生的私鑰,導出合併的 TLS/SSL 憑證。

如果您使用 OpenSSL 產生憑證要求,則您已建立私鑰檔案。 若要將憑證導出至 PFX,請執行下列命令。 將佔位元 private-key-file 和 merged-certificate-file>> 取代為您的私鑰和<合併憑證檔案的路徑。<

openssl pkcs12 -export -out myserver.pfx -inkey <private-key-file> -in <merged-certificate-file>

出現提示時,請定義匯出密碼。 稍後將 TLS/SSL 憑證上傳至 Azure 金鑰保存庫 時,請使用此密碼。

如果您使用 IIS 或 Certreq.exe 產生憑證要求,請將憑證安裝至本機計算機,然後將 憑證導出至 PFX

將憑證儲存在 金鑰保存庫

匯入憑證的程式需要 PEM 或 PFX 編碼的檔案位於磁碟上,而且您必須具有私鑰。

使用下列步驟將憑證上傳至金鑰儲存庫:

  1. 移至您的金鑰保存庫實例。

  2. 在瀏覽窗格中,選取 [ 憑證]。

  3. 在上方功能表上,選取 [ 產生/匯入]。

  4. 在 [建立憑證] 頁面上,選取 [憑證建立方法匯入],然後提供 [憑證名稱] 的值

  5. 在 [上傳憑證檔案] 底 ,流覽至憑證位置並加以選取。

  6. 在 [密碼] 底下,如果您要上傳受密碼保護的憑證檔案,請在這裡提供該密碼。 否則請留白。 成功匯入憑證檔案之後,密鑰保存庫會移除該密碼。

  7. 選取 建立

    Azure 入口網站 [建立憑證] 對話框的螢幕快照。

授與 Azure Spring Apps 金鑰保存庫的存取權

匯入憑證之前,您必須將密鑰保存庫的存取權授與 Azure Spring Apps。

使用下列步驟,使用 Azure 入口網站 授與存取權:

  1. 移至您的金鑰保存庫實例。

  2. 在瀏覽窗格中,選取 [ 存取原則]。

  3. 在上方功能表上,選取 [ 建立]。

  4. 填入資訊,然後選取 [新增] 按鈕,然後選取 [建立存取原則]。

    秘密許可權 憑證權限 選取主體
    取得、列出 取得、列出 Azure Spring Apps 網域管理

    注意

    如果您找不到「Azure Spring Apps 網域管理」,請搜尋「Azure Spring Cloud Domain-Management」。

    [Azure 入口網站 新增存取原則] 頁面的螢幕快照,其中已從 [秘密許可權] 和 [憑證許可權] 中選取 [取得和列表]。

    [Azure 入口網站 建立存取原則] 頁面的螢幕快照,其中已從 [選取主體] 下拉式清單中選取 [Azure Spring Apps 網域管理]。

將憑證匯入至 Azure Spring Apps

使用下列步驟匯入憑證:

  1. 前往您的 Azure Spring 應用程式執行個體。

  2. 從瀏覽窗格中,選取 [TLS/SSL 設定]。

  3. 選取 [ 匯入金鑰保存庫憑證]。

    顯示 [TLS/SSL 設定] 頁面的 Azure 入口網站 螢幕快照,其中已醒目提示 [匯入密鑰保存庫憑證] 按鈕。

  4. 在 [從 Azure 選取憑證] 頁面上,從下拉式選項選取 [訂用帳戶]、[金鑰保存庫] 和 [憑證],然後選擇 [選取]。

    顯示 [從 Azure 選取憑證] 頁面之 Azure 入口網站 螢幕快照。

  5. 在開啟的 [設定憑證名稱] 頁面上,輸入您的憑證名稱 ,視需要選取 [ 啟用自動同步 處理],然後選取 [ 套用]。 如需詳細資訊,請參閱 自動同步處理憑證 一節。

    Azure 入口網站 [設定憑證名稱] 對話框的螢幕快照。

  6. 成功匯入憑證時,它會顯示在私鑰憑證清單中

    顯示 [私鑰憑證] 索引標籤 Azure 入口網站 的螢幕快照。

重要

若要使用此憑證保護自定義網域,請務必將憑證系結至特定網域。 如需詳細資訊,請參閱 新增 SSL 系結 一節。

自動同步憑證

儲存在 Azure 金鑰保存庫 中的憑證有時會在到期前更新。 同樣地,貴組織用於憑證管理的安全策略可能需要 DevOps 小組定期以新的憑證取代憑證。 啟用憑證的自動同步處理之後,Azure Spring Apps 會開始定期同步處理新版的密鑰保存庫,通常是每隔 24 小時。 如果有新版本可用,Azure Spring Apps 會匯入它,然後使用憑證為各種元件重載它,而不會造成任何停機時間。 下列清單顯示受影響的元件和相關案例:

當 Azure Spring Apps 匯入或重載憑證時,會產生活動記錄檔。 若要查看活動記錄,請流覽至 Azure 入口網站 中的 Azure Spring Apps 實例,然後在瀏覽窗格中選取 [活動記錄]。

注意

憑證自動同步處理功能適用於從 Azure 金鑰保存庫 匯入的私人憑證和公開憑證。 客戶上傳的內容憑證無法使用此功能。

當您將憑證從金鑰保存庫匯入至 Azure Spring Apps 時,您可以啟用或停用憑證自動同步處理功能。 如需詳細資訊,請參閱 將憑證匯入至 Azure Spring Apps 一節。

您也可以針對已匯入至 Azure Spring Apps 的憑證啟用或停用此功能。

使用下列步驟來啟用或停用匯入憑證的自動同步處理:

  1. 移至私鑰憑證公鑰憑證的清單

  2. 選取 [自動同步處理] 數據行之後的省略號 (...) 按鈕,然後選取 [啟用自動同步] 或 [停用自動同步]。

    Azure 入口網站 的螢幕快照,其中顯示已開啟省略號按鈕功能表的憑證清單,並已選取 [啟用自動同步處理] 選項。

新增自訂網域

您可以使用 CNAME 記錄將自訂 DNS 名稱對應至 Azure Spring Apps。

注意

不支援 A 記錄。

建立 CNAME 記錄

移至您的 DNS 提供者,並新增 CNAME 記錄,以將網域對應至 <service-name>.azuremicroservices.io<service-name>以下是 Azure Spring Apps 實例的名稱。 我們支援通配符網域和子網域。

新增 CNAME 之後,DNS 記錄頁面會類似下列範例:

顯示 Azure Spring Apps 實例之 DNS 記錄頁面的螢幕快照。

將自定義網域對應至 Azure Spring Apps 應用程式

如果您沒有 Azure Spring Apps 中的應用程式,請遵循快速入門:將第一個應用程式部署至 Azure Spring Apps 中的指示。

使用下列步驟將自訂網域與應用程式系結:

  1. 移至應用程式頁面。

  2. 選取 [自定義網域]。

  3. 選取 [ 新增自定義網域]。

    顯示 [自定義網域] 頁面之 Azure 入口網站 的螢幕快照。

  4. 輸入您新增 CNAME 紀錄的完整功能變數名稱,例如 www.contoso.com。 請確定 [主機名] 記錄類型設定為 CNAME - <service-name>.azuremicroservices.io

  5. 選取 [驗證 ] 以啟用 [ 新增 ] 按鈕。

  6. 選取 [新增]。

    Azure 入口網站 [新增自定義網域] 對話框的螢幕快照。

一個應用程式可以有多個網域,但一個網域只能對應至一個應用程式。 當您成功將自定義網域對應至應用程式時,它會顯示在自定義網域數據表上。

顯示自訂網域數據表之 Azure 入口網站 的螢幕快照。

注意

自定義網域的 「不安全」標籤表示尚未系結至SSL憑證。 從瀏覽器到自定義網域的任何 HTTPS 要求都會收到錯誤或警告。

新增 SSL 系結

使用下列步驟來更新應用程式的自訂網域:

  1. 在自定義網域數據表中,選取 [新增 ssl 系結 ],如上圖所示。

  2. 選取您的 憑證 或匯入憑證。

  3. 選取儲存

    顯示 [TLS/SSL 系結] 窗格之 Azure 入口網站 螢幕快照。

成功新增 SSL 系結之後,網域狀態就會安全: 狀況良好

顯示網域狀態狀況良好之 SSL 系結的螢幕快照。

強制使用 HTTPS

根據預設,任何人都可以使用 HTTP 存取您的應用程式,但您可以將所有 HTTP 要求重新導向至 HTTPS 連接埠。

在您的應用程式頁面中,在導覽中,選取 [ 自定義網域]。 然後,將 [僅限 HTTPS] 設定Yes

SSL 系結的螢幕快照,其中已醒目提示 [僅限 Https] 選項。

作業完成時,流覽至指向您應用程式的任何 HTTPS URL。 請注意,HTTP URL 無法運作。

下一步