Надеюсь, это будет легко решить.
Пакет Microsoft System.IdentityModels.Tokens.Jwt был обновлен вчера на NuGet от 4.0.2.206211351 до v5.0. Это, к сожалению, вызывает изменение с некоторым "стандартным" кодом IdentityServer3. то есть взяты из их образцов кода, поэтому я думаю, что многие разработчики могут увидеть эту проблему в ближайшие дни.
Оригинальный код
используя версию пакета v4.0.2.xxxxxx. У меня
using System.IdentityModel.Tokens;
в пространстве имен.
то в Способе Конфигурации начинается как:
public void Configuration(IAppBuilder app)
{
AntiForgeryConfig.UniqueClaimTypeIdentifier = "sub";
JwtSecurityTokenHandler.InboundClaimTypeMap = new Dictionary<string, string>();
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
AuthenticationType = "Cookies"
});
app.UseOpenIdConnectAuthentication(new OpenIdConnectAuthenticationOptions
{ ... };
После обновления
После обновления строки конфигирования:
JwtSecurityTokenHandler.InboundClaimTypeMap = new Dictionary<string, string>();
Вызывает проблемы.
Первое, что класс, по-видимому, переместился в пространство имен System.IdentityModel.Tokens.Jwt, это не так уж плохо.
Однако теперь я получаю ошибку Object reference required for a non-static field на JwtSecurityTokenHandler.InboundClaimTypeMap.
Мне что-то не хватает, другая библиотека, которая требовала или что-то происходит до того, как вызывается Startup.Configuration(), который нуждается в копании?