Я размещаю приложение ASP.NET Core 2.2 в веб-приложении Azure в рамках плана обслуживания приложения Linux.
Приложение использует Identity Server 4, и мне нужно использовать сертификат, чтобы при запуске приложения:
X509Certificate2 certificate = null;
using (X509Store store = new X509Store(StoreName.My, StoreLocation.CurrentUser)) {
store.Open(OpenFlags.ReadOnly);
X509Certificate2Collection collection = store.Certificates.Find(X509FindType.FindByThumbprint, MyCertificateThumbprint, false);
if (collection.Count > 0)
certificate = collection[0];
}
services
.AddIdentityServer()
.AddSigningCredential(certificate)
В Azure домен приложения успешно привязан к этому сертификату.
Я скопировал Thumbprint из сертификата в настройках TLS / SSL ...
В приложенииВ конфигурацию я добавил следующую строку:
{
"name": "WEBSITE_LOAD_CERTIFICATES",
"value": "*",
"slotSetting": false
}
Но когда я запускаю приложение, журналы показывают ошибку:
Host terminated unexpectedly
System.ArgumentNullException: Value cannot be null.
Parameter name: certificate
at Microsoft.Extensions.DependencyInjection.IdentityServerBuilderExtensionsCrypto.AddSigningCredential(IIdentityServerBuilder builder, X509Certificate2 certificate)
at Auth.Startup.ConfigureServices(IServiceCollection services) in /home/vsts/work/1/s/src/AuthApp/Startup.cs:line 121
Я пропустил какой-либо шаг?