如何在Azure AD中验证自定义域名及解决TXT记录配置报错问题
Azure自定义域名验证报错相关解答
报错含义
该报错是DNS协议标准限制导致的冲突提示:根据DNS规范,只要某一个域名(包含根域名或子域名)下配置了CNAME记录,该域名就不能再配置其他任何类型的DNS记录(包括验证用的TXT记录、A记录等),同时同一个域名下也不允许存在多条CNAME记录,你在添加TXT记录时触发了该规则校验所以报错。
修复方案
你可以根据自身场景选择以下任意一种方案处理:
- 临时移除冲突CNAME:如果当前域名的CNAME记录可以临时下线,可以先删除对应域名下的所有CNAME记录,完成Azure TXT验证并通过后,再重新配置CNAME指向Azure Static Web Sites即可
- 使用带前缀的TXT验证:Azure提供了无冲突的域名验证方案,你可以将TXT记录的主机名修改为
asuid.你要验证的域名(例如验证根域名example.com就填asuid.example.com,验证子域名www.example.com就填asuid.www.example.com),记录值仍填写Azure给出的验证字符串,这种方案不需要修改现有CNAME记录即可完成验证 - 根域名特殊处理:如果你要验证的是根域名,本身就不建议配置CNAME记录,可以将根域名的指向改为A/AAAA记录映射到Azure Static Web Sites的对应IP,之后直接添加TXT验证记录即可,不会触发冲突
多条CNAME记录是否为报错原因
是直接原因。一方面同一个域名下存在多条CNAME本身就不符合DNS配置规范,另一方面只要域名下存在CNAME记录(无论多少条、指向哪个服务),都无法添加其他类型的记录,自然会导致TXT验证记录添加失败。如果你是不同子域名分别配置CNAME指向不同的Azure Static Web Sites,这种配置是合规的,不会互相影响,仅同一个域名下的多条CNAME会触发冲突。
内容的提问来源于stack exchange,提问作者GilShalit
相关产品推荐
相关产品推荐

