【问题标题】:Need to set envirionment variable when using Azure Key-Vault Connected Service in Visual Studio?在 Visual Studio 中使用 Azure Key-Vault Connected Service 时需要设置环境变量吗?
【发布时间】:2020-01-08 04:52:52
【问题描述】:

在 Visual Studio 2019 中创建 .Net Core 应用程序时,我选择了 Connected Services 中的 Key Vault 选项。 This 文档页面解释了项目内部发生的变化。部分更改是添加了一个环境变量:

ASPNETCORE_HOSTINGSTARTUP__KEYVAULT__CONFIGURATIONVAULT

添加连接的服务后,您仍然需要自己在 BuildWebHost 中使用 ConfigureAppConfiguration 调用 config.AddAzureKeyVault。在同一文档中,他们使用硬编码端点。我找不到使用该变量的任何地方。那么这个变量在哪里以及如何使用呢?

【问题讨论】:

    标签: visual-studio azure .net-core azure-keyvault


    【解决方案1】:

    那么这个变量在哪里以及如何使用?

    实际上,当您引用tutorial 时,keyVaultEndpoint 很容易从GetKeyVaultEndpoint 获得价值。所以你不需要launchsettings.json来设置变量。

    如果要使用launchsettings.json,可以使用以下代码获取keyVaultEndpoint

    在 Program.cs 中:

    var keyVaultEndpoint = Environment.GetEnvironmentVariable("ASPNETCORE_HOSTINGSTARTUP__KEYVAULT__CONFIGURATIONVAULT");
    

    在launchsettings.json中:

    {
      "environmentVariables": {
        "ASPNETCORE_HOSTINGSTARTUP__KEYVAULT__CONFIGURATIONENABLED": "true",
        "ASPNETCORE_HOSTINGSTARTUP__KEYVAULT__CONFIGURATIONVAULT": "https://yourkeyvaultname.vault.azure.net/"
      }
    }
    

    您可以参考这篇文章到use multiple environments in ASP.NET Core

    【讨论】:

    • 现在有更新吗?如果我的回复有帮助,请接受它作为答案(单击答案旁边的复选标记,将其从灰色切换为已填充。)
    • Connected Services 确实更改了启动设置代码,它不是手动更改的。使用教程建议的硬编码方法 GetKeyVaultEndpoint() 似乎不正确。而且您的回答没有解释变量的使用位置。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-21
    • 2019-12-01
    • 2011-03-04
    • 2015-10-11
    • 2011-02-08
    • 1970-01-01
    相关资源
    最近更新 更多