Azure账号认证时打开的localhost页面出现安全错误该如何解决?
解决方案
这个问题的核心是Chromium内核浏览器(Chrome、Edge等)对本地localhost环回地址的HTTPS证书强制校验导致的,Azure认证回调会在本地启动临时HTTPS服务,使用的自签证书不符合Chromium默认的安全规则就会触发ERR_SSL_PROTOCOL_ERROR报错。你可以根据需求选择以下任意方案处理:
1. 快速适配方案
你已经验证过切换默认浏览器为Firefox即可解决,Firefox对本地自签SSL证书的校验策略更宽松,不会拦截这类合法的本地认证回调请求。
2. 修复Chromium内核浏览器的校验规则
如果不想切换默认浏览器,可以手动调整Chromium内核浏览器的配置:
- 打开Chrome/Edge浏览器,地址栏输入对应地址:
- Chrome:
chrome://flags/#allow-insecure-localhost - Edge:
edge://flags/#allow-insecure-localhost
- Chrome:
- 找到选项「Allow invalid certificates for resources loaded from localhost」,将状态从Default修改为Enabled
- 重启浏览器后重新走认证流程即可正常完成
3. 无需本地浏览器回调的设备码认证
如果不想修改浏览器配置,可以选择设备码认证方式规避回调问题:
- Azure Storage Explorer:在认证页面选择「设备码登录」选项,页面会展示唯一设备码和认证地址,你在任意已登录Azure账号的设备上打开地址输入设备码即可完成认证
- Azure CLI:执行命令
az login --use-device-code即可触发设备码流程 - Azure PowerShell:执行命令
Connect-AzAccount -UseDeviceAuthentication即可触发设备码流程
4. 排查本地流量拦截工具
如果以上方案都无效,可以检查本地是否开启了VPN、代理软件、终端安全管控工具,这类工具可能会篡改本地环回流量的SSL证书,导致协议错误,临时退出这类工具后再重试即可。
内容的提问来源于stack exchange,提问作者awj
相关产品推荐
相关产品推荐

