我们正在本地开发该函数,尽管我们可以使用 ConfigurationBuilder()。AddAzureKeyVault() 在启动以检索密钥保管库机密时,我们正在努力使队列触发器从 Key Vault 获取连接字符串。如下所示,连接当前是从 local.settings.json 中存在的 AzureWebJobsStorage 密钥检索的:
[FunctionName("myFunction")]
public async Task MyFunction([QueueTrigger("aQueue", Connection = "AzureWebJobsStorage")] Car myCar)
{
await getCarAsync(myCar.Name);
}
local.settings.json
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "DefaultEndpointsProtocol=https;AccountName=....",
在某些情况下,触发器似乎存在记录在案的问题。(摘自本文。)
如果您将依赖关系注入与 FunctionsStartup
或 IWebJobsStartup
一起使用,则可以像这样从 keyvault 设置连接字符串。
>
将QueueTriggerAtment
上的Connection
属性设置为空字符串,例如
[FunctionName("myFunction")]
public async Task MyFunction([QueueTrigger("aQueue", Connection = "")] Car myCar)
{
await getCarAsync(myCar.Name);
}
在启动类中使用< code>PostConfigure
public class Startup : FunctionsStartup
{
public override void Configure(IFunctionsHostBuilder builder)
{
builder.Services.PostConfigure<QueueTriggerAttribute>(x =>
{
x.Connection = ReadQueueConnectionStringFromKeyvault();
});
}
}
另一个要考虑的选择是KeyVault引用
我试图在本地(Ubuntu 19.10)运行此从保管库检索秘密示例,以从Azure Key Vault检索秘密: 但是,我收到以下错误: 蔚蓝色的果心例外。ClientAuthenticationError: 此链中没有提供令牌的凭据。 尝试的凭据: 环境凭据:不完整的环境配置。有关预期的环境变量,请参见https://aka.ms/python-sdk-identity#environment-
我正在python中构建由事件网格事件触发的Azure函数,它应该能够从Kay Vault收集秘密。 我将系统分配的托管标识添加到我的功能应用程序中,然后我可以在密钥库访问策略中选择我的应用程序。我授予它如下所示的权限: (我尝试了不同的组合在这一个)
我有一个在Azure VM中托管的php应用程序,在密钥库中有一些秘密。我已经设置了托管身份并获得了进入保险库的权限。 Azure SDK for php不支持密钥库,所以我使用REST接口。 我的问题是当在本地运行时,即我的代码在桌面上以VSCode运行时,我不能调用AIMS来获取令牌,因为我在本地机器上没有托管标识。 我只能想到两个选择: null 请注意,Visual Studio提供了Az
我们希望利用Azure Key vault将我们的敏感密钥存储在Azure Key vault中,并利用存储的敏感密钥在发送到服务之前加密我们的字符串/纯文本数据。服务将再次与Azure Key vault交互,检索敏感密钥,用于解密客户端发送的加密字符串。任何一个可以提供一些关于如何使用azure密钥库以上的场景。