【Azure APIM】APIM的自建网关如何解决自签名证书的受信任问题呢?(方案二)

简介: 本文介绍如何在Azure APIM中配置忽略自签名证书的验证,通过禁用证书链校验(SkipCertificateChainValidation),实现APIM与后端HTTPS服务的安全通信,适用于托管网关与自建网关场景,提升部署灵活性,但需注意潜在安全风险。

问题描述

在先前的三篇博文

1:【Azure APIM】APIM的自建网关如何解决自签名证书的受信任问题呢?(方案一)

2:【Azure APIM】如何解决后端API服务配置自签名证书时APIM请求报错500:Error occured while calling backend service

3:【Azure 环境】在Windows环境中使用OpenSSL生成自签名证书链步骤分享

我们分别介绍了使用OpenSSL生成自签名证书,然后解决APIM服务对自签名证书的信任问题。不论是APIM托管的网关,还是自建的网关都可以通过安装证书后使得请求受信任。

正如常规的证书验证中,客户端是可以跳过证书验证这一环节的:如:浏览器的继续访问不安全的网站提示窗口, curl -k 命令等

那么,在APIM的配置上,是否可以直接设置忽略证书验证呢?

 

问题解答

可以的,APIM可以设置对后端的HTTPS自签名证书的验证过程为禁用。使得APIM网关服务能和后端服务进行HTTPS通信。

官方文档说明如下:

禁用自签名证书的证书链验证

参考文档:https://docs.azure.cn/zh-cn/api-management/api-management-howto-mutual-certificates#disable-certificate-chain-validation-for-self-signed-certificates

如果使用自签名证书,则需要禁用证书链验证,使 API 管理能够与后端系统通信。 否则,你将获得 500 错误代码。

若要禁用此验证,可以使用New-AzApiManagementBackend(用于新后端)或Set-AzApiManagementBackend(对于现有后端)PowerShell cmdlet 并将参数设置为-SkipCertificateChainValidationTrue

$context = New-AzApiManagementContext -ResourceGroupName 'ContosoResourceGroup' -ServiceName 'ContosoAPIMService'
New-AzApiManagementBackend -Context  $context -Url 'https://contoso.com/myapi' -Protocol http -SkipCertificateChainValidation $true

还可以使用后端 REST API 禁用证书链验证。

实际的操作中,需要使用到APIM中的 Backend 功能

第一步:新建或修改Backend

可以使用Powershell脚本来创建新的backend,示例脚本如下:

# 登录Azure China
Connect-AzAccount -Environment AzureChinaCloud
# 修改APIM
$apimContext = New-AzApiManagementContext -ResourceGroupName "your resource group name" -ServiceName "your apim name"
# 对已存在的backend进行修改
Set-AzApiManagementBackend -Context  $apimContext -Url 'https://lbca.mylubu.com' -Protocol http -SkipCertificateChainValidation $true
# 新建backend 并设置  -SkipCertificateChainValidation $true
New-AzApiManagementBackend -Context  $apimContext -Url 'https://lbca.mylubu.com' -Protocol http -SkipCertificateChainValidation $true

执行后的效果:

当然,更直接的方式是通过Azure APIM的门户页面创建:

在下面的3步中,最重要的就是一定要反选 Validate Certificate Chain! 默认它是勾选的。

第二步:在API中使用backend

当第一步的Backend创建好之后,如何在API中使用呢?

参考说明:https://docs.azure.cn/zh-cn/api-management/set-backend-service-policy

示例策略如下:

<set-backend-service backend-id="the #1 steps backend id " />

 

第三步:测试

在APIM门户上测试

在Azure 托管的APIM 门户上测试,成功。(不需要上传根证书,中间证书,可节约上传证书后等待APIM完成更新的45分钟左右时间)

 

在AKS自建网关上测试

在AKS Self Host上环境中测试, 访问:curl -H 'Ocp-Apim-Subscription-Key: <APIM Subscription Key>'  'https://<aks service extennal ip>/ca2/'  -k

 

以上方法,可以在不需要证书的情况下,成功访问配置了自签名证书的后端服务API。只是此种办法还是存在一定的安全风险,需要谨慎使用。

 

参考资料

禁用自签名证书的证书链验证 : https://docs.azure.cn/zh-cn/api-management/api-management-howto-mutual-certificates#disable-certificate-chain-validation-for-self-signed-certificates

 



 

当在复杂的环境中面临问题,格物之道需:浊而静之徐清,安以动之徐生。 云中,恰是如此!

相关文章
|
5月前
|
存储 运维 虚拟化
VMware vSAN 9.0.2.0 发布 - 数据中心存储虚拟化
VMware vSAN 9.0.2.0 发布 - 数据中心存储虚拟化
235 10
VMware vSAN 9.0.2.0 发布 - 数据中心存储虚拟化
|
6月前
|
人工智能 安全 Serverless
AgentRun Sandbox SDK 正式开源!集成 LangChain 等主流框架,一键开启智能体沙箱新体验
AgentRun Sandbox SDK 开源发布,基于Serverless架构提供安全、弹性的智能体运行环境。支持LangChain、AgentScope等主流框架,内置代码解释、浏览器操作等多模态沙箱能力,助力Agentic AI快速落地,让开发更轻盈,云端更安全。
|
数据采集 机器学习/深度学习 人工智能
SkyReels-V1:短剧AI革命来了!昆仑开源视频生成AI秒出影视级短剧,比Sora更懂表演!
SkyReels-V1是昆仑万维开源的首个面向AI短剧创作的视频生成模型,支持高质量影视级视频生成、33种细腻表情和400多种自然动作组合。
2162 92
SkyReels-V1:短剧AI革命来了!昆仑开源视频生成AI秒出影视级短剧,比Sora更懂表演!
|
6月前
|
存储 弹性计算 测试技术
5 款高性价比阿里云服务器测评:覆盖个人 / 企业全场景,省钱又实用
阿里云服务器持续推出高性价比配置,结合实例性能、价格优势与实际使用场景,筛选出 5 款热门爆品。本文从配置参数、核心优势、适用场景等维度展开测评,帮不同需求的用户精准选择,避开选购误区。
|
存储 算法 数据处理
从零搭建向量数据库:实现文本语义检索实战
本文带你从零实现一个最小可用的文本语义检索系统,剖析向量数据库核心模块:文本嵌入、向量存储、近似最近邻搜索、元数据过滤等。不追求极致性能,重在理解工程设计权衡。通过亲手搭建,掌握系统瓶颈与优化方向,真正用好成熟方案。
|
5月前
|
SQL 机器学习/深度学习 编解码
YOLO26 改进 - C2PSA | C2PSA融合DML动态混合层(Dynamic Mixing Layer)轻量级设计优化局部细节捕获与通道适应性,提升超分辨率重建质量
本文提出动态混合层(DML),通过通道拆分、多尺度动态深度卷积与通道洗牌融合,实现多尺度特征提取与通道自适应增强。DML集成于YOLO26,提升轻量级图像超分辨率性能,兼顾效率与精度,实验验证其有效性。
YOLO26 改进 - C2PSA | C2PSA融合DML动态混合层(Dynamic Mixing Layer)轻量级设计优化局部细节捕获与通道适应性,提升超分辨率重建质量
|
5月前
|
机器学习/深度学习 自然语言处理 算法
大模型对齐实战:PPO算法的原理与应用实践
本文深入浅出讲解PPO算法在大模型偏好对齐中的应用,涵盖核心原理、三大环节(SFT、RM、PPO)、实操步骤与效果评估。结合LLaMA-Factory工具,手把手带新手完成智能客服模型微调,助力打造贴合人类偏好的AI应用,是入门强化学习对齐的实用指南。
|
5月前
|
存储 运维 Kubernetes
K8s 集群不是不需要备份,只是你还没被教育过:Velero / Kasten 在大规模集群里的真实落地
K8s 集群不是不需要备份,只是你还没被教育过:Velero / Kasten 在大规模集群里的真实落地
288 10
|
6月前
|
Kubernetes 网络安全 容器
【k8s-1.34.2安装部署】五.worker端containerd2.2.1、kubelet-1.34.2安装
本章介绍k8s-1.34.2 worker节点组件安装,涵盖containerd(含CNI、runc等)、kubelet部署与配置,完成节点验证及证书申请批准流程。
564 1
|
5月前
|
数据采集 机器学习/深度学习 人工智能
大模型“驯化”指南:从人类偏好到专属AI,PPO与DPO谁是你的菜?
本文深入解析让AI“懂你”的关键技术——偏好对齐,对比PPO与DPO两种核心方法。PPO通过奖励模型间接优化,适合复杂场景;DPO则以对比学习直接训练,高效稳定,更适合大多数NLP任务。文章涵盖原理、实战步骤、评估方法及选型建议,并推荐从DPO入手、结合低代码平台快速验证。强调数据质量与迭代实践,助力开发者高效驯化大模型,实现个性化输出。
870 8