Как правильно установить сертификат identityserver 4?

У меня такая проблема: я пытаюсь установить сертификат для своего IdentityServer4 таким образом

var path = Path.Combine(Environment.ContentRootPath, "IdentityServer4_certificate.pfx");
var certificate = new X509Certificate2(path, "Password");
builder.AddSigningCredential(certificate);

Сертификат создал по статье: https://www.calabonga.net/blog/post/self-signed-certificate-on-csharp

При запуске на локальном компьютере работает, но при публикации в Windows сервер выдает ошибку:

Host terminated unexpectedly.

Internal.Cryptography.CryptoThrowHelper+WindowsCryptographicException: Внутренняя ошибка.
   at Internal.Cryptography.Pal.CertificatePal.FilterPFXStore(Byte[] rawData, SafePasswordHandle password, PfxCertStoreFlags pfxCertStoreFlags)
   at Internal.Cryptography.Pal.CertificatePal.FromBlobOrFile(Byte[] rawData, String fileName, SafePasswordHandle password, X509KeyStorageFlags keyStorageFlags)
   at System.Security.Cryptography.X509Certificates.X509Certificate..ctor(String fileName, String password, X509KeyStorageFlags keyStorageFlags)
   at System.Security.Cryptography.X509Certificates.X509Certificate2..ctor(String fileName, String password, X509KeyStorageFlags keyStorageFlags)
   at IdentityServer.Startup.ConfigureServices(IServiceCollection services) in C:\Users\b.ismail\Source\Repos\identityserver4Original\IdentityServer\Startup.cs:line 111
   at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor, Boolean wrapExceptions)
   at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   at Microsoft.AspNetCore.Hosting.ConfigureServicesBuilder.InvokeCore(Object instance, IServiceCollection services)
   at Microsoft.AspNetCore.Hosting.ConfigureServicesBuilder.<>c__DisplayClass9_0.<Invoke>g__Startup|0(IServiceCollection serviceCollection)
   at Microsoft.AspNetCore.Hosting.ConfigureServicesBuilder.Invoke(Object instance, IServiceCollection services)
   at Microsoft.AspNetCore.Hosting.ConfigureServicesBuilder.<>c__DisplayClass8_0.<Build>b__0(IServiceCollection services)
   at Microsoft.AspNetCore.Hosting.GenericWebHostBuilder.UseStartup(Type startupType, HostBuilderContext context, IServiceCollection services)
   at Microsoft.AspNetCore.Hosting.GenericWebHostBuilder.<>c__DisplayClass12_0.<UseStartup>b__0(HostBuilderContext context, IServiceCollection services)
   at Microsoft.Extensions.Hosting.HostBuilder.CreateServiceProvider()
   at Microsoft.Extensions.Hosting.HostBuilder.Build()
   at IdentityServer.Program.Main(String[] args) in C:\Users\b.ismail\Source\Repos\identityserver4Original\IdentityServer\Program.cs:line 4

111 линия это var certificate = new X509Certificate2(path, "Password");

Также публичный ключ был установлен на сервере Windows через MMС.

Ответ в браузере


Ответы (0 шт):