azure - Azure 函数不解析变量
问题描述
我一直在尝试通过 Azure 中的函数应用从 Google Analytics 获取 OAuth 2.0 令牌。
我正在关注本教程:
有一部分是从变量中提取 URL:
var kvClient = new SecretClient(new Uri(Environment.GetEnvironmentVariable("KEY_VAULT_URL")), new ManagedIdentityCredential());
string keyJson = kvClient.GetSecret("KEY_VAULT_URL").Value.Value;
在 Azure 门户中,在我的函数应用 -> 设置 -> 配置 -> 应用程序设置下是 KEY_VAULT_URL 的定义。
但是变量似乎没有解决,因为我收到了这个错误:
2021-10-14T14:02:24.371 [Error] Executed 'GetOAuthToken' (Failed, Id=bad02220-c792-4c53-af41-621c6a9d12345, Duration=32ms)The request URI contains an invalid name: KEY_VAULT_URLStatus: 400 (Bad Request)ErrorCode: BadParameterContent:{"error":{"code":"BadParameter","message":"The request URI contains an invalid name: KEY_VAULT_URL"}}Headers:Cache-Control: no-cachePragma: no-cachex-ms-keyvault-region: germanywestcentralx-ms-client-request-id: 0344c4b6-98d9-4ade-9c7f-cb058abd123x-ms-request-id: d35bd092-faf4-4567-99e4-4aba0123d7bx-ms-keyvault-service-version: 1.9.132.3x-ms-keyvault-network-info: conn_type=Ipv4;addr=51.216.128.119;act_addr_fam=InterNetwork;X-Powered-By: REDACTEDStrict-Transport-Security: REDACTEDX-Content-Type-Options: REDACTEDDate: Thu, 14 Oct 2021 14:02:23 GMTContent-Length: 101Content-Type: application/json; charset=utf-8Expires: -1
变量的值如下所示:
https://mykeyvault.vault.azure.net/
也许有一个错误?我删除了尾部斜杠,但输出始终相同。
解决方案
这行在教程中是错误的。它不应该是一个变量。它必须是秘密的名称。
kvClient.GetSecret("KEY_VAULT_URL")