Как проверить JWT из Azure AD B2C в API ASP.NET Core 2.1 после API-шлюза Ocelot

Я использую Ocelot в качестве API-шлюза для наших микро-сервисов, которые построены с использованием ASP.NET Core 2.1.

Ocelot аутентифицирует токен-носитель из AD B2C и вызывает мой веб-API.

Я настроил свой веб-сервис со стандартным кодом аутентификации Azure AD B2Z:

services.AddAuthentication(AzureADB2CDefaults.BearerAuthenticationScheme) .AddAzureADB2CBearer(options => Configuration.Bind("AzureAdB2C", options));

API всегда возвращает 401 ("Эмитент недействителен"). Ошибка может быть связана с тем, что Оцелот находится посередине.

Я думаю, что мне не нужна полная аутентификация, а скорее проверка токена JWT. Тем не менее, я не могу найти ни одного примера кода, который работает с JWT и ASP.NET core 2.1, особенно с Ocelot в качестве посредника. Возможно, мне придется пропустить проверку издателя, но я не знаю, как добавить объект TokenValidationParameters в конфигурацию.

Кто-нибудь строил такую ​​систему? Как вы обрабатываете / проверяете токены, идущие от шлюза?

0 ответов

Другие вопросы по тегам