我使用 HTTPTrigger 创建了一个简单的 Azure 函数,该函数通过 Azure 中的门户返回 key 集的 secret 值。该值存储为
@Microsoft.KeyVault(SecretUri=https://myvault.vault.azure.net/secrets/mysecret/ec96f02080254f109c51a1f14cdb1931)
该功能已在“平台功能”>“身份”中启用系统分配的托管身份。 Key Vault 已将 key 添加到值中。 Key Vault 还定义了访问策略,其中定义了对应用程序主体的 key 、 secret 和证书的完全访问权限。函数应用程序仍按原样返回值,而不是 secret 值,这可能是 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}");
}
}
最佳答案
已关注link它在我的网站上运行成功。由于这是一个新功能,它可能不稳定。
顺便说一句,我第一次像你一样获得原样的值(value)。但稍等一下,效果很好。所以我认为读取 keystore secret 可能会有一些延迟。
关于.net - Azure 应用程序设置中的 Key Vault 设置,无需代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53735465/