2017-08-24 33 views
8

Błąd Azure Functions. I pojawia się błąd w portaluFunkcje Azure: Nie można pobrać klucza głównego wykonawczego

Error: 

We are not able to retrieve the runtime master key. Please try again later. 
Session Id: d13fceebd4ea4cb1b7fb3d3829dd1406 

Timestamp: 2017-08-24T20:04:23.555Z 

próbowałem wszystkich sugestii tutaj: https://blogs.msdn.microsoft.com/jpsanders/2017/05/09/function-app-error-we-are-not-able-to-retrieve-the-runtime-master-key/

używam wersji wykonania 1.0.10917 ale próbowałem ~1 i uzyskać ten sam rezultat.

Wydaje się, że to się zdarza, gdy usunę funkcję z portalu, a następnie utworzę ją ponownie. Konsekwentnie dzieje się po tym dla każdej funkcji, którą mamy. Po raz pierwszy funkcja jest tworzona, wydaje się działać.

+0

udostępnij identyfikator sesji i sygnaturę czasową. Również Github lub fora mogą być bardziej odpowiednie dla tego pytania https://github.com/Azure/Azure-Functions/issues – ahmelsayed

+0

Jak mogę to uzyskać? To oczywiście jest pytanie programistyczne, więc jest całkiem głupi – Jeff

+0

identyfikator sesji jest częścią komunikatu o błędzie, który wyświetlił się: "Nie jesteśmy w stanie odzyskać klucza głównego runtime" ' – ahmelsayed

Odpowiedz

2

Jest to wyjątek jesteś uderzanie

System.Security.Cryptography.CryptographicException : The payload was invalid. 
    at Microsoft.AspNetCore.DataProtection.Cng.CbcAuthenticatedEncryptor.DecryptImpl(Byte* pbCiphertext,UInt32 cbCiphertext,Byte* pbAdditionalAuthenticatedData,UInt32 cbAdditionalAuthenticatedData) 
    at Microsoft.AspNetCore.DataProtection.Cng.Internal.CngAuthenticatedEncryptorBase.Decrypt(ArraySegment`1 ciphertext,ArraySegment`1 additionalAuthenticatedData) 
    at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingBasedDataProtector.UnprotectCore(Byte[] protectedData,Boolean allowOperationsOnRevokedKeys,UnprotectStatus& status) 
    at Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingBasedDataProtector.DangerousUnprotect(Byte[] protectedData,Boolean ignoreRevocationErrors,Boolean& requiresMigration,Boolean& wasRevoked) 
    at Microsoft.Azure.WebJobs.Script.WebHost.DataProtectionKeyValueConverter.Unprotect(Key key) at C:\azure-webjobs-sdk-script\src\WebJobs.Script.WebHost\Security\DataProtectionKeyValueConverter.cs : 43 
    at Microsoft.Azure.WebJobs.Script.WebHost.SecretManager.ReadHostSecrets(HostSecrets hostSecrets) at C:\azure-webjobs-sdk-script\src\WebJobs.Script.WebHost\Security\SecretManager.cs : 383 
    at async Microsoft.Azure.WebJobs.Script.WebHost.SecretManager.GetHostSecretsAsync() at C:\azure-webjobs-sdk-script\src\WebJobs.Script.WebHost\Security\SecretManager.cs : 83 
    at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 
    at async Microsoft.Azure.WebJobs.Script.WebHost.WebJobsSdkExtensionHookProvider.GetOrCreateExtensionKey(String extensionName) at C:\azure-webjobs-sdk-script\src\WebJobs.Script.WebHost\WebHooks\WebJobsSdkExtensionHookProvider.cs : 71 
    at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 
    at Microsoft.Azure.WebJobs.Script.WebHost.WebJobsSdkExtensionHookProvider.GetExtensionWebHookRoute(String extensionName) at C:\azure-webjobs-sdk-script\src\WebJobs.Script.WebHost\WebHooks\WebJobsSdkExtensionHookProvider.cs : 64 
    at Microsoft.Azure.WebJobs.Extensions.EventGrid.EventGridExtensionConfig.Initialize(ExtensionConfigContext context) 
    at Microsoft.Azure.WebJobs.Host.Executors.JobHostConfigurationExtensions.InvokeExtensionConfigProviders(ExtensionConfigContext context) 
    at Microsoft.Azure.WebJobs.Host.Executors.JobHostConfigurationExtensions.CreateStaticServices(JobHostConfiguration config) 
    at Microsoft.Azure.WebJobs.JobHost.PopulateStaticServices() 
    at Microsoft.Azure.WebJobs.Script.Utility.CreateMetadataProvider(JobHost host) at C:\azure-webjobs-sdk-script\src\WebJobs.Script\Utility.cs : 362 
    at Microsoft.Azure.WebJobs.Script.ScriptHost.LoadCustomExtensions() at C:\azure-webjobs-sdk-script\src\WebJobs.Script\Host\ScriptHost.cs : 670 
    at Microsoft.Azure.WebJobs.Script.ScriptHost.Initialize() at C:\azure-webjobs-sdk-script\src\WebJobs.Script\Host\ScriptHost.cs : 510 
    at Microsoft.Azure.WebJobs.Script.ScriptHost.Create(IScriptHostEnvironment environment,IScriptEventManager eventManager,ScriptHostConfiguration scriptConfig,ScriptSettingsManager settingsManager) at C:\azure-webjobs-sdk-script\src\WebJobs.Script\Host\ScriptHost.cs : 937 

To bardzo trudne dla użytkowników, aby odkryć te błędy do ich aplikacji, ponieważ środowisko wykonawcze nie rejestruje je w dowolnym miejscu UX może zapytać.

Ten problem jest śledzenie wyjątek: https://github.com/Azure/azure-webjobs-sdk-script/issues/1832

wciąż nie jesteśmy całkowicie pewni, dlaczego tak się dzieje. Czy ponownie opublikujesz klucze z innej aplikacji? (edytuj: lub usuń i ponownie utwórz aplikację o tej samej nazwie) klucze te są szyfrowane przez klucz aplikacji i nie działają poza tym kontekstem.

fix: skopiowane z Fabio Cavalcante

+2

Z powodu błędów w mechanizmie rozmieszczania funkcji lazuru (losowe błędy dotyczące zablokowanych plików i warunków wyścigu), czasami konieczne jest upuszczenie i ponowne utworzenie aplikacji funkcji, a nie tylko jej aktualizacja. . – Jeff

1

Przełączanie Azure konto pamięci Funkcja do nowego konta przechowywania może wywołać podobny problem.

Error: We are not able to get the key swaggerdocumentationkey.
Please check the runtime logs for any errors or try again later.

Jest to prawdopodobnie związane z niezainicjalizowanym kontem pamięci w nowej witrynie. Nie mogę potwierdzić tego zachowania, ale wydaje się, że przy zmianie konta magazynu nowe konto nie inicjuje nowej witryny i spowoduje podobne problemy.

0

Usunąłem funkcje azure i zmieniłem nazwę. Potem zaczęło działać dobrze. Wygląda na to, że nawet po usunięciu funkcji lazuru ślady są w dziennikach lazuru i coś zepsuje.

Upewnij się również, że przechowujesz osobne pamięci BLOBa dla każdej funkcji, jeśli używasz go w więcej niż jednej funkcji lazuru, to daje to pewne dziwne błędy. Myślę, że używają go do logowania i celów uwierzytelniania.