Надеюсь, это будет легко решить.
Пакет 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()
, который нуждается в копании?