如何借助Azure Front Door隐藏Azure B2C的URL路径片段?
可以通过Azure Front Door的URL重写功能实现需求
以下是针对两种场景的具体配置方案:
场景1:将带路径的URL重写为根域名带参数
原始URL:https://login.mydomain.com/tenant-id/oauth2/v2.0/authorize?p=B2C_1A_SIGNIN&client_id=..
目标URL:https://login.mydomain.com?p=B2C_1A_SIGNIN&client_id=..
配置步骤:
- 在Azure Front Door的路由规则中创建新规则
- 匹配模式:设置为
/tenant-id/oauth2/v2.0/authorize(完全匹配路径) - 路由类型:选择「转发」
- URL重写:开启重写功能,将目标路径设为
/ - 参数处理:选择「保留所有现有参数」,确保原URL的
p、client_id等参数自动携带到新URL中
场景2:无参数时添加默认参数并重写为根域名
原始URL:https://login.mydomain.com/tenant-id/oauth2/v2.0/authorize(无参数)
目标URL:https://login.mydomain.com(自动注入默认参数)
配置步骤:
- 新增一条路由规则,匹配模式同样设为
/tenant-id/oauth2/v2.0/authorize - 开启条件匹配:添加条件「查询字符串不存在」,指定检查是否缺少
p参数 - URL重写:目标路径设为
/,在参数处理中选择「替换参数」,添加默认参数(例如p=B2C_1A_DEFAULT_SIGNIN) - 若希望默认参数仅内部转发使用、不在前端URL显示,可将重写类型设为「内部重定向」;若需前端URL显示参数,选择「外部重定向(302跳转)」
注意事项:
- 调整路由规则的优先级,避免规则冲突
- 测试不同参数组合的转发效果,确保Azure B2C能正确识别重写后的请求参数
内容的提问来源于stack exchange,提问作者Anton Putau
相关产品推荐
相关产品推荐

