為加密設定應用程式閘道接聽程式
您已針對 Azure 應用程式閘道與後端集區伺服器間的連線設定 SSL。 針對貨運入口網站,您需要完整的端對端加密。 若要執行此加密,您也需要加密從用戶端傳送至應用程式閘道的訊息。
建立前端連接埠
應用程式閘道會透過一或多個連接埠接收要求。 如果您透過 HTTPS 與閘道通訊,您應設定 SSL 連接埠。 傳統上,HTTPS 使用連接埠 443。 使用 az network application-gateway frontend-port create
命令建立新的前端連接埠。 下列範例顯示如何建立連接埠 443 的前端連接埠:
az network application-gateway frontend-port create \
--resource-group $rgName \
--gateway-name gw-shipping \
--name my-https-port \
--port 443
設定接聽程式
接聽程式等候指定的前端連接埠上閘道器的連入流量。 此流量接著會路由到後端集區中的伺服器。 如果前端連接埠使用 SSL,您需要指出用來解密傳入訊息的憑證。 此憑證包含私密金鑰。
您可以使用 az network application-gateway ssl-cert create
命令新增憑證。 憑證檔案應為 PFX 格式。 由於此檔案包含私密金鑰,因此有可能會受到密碼保護。 如下列範例所示,您在 cert-password
引數中提供密碼。
az network application-gateway ssl-cert create \
--resource-group $rgName \
--gateway-name gw-shipping \
--name shipping-ssl.crt \
--cert-file shippingportal/server-config/shipping-ssl.pfx \
--cert-password <password for certificate file>
然後您可以建立接聽程式,接收來自前端連接埠的要求,並使用此憑證進行解密。 使用 az network application-gateway http-listener create
命令。
az network application-gateway http-listener create \
--resource-group $rgName \
--gateway-name gw-shipping \
--name http-listener \
--frontend-port my-https-port \
--ssl-cert shipping-ssl.crt
定義規則,將 HTTPS 要求傳送到伺服器
最後的步驟是建立規則,將使用接聽程式所接收到訊息導向後端集區的伺服器。 從前端連接埠收到的訊息會使用為接聽程式所指定的 SSL 憑證來解密。 您需要使用後端集區伺服器的用戶端憑證來重新加密這些訊息。 您在規則中定義此資訊。
下列範例顯示如何使用 az network application-gateway rule create
命令來建立將接聽程式連線至後端集區的規則。 --http-settings
參數指定的 HTTP 設定會參考伺服器的用戶端憑證。 您已在上一個單元建立這些設定。
az network application-gateway rule create \
--resource-group $rgName \
--gateway-name gw-shipping \
--name app-gw-rule \
--address-pool ap-backend \
--http-listener http-listener \
--http-settings https-settings \
--rule-type Basic
--priority 101
針對透過應用程式閘道路由傳送的訊息,您現在應該已有完整的端對端加密。 用戶端使用應用程式閘道的 SSL 憑證來傳送訊息。 應用程式閘道會使用此 SSL 憑證來解密這些訊息。 接著,需要使用後端集區伺服器的憑證來重新加密這些訊息。