我使用HTTPTrigger创建了一个简单的Azure函数,该函数通过Azure中的门户返回密钥集的秘密值。该值存储为
@Microsoft.KeyVault(SecretUri=https://myvault.vault.azure.net/secrets/mysecret/ec96f02080254f109c51a1f14cdb1931)
该功能在“平台功能”>“身份”中启用了系统分配的托管身份。 Key Vault的机密已添加值。密钥保管库还定义了访问策略,该访问策略具有对应用程序主体的密钥,机密和证书的完全访问权限。功能应用程序仍按原样返回值,而不是秘密值,这可能是Key Vault访问问题的迹象。正确检索值缺少什么?
https://medium.com/statuscode/getting-key-vault-secrets-in-azure-functions-37620fd20a0b
public static class FunctionCoreAnonymous
{
static string superSecret = Environment.GetEnvironmentVariable("SuperSecret");
[FunctionName("FunctionCoreAnonymous")]
public static async Task<IActionResult> Run(
[HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)] HttpRequest req,
ILogger log)
{
return (ActionResult)new OkObjectResult($"Hello, {superSecret}");
}
}
答案 0 :(得分:1)
遵循link,它在我的网站中成功运行。根据这是一个新功能,它可能不稳定。
顺便说一句,我第一次像你一样按原样获得价值。但是,请稍等片刻,效果很好。因此,我认为读取密钥库机密可能会有所延迟。