Keycloak集成Azure AD实现Web App认证时添加Application ID URI报错咨询
问题原因分析
这个报错是Azure AD侧的配置限制导致的,和Keycloak服务本身没有关联,常见触发原因如下:
- 域名未验证:Azure AD要求自定义Application ID URI所用的域名,必须是当前租户下已经完成所有权验证的自定义域名。如果你填写的URI中的域名(比如你部署Keycloak的业务域名)没有提前在Azure AD「自定义域名」模块完成验证,就会触发该错误。
- 格式不符合规范:Application ID URI仅支持两类合法格式:
- 系统默认格式:
api://<当前应用的客户端ID> - 自定义域名格式:
api://<已验证的自定义域名>/<自定义后缀>
缺少api://前缀、使用未被允许的特殊字符都会导致校验失败。
- 系统默认格式:
- URI冲突:Application ID URI在当前Azure AD租户内全局唯一,如果你填写的URI已经被租户内其他应用注册占用,也会抛出报错。
解决方案
- 优先使用默认格式测试:直接采用Azure自动生成的
api://<你的应用客户端ID>作为Application ID URI,先完成后续配置流程验证链路连通性,再根据需求调整为自定义域名版本。 - 自定义域名场景:先到Azure AD的「自定义域名」模块提交你的业务域名,按要求完成DNS解析验证后,再填写对应格式的Application ID URI。
- 排查冲突:如果确认域名和格式都无误,可以在Azure AD应用注册的搜索栏输入你要使用的URI,确认是否存在其他同名应用占用资源。
内容的提问来源于stack exchange,提问作者bobcoupee
相关产品推荐
相关产品推荐

