Я получаю доступ к Azure KeyVault из .NET.Если подключение к Интернету заблокировано, Vaults.GetAsync займет около 2 минут.Я бы предпочел установить значение примерно на 10 секунд.
Вот код, который я использую:
AzureCredentials creds = new AzureCredentialsFactory().FromServicePrincipal(clientId, clientSecret, tenantId, AzureEnvironment.AzureGlobalCloud);
KeyVaultManagementClient kvMgmtClient = new KeyVaultManagementClient(creds);
kvMgmtClient.SubscriptionId = subscriptionId;
vault = kvMgmtClient.Vaults.GetAsync(resourceGroupName, vaultName).Result;
Я пытался установить ManagementClient.LongRunningOperationRetryTimeout
, но это не дало эффекта.
Я также пытался использовать CancellationToken, например так:
CancellationTokenSource cts = new CancellationTokenSource();
cts.CancelAfter(10000);
AzureCredentials creds = new AzureCredentialsFactory().FromServicePrincipal(clientId, clientSecret, tenantId, AzureEnvironment.AzureGlobalCloud);
KeyVaultManagementClient kvMgmtClient = new KeyVaultManagementClient(creds);
kvMgmtClient.SubscriptionId = subscriptionId;
vault = kvMgmtClient.Vaults.GetAsync(resourceGroupName, vaultName, cts.Token).Result;
, но, похоже, это тоже не имеет никакого эффекта.Что я делаю не так?