【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

 



 

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

相关文章
|
17天前
|
存储 人工智能 监控
黎跃春讲AI智能体运营工程师:构建与驾驭智能体系统的核心力量
在AI智能体浪潮席卷而来的今天,一个新兴的关键角色正变得至关重要——AI智能体运营工程师。本文将从资深专家黎跃春的视角出发,深入剖析这一角色的核心职责与技能栈,并系统性地拆解智能体系统的架构、工作原理与核心挑战。我们将探讨运营工程师如何作为“智能体系统的驾驭者”,通过监控、评估、调优与规模化部署,确保智能体从实验室原型稳定、高效地转化为实际生产力。无论您是AI开发者、技术决策者还是智能体爱好者,本文都将为您提供从理论到实践的清晰路线图。
|
23天前
|
数据采集 人工智能 IDE
告别碎片化日志:一套方案采集所有主流 AI 编程工具
本文介绍了一套基于MCP架构的轻量化、多AI工具代码采集方案,支持CLI、IDE等多类工具,实现用户无感、可扩展的数据采集,已对接Aone日志平台,助力AI代码采纳率分析与研发效能提升。
398 46
告别碎片化日志:一套方案采集所有主流 AI 编程工具
|
30天前
|
SQL 人工智能 分布式计算
从工单、文档到结构化知识库:一套可复用的 Agent 知识采集方案
我们构建了一套“自动提取 → 智能泛化 → 增量更新 → 向量化同步”的全链路自动化 pipeline,将 Agent 知识库建设中的收集、提质与维护难题转化为简单易用的 Python 工具,让知识高效、持续、低门槛地赋能智能体。
312 36
|
1月前
|
Kubernetes 应用服务中间件 API
应对 Nginx Ingress 退役,是时候理清这些易混淆的概念了
本文希望提供一种更简单的方式,来理解这些容易混淆的技术概念:Nginx、Ingress、Ingress Controller、Ingress API、Nginx Ingress、Higress、Gateway API。
743 69
|
18天前
|
安全 C语言 Docker
从零开始学构建Docker镜像:4种实用方法+生产级实践规范
本文系统讲解Docker镜像构建四大方法,聚焦生产实践,涵盖环境搭建、Dockerfile规范、多阶段构建、安全管控与CI/CD集成,强调非root运行、镜像瘦身及可追溯Tag规范,助力开发者掌握从开发到生产的全链路容器化技能。
334 5
|
17天前
|
云安全 安全 Cloud Native
阿里云智能云原生应用保护平台CNAPP(原安全中心)详解:费用价格、功能优势及问题解答FAQ
阿里云全新升级智能云原生应用保护平台(CNAPP),融合CWPP、CSPM、CIEM、CTDR四大能力,提供覆盖“事前-事中-事后”的全链路安全防护。支持多云纳管、自动威胁响应与合规检查,助力企业实现安全左移、风险可视、响应自动化。
|
17天前
|
机器学习/深度学习 人工智能 算法
给大模型“上上价值”:用PPO算法让AI更懂你的心
本文深入浅出讲解PPO算法——大模型“价值观对齐”的核心引擎。以教育孩子为喻,解析其“剪切更新”“优势估计”“KL约束”等机制,涵盖原理、实战(数据准备→奖励建模→五步微调)、避坑指南及DPO等前沿方向,助你让AI既聪明又懂你。(239字)
137 7
|
11天前
|
人工智能 前端开发 开发者
这几个开源项目太火啦,抓紧收藏哟起来!!!
KnowNote:本地优先AI知识库桌面应用,无需Docker,私有化部署;Remotion:用React编程生成MP4视频的开源框架;Superpowers:为AI编程助手赋能的Agentic技能框架。三者均开源,各具创新特色!
141 11
|
12天前
|
机器学习/深度学习 计算机视觉 网络架构
YOLO26改进 - 注意力机制 |融合HCF-Net维度感知选择性整合模块DASI 增强小目标显著性
本文介绍将HCF-Net中的维度感知选择性融合(DASI)模块集成至YOLO26检测头,通过通道分区与Sigmoid自适应加权,融合高/低维及当前层特征,显著提升红外小目标检测精度,在SIRST数据集上超越主流方法。(239字)
|
14天前
|
弹性计算 安全 小程序
阿里云轻量服务器38元1年,与云服务器ECS对比有何不同,区别及选择参考
在阿里云的云服务器产品中,轻量应用服务器和ECS云服务器是两款备受关注的产品。目前,阿里云针对轻量应用服务器推出了一系列优惠活动,价格非常优惠,轻量云服务器2核2G200M峰值带宽38元一年。那么,轻量应用服务器与ECS云服务器相比有何不同,又该如何选择呢?本文为大家介绍他们之间的不同,以供选择参考。