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

仅允许Azure APIM访问特定ASP.NET Core控制器的方案咨询

解决方案建议
  • 网络层IP限制
    在应用服务器的防火墙(比如Azure NSG)或者ASP.NET Core中间件中,把那5个合作伙伴API的访问来源限制为Azure APIM的出站IP段。合作伙伴直接调用时,由于IP不在允许列表内会被拦截,只能通过APIM路由访问。需要注意定期同步APIM的IP段,避免因为Azure IP变动导致访问异常。

  • 专属OIDC客户端校验
    给5个合作伙伴API单独配置一个专属的OIDC客户端,在APIM策略里强制用这个客户端的凭据获取token并转发请求。同时在ASP.NET Core的授权逻辑中,针对这几个控制器添加校验规则:只有token的客户端ID匹配专属APIM客户端ID的请求才允许通过。直接调用的请求拿不到这个专属客户端的token,自然会被拒绝。

  • 请求签名验证
    在APIM里给转发的请求添加HMAC签名(结合请求参数、时间戳和双方约定的共享密钥),然后在ASP.NET Core里写一个中间件专门校验这个签名。合作伙伴直接调用时无法生成符合要求的签名,请求会被拦截。这种方式不依赖APIM的内置标识符,还能覆盖所有端点包括etc类的,安全性也更高。

  • 路径重映射隔离
    把合作伙伴API的原路径设置为仅内部访问,同时在APIM里映射一个新的对外路径。比如原路径/api/partner/*只允许APIM的IP访问,APIM对外暴露/api/v1/partner/*供合作伙伴调用。这样合作伙伴只能通过APIM的新路径访问,直接访问原路径会被拒绝。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 23:02:14