.netcore 2.2 - поддержка нескольких схем аутентификации - PullRequest
0 голосов
/ 09 ноября 2019

.netcore 2.2

хотел бы аутентифицировать токен, несущий запрос, с помощью одной из нескольких поддерживаемых схем (Bearer, Id, Token). Также мы не хотим добавлять схемы в Authorize decorator.

Настроить аутентификацию в Startup.cs.

Bearer
Id
Token

В ConfigureServices,

services
.AddAuthentication("Bearer") //fallback default scheme
.AddIdentityServerAuthentication("Bearer", jwtOptions => {
var scopedTokenValidationParameters = services.BuildServiceProvider().GetService();

// to validate based on the requested tenant (having tenant's issue signing key)
jwtOptions.TokenValidationParameters = ScopedTokenValidationParameters;
})
.AddScheme<CustomJwtOptions, CustomJwtHandler>("Id", opts => {})
.AddScheme<CustomTokenOptions, CustomTokenHandler>("Token", opts => {})

В Configure,

app.UseAuthentication();

При любом запросе вызывается только схема по умолчанию, обработчик другой зарегистрированной схемы (Id, Token) не вызывался на основесхема авторизации запроса.

Мы что-то упустили? Хотел бы получить помощь здесь.

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...