正如标题所述,我目前遇到一个问题,以下代码需要20秒钟以上的时间才能执行。
var azureServiceTokenProvider = new AzureServiceTokenProvider();
var keyVaultClient = new KeyVaultClient(
new KeyVaultClient.AuthenticationCallback(azureServiceTokenProvider.KeyVaultTokenCallback));
var secret = await keyVaultClient.GetSecretAsync(vaultBaseUrl, secretName).ConfigureAwait(false);
这个秘密最终被阅读了,但是我觉得这是一个漫长的等待时间。我还没有找到任何有类似问题的人。
第一次使用Key Vault,我可能无法正确访问它吗?
答案 0 :(得分:1)
(在我的开发机器上)我遇到了同样的问题,原因是,AzureServiceTokenProvider似乎首先尝试使用本地url超时,这可能是在Azure上运行时更好的设置,但不适用于本地开发。
对我来说,解决方案是在我的开发机上将环境变量AzureServicesAuthConnectionString
设置为值RunAs=Developer; DeveloperTool=VisualStudio
。
另请参见此github问题https://github.com/Azure/azure-sdk-for-net/issues/4645
答案 1 :(得分:0)
尝试在 之后启动秒表,然后从AAD检索访问令牌,并在检索密码后将其终止。我怀疑延迟是在令牌检索期间进行的。
我个人发现,当我创建使用Azure API的应用程序时,自己获取令牌会更快。
答案 2 :(得分:0)
我们保证我们将在5天内处理关键保险柜交易 秒,至少有99.9%的时间。