From 3254f71b95e9902402b7731a5396740e38fbdb7d Mon Sep 17 00:00:00 2001 From: Ben Adams Date: Wed, 2 Sep 2020 17:20:14 +0100 Subject: [PATCH] Make IdentityServer.Configuration.KeyDefinition linker friendly (#25524) --- .../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 69b5115877..57248ed284 100644 --- a/src/Identity/ApiAuthorization.IdentityServer/src/Configuration/ConfigureSigningCredentials.cs +++ b/src/Identity/ApiAuthorization.IdentityServer/src/Configuration/ConfigureSigningCredentials.cs @@ -52,8 +52,21 @@ namespace Microsoft.AspNetCore.ApiAuthorization.IdentityServer 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) {