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

Azure App Service自定义域名限制特定租户访问的技术咨询

多租户Azure App Service实现方案相关问题解答

首先针对你提到的两个方案和三个疑问逐一解答:

方案前置补充

你提到的第一种TenantKey方案也可以做体验优化,无需用户每次手动输入:用户首次登录成功后,将TenantKey加密存储在浏览器本地缓存/IndexedDB中,后续访问时自动从缓存读取带到登录接口,可大幅降低用户记忆成本,也能一定程度缓解密钥泄露的风险。如果你们更倾向自定义域名方案,三个疑问的解答如下:

1. 自定义域名的访问限制实现

可以实现仅客户VPN环境访问的需求:

  • 直接使用Azure App Service自带的访问限制功能,为每个租户的自定义域名配置独立的IP允许规则,仅将客户VPN的出口IP段加入白名单,其余IP默认拒绝即可。
  • 如果后续有更复杂的安全需求,也可以在接入层加WAF组件,在WAF层配置基于域名的访问控制规则,还可以叠加速率限制、异常流量拦截等安全策略。

2. 自定义域名配额超限的扩容方案

单个App Service 500个自定义域名的配额确实是固定上限,可通过两种方案扩容:

  • 方案一:拆分多套App Service部署,按租户地域、规模等维度分组,每组对应一个App Service,各自分摊域名配额,只需要在Catalog DB中补充域名与后端App Service的路由映射规则即可,原有业务逻辑基本不用修改。
  • 方案二:替换为通配符域名方案,给你的应用主域名配置*.yourdomain.com的通配符证书,每个租户使用[租户标识].yourdomain.com的二级域名,这种场景下仅需要给App Service添加1个通配符域名,完全不受500个配额的限制,同时省去了每个租户单独配置域名解析、SSL证书的工作量,是多租户场景下的主流选择。

3. 自定义域名方案对负载均衡架构的影响

基本不会产生负面影响:
不管你使用Azure原生的应用网关、Front Door还是第三方负载均衡器,都原生支持读取请求头中的Host字段(即用户访问的自定义域名)做路由转发,你只需要在负载均衡层配置好域名与后端App Service池的映射规则即可,原有的租户识别、数据库连接查询逻辑完全不需要调整。如果使用通配符域名,仅需要配置一条通配符路由规则就能覆盖所有租户的请求转发,配置成本更低。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 18:15:03