Here - это то, как я создал атрибут авторизации на основе требований. Но у меня есть некоторые сомнения относительно того, как эта работа.защищенный webapi с действующим JWT на основании требований
Учитывая код из моего класса запуска:
public void Configuration(IAppBuilder app)
{
if (app == null)
{
throw new ArgumentNullException(nameof(app));
}
app.UseIdentityServerBearerTokenAuthentication(new IdentityServerBearerTokenAuthenticationOptions
{
Authority = ConfigurationManager.AppSettings["Authentication:Authority"],
RequiredScopes = ConfigurationManager.AppSettings["Authentication:Scopes"].Split(' ').ToList(),
PreserveAccessToken = true
});
}
Я ожидал, что если у меня есть этот атрибут на мой контроллер и я посылаю недопустимый маркер (недействительная подпись) запрос будет автоматически отвергнут, как несанкционированные, но выполняется код из атрибута.
Не должно OWIN
Сначала подтвердить токен?
Как убедиться, что токен действителен (действительная стриктура, подпись, истек и т. Д.) И только после проверки претензий?
из предыдущего вопроса: если вы измените оператор возврата 'возврат token.Claims.Any' с' возвращением token.Claims.All' вы все еще получаете эту ошибку? – Tinwor
@Tinwor Для этого потребовалось бы, чтобы _all_ претензии на токен были идентичны, а не просто проверяли, соответствует ли какой-либо один из них –