Я пытаюсь создать новую конечную точку в моем WebApi, которая будет вызываться с другого сервера.Итак, я хочу настроить аутентификацию S2S JWT на канале для моего WebApp.
Код startup.cs выглядит следующим образом
public void Configuration(IAppBuilder app)
{
InitializeLoggers();
HttpConfiguration httpConfiguration = new HttpConfiguration();
WebApiConfig.Register(httpConfiguration);
app.Use<JwtS2SAuthMiddleware>();
app.UseWebApi(httpConfiguration);
}
Я добавил новую строку здесь app.Use<JwtS2SAuthMiddleware>();
Внутри JwtS2SAuthMiddleware я выполняю следующие проверки
- context.Request.Path.Value.StartsWith ("/ newendpoint");
- Получите носитель авторизациитокен из заголовка запроса
- Проверка ключей подписи аудитории, эмитента, эмитента с помощью JwtSecurityTokenHandler.ValidateToken ()
- Убедитесь, что appId, содержащийся в JWT, находится в списке разрешенных идентификаторов приложений
После отладки с использованием запроса от Fiddler я вижу, что все вышеупомянутые проверки пройдены, но ответ все равно 401 Не авторизован с сообщением
{"message":"Authorization has been denied for this request."}
Может кто-нибудь помочь, если мне понадобится что-нибудь еще последелать проверки в моем классе JwtS2SAuthMiddleware?Спасибо.