CngKey.Import(…); 在PC上成功但在Web主机上失败

以下行在我的PC上成功,但在Web主机的服务器上抛出exception:

CngKey.Import(EccPrivateBlob, CngKeyBlobFormat.EccPrivateBlob); //EccPrivateBlob is a byte[] that works on my PC. 

例外:

System.Security.Cryptography.CryptographicException:发生内部错误。 在System.Security.Cryptography.NCryptNative.OpenStorageProvider(String providerName)的System.Security.Cryptography.CngKey.Import(Byte [] keyBlob,CngKeyBlobFormat格式,CngProvider提供者)at …

这是安全例外吗? 有办法解决吗?

我能够通过在Azure门户中启用WEBSITE_LOAD_USER_PROFILE = 1来解决此问题,如下所述:

如何在Azure WebJob上签署JWT令牌而不会出现CryptographicException?