Wie auf dem lokalen Rechner IIS gehostet azur Schlüssel Gewölbe Geheimnisse von Web-Anwendung zugreifen und auf Fehler von IIS-Arbeitsprozess angebracht?

stimmen
1

Das Ziel ist es, alle geheimen Werte zum Lesen von NET Framework 4.6 Web-Anwendung auf lokal IIS gehostet? Die Anwendung ist Bit Vermächtnis, und es kann nur durch das Anbringen an Arbeitsprozess ausgetestet werden. Ich versuche, azurSchlüssel Gewölbe Geheimnisse zuzugreifen, indem Sie den Code unten verwenden, so dass Speichern von Schlüsseln in den Anwendungskonfigurationsdateien vermieden werden.

var keyVaultPath = ConfigurationManager.AppSettings[KeyVaultStorage];
var azureServiceTokenProvider = new AzureServiceTokenProvider();
var keyVaultClient = new KeyVaultClient(new KeyVaultClient.AuthenticationCallback(azureServiceTokenProvider.KeyVaultTokenCallback));
var secrets = keyVaultClient.GetSecretsAsync(keyVaultPath).Result;
_secretValues = new ConcurrentDictionary<string, string>();
foreach (var item in secrets)
{
      var secret = keyVaultClient.GetSecretAsync(${keyVaultPath}/secrets/{item.Identifier.Name}).Result;
      _secretValues.TryAdd(item.Identifier.Name, secret.Value);
}

Bevor Sie diesen Code ausgeführt wird, sichergestellt azur Abonnement anmelden, um die folgenden Befehle

az login 
az account set --subscription

Der gleiche Code läuft gut in .Net-Kernapplikation sowie in .NET Framework 4.6 Web-Anwendung auf IIS Express gehostet. Es läuft nicht, wenn auf dem lokalen Rechner IIS gehostet.

Fehler ausgelöst Ausführung des Codes von IIS-Arbeitsprozess.

AzureServiceTokenProviderException: Parameters: Connection String: [No connection string specified], Resource: https://vault.azure.net, Authority: https://login.windows.net/. Exception Message: Tried the following 4 methods to get an access token, but none of them worked.
Parameters: Connection String: [No connection string specified], Resource: https://vault.azure.net, Authority: https://login.windows.net/. Exception Message: Tried to get token using Managed Service Identity. Unable to connect to the Managed Service Identity (MSI) endpoint. Please check that you are running on an Azure resource that has MSI setup.
Parameters: Connection String: [No connection string specified], Resource: vault.azure.net, Authority: login.windows.net/. Exception Message: Tried to get token using Visual Studio. Access token could not be acquired. Visual Studio Token provider file not found at C:\WINDOWS\system32\config\systemprofile\AppData\Local\.IdentityService\AzureServiceAuth\tokenprovider.json
Parameters: Connection String: [No connection string specified], Resource: https://vault.azure.net, Authority: https://login.windows.net/. Exception Message: Tried to get token using Azure CLI. Access token could not be acquired. Traceback (most recent call last):
  File runpy.py, line 193, in _run_module_as_main
  File runpy.py, line 85, in _run_code
  File C:\Users\trdai\AppData\Local\Temp\pip-install-17ev678d\azure-cli\azure\cli\__main__.py, line 32, in <module>
  File C:\Users\trdai\AppData\Local\Temp\pip-install-17ev678d\azure-cli-core\azure\cli\core\__init__.py, line 509, in get_default_cli
  File C:\Users\trdai\AppData\Local\Temp\pip-install-17ev678d\azure-cli-core\azure\cli\core\__init__.py, line 51, in __init__
  File C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\Lib\site-packages\knack\util.py, line 38, in ensure_dir
    os.makedirs(d)
  File os.py, line 220, in makedirs
PermissionError: [WinError 5] Access is denied: 'C:\\WINDOWS\\system32\\config\\systemprofile\\.azure'

Parameters: Connection String: [No connection string specified], Resource: vault.azure.net, Authority: login.windows.net/. Exception Message: Tried to get token using Active Directory Integrated Authentication. Access token could not be acquired. unknown_user_type: Unknown User Type
Veröffentlicht am 19/12/2018 um 14:07
quelle vom benutzer
In anderen Sprachen...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more