You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置Azure应用网关使用客户端证书向后端VM认证?

Azure应用网关向后端VM发送客户端证书实现双向认证方案

Azure应用网关支持通过客户端证书认证向后端服务器发起请求,以此实现后端VM仅接受来自应用网关的连接。你之前的操作误区在于配置了后端受信任根证书(这是应用网关验证后端服务器证书用的),而正确的配置应该是让应用网关自身携带客户端证书访问后端。以下是具体步骤:

1. 准备符合要求的客户端证书

  • 证书必须是PFX格式,包含完整的私钥,且设置了密码。
  • 该证书需要被后端VM信任:可以是VM已信任的根CA签发的客户端证书,或者后续将证书直接导入VM的受信任客户端证书存储。

2. 将客户端证书上传至应用网关

门户操作

  • 进入Azure应用网关的证书页面,选择客户端证书选项卡,点击「上传」。
  • 选择准备好的PFX文件,输入证书密码,设置证书名称后完成上传。

CLI操作

az network application-gateway client-cert create \
  --gateway-name <你的应用网关名称> \
  --resource-group <所属资源组名称> \
  --name <证书显示名称> \
  --cert-file <本地PFX文件路径> \
  --password <证书密码>

3. 配置后端HTTPS设置

  • 进入应用网关的后端设置页面,新建或编辑目标HTTPS后端设置:
    • 端口设置为后端VM监听SSL的端口(通常是443)。
    • 找到客户端认证区域,勾选「使用客户端证书」,并选择刚才上传的客户端证书。
    • (可选)如果后端VM的SSL证书是自签或私有CA签发,需在后端证书验证中上传VM的根证书到应用网关的「后端受信任根证书」,确保应用网关能验证后端服务器的证书;若为公共CA签发证书,可直接开启验证。

4. 配置后端VM的双向SSL策略

根据VM上的Web服务器类型配置:

IIS服务器

  • 为站点配置SSL绑定,在「SSL设置」中勾选「要求SSL」和「要求客户端证书」。
  • 在「受信任的根证书颁发机构」中添加客户端证书对应的根CA,确保VM信任该客户端证书。

Nginx服务器

  • 在Nginx的server配置块中添加以下指令:
ssl_verify_client on;
ssl_trusted_certificate /path/to/trusted-ca-cert.pem; # 应用网关客户端证书的根CA证书文件
  • 确保Nginx已启用SSL模块,且配置了正确的服务器证书。

5. 验证配置有效性

  • 向应用网关的公共IP/域名发送请求,检查是否能成功访问后端VM。
  • 查看后端VM的Web服务器日志,确认请求携带的客户端证书为应用网关上传的那一张。
  • 若健康探针失败,需确保探针使用的后端设置也关联了该客户端证书(探针会模拟请求,同样需要携带证书)。

内容的提问来源于stack exchange,提问作者Hari Narayanan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 17:12:40