ASP.NET Core 3.1 Azure API App存储账户连接字符串位置排查求助
定位Azure API App中ASP.NET Core 3.1应用的StorageConnectionString配置位置
根据你提供的代码和场景,以下是几个最可能的配置位置及检查方法:
Azure Key Vault 机密引用
检查API App的「配置」→「应用程序设置」,看看是否存在名为StorageConnectionString的项,其值格式为@Microsoft.KeyVault(SecretUri=https://<你的密钥保管库名称>.vault.azure.net/secrets/<机密名称>/<版本>)。如果是这种情况,实际的连接字符串存储在对应的Key Vault中,API App通过托管标识或访问策略读取该机密。已部署的应用配置文件
ASP.NET Core默认会加载appsettings.json、appsettings.{环境名}.json这类配置文件。你可以通过以下步骤检查:- 进入Azure门户的API App页面,点击左侧菜单的「高级工具」,再点击「Go」进入Kudu环境;
- 在Kudu的「Debug console」中选择「CMD」,导航到
site/wwwroot目录; - 查看
appsettings.json或appsettings.Production.json(如果是生产环境)文件内容,确认是否包含StorageConnectionString节点。
CI/CD部署流程中的注入配置
如果应用是通过Azure DevOps、GitHub Actions等CI/CD工具部署的,可能是在部署阶段通过脚本或任务设置了StorageConnectionString环境变量。可以检查部署流水线的配置,看是否有向API App添加应用设置的步骤,且该步骤中包含了这个连接字符串。本地配置文件被打包部署
若部署时将本地的appsettings.json(包含连接字符串)一同打包上传,那么部署后的应用会直接读取该文件中的配置。这种情况下,Azure门户的应用设置里不会显示这个项,因为配置文件的优先级低于应用设置,但如果应用设置里没有,就会读取配置文件的值。
内容的提问来源于stack exchange,提问作者M-S
相关产品推荐
相关产品推荐

