From 9c2517037803cee399f0fdbd4a5f5281ad497f65 Mon Sep 17 00:00:00 2001 From: Ben Adams Date: Wed, 2 Sep 2020 02:43:08 +0100 Subject: [PATCH] Make IdentityServer.Configuration.KeyDefinition linker friendly --- .../ConfigureSigningCredentials.cs | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/src/Identity/ApiAuthorization.IdentityServer/src/Configuration/ConfigureSigningCredentials.cs b/src/Identity/ApiAuthorization.IdentityServer/src/Configuration/ConfigureSigningCredentials.cs index 69b511587752..57248ed28407 100644 --- a/src/Identity/ApiAuthorization.IdentityServer/src/Configuration/ConfigureSigningCredentials.cs +++ b/src/Identity/ApiAuthorization.IdentityServer/src/Configuration/ConfigureSigningCredentials.cs @@ -52,8 +52,21 @@ public SigningCredentials LoadKey() return null; } - var key = new KeyDefinition(); - _configuration.Bind(key); + var key = new KeyDefinition() + { + Type = _configuration[nameof(KeyDefinition.Type)], + FilePath = _configuration[nameof(KeyDefinition.FilePath)], + Password = _configuration[nameof(KeyDefinition.Password)], + Name = _configuration[nameof(KeyDefinition.Name)], + StoreLocation = _configuration[nameof(KeyDefinition.StoreLocation)], + StoreName = _configuration[nameof(KeyDefinition.StoreName)], + StorageFlags = _configuration[nameof(KeyDefinition.StorageFlags)] + }; + + if (bool.TryParse(_configuration[nameof(KeyDefinition.Persisted)], out var value)) + { + key.Persisted = value; + } switch (key.Type) {