Используйте Azure AD B2C для аутентификации WebApi в aspnetboilerplate из SPA - PullRequest
0 голосов
/ 14 декабря 2018

У меня есть веб-приложение SPA, написанное на Vue, которое может напрямую подключаться к AADB2C без ABP, и я получаю на него хороший ответ API-токена.

Для моего внутреннего проекта WebApi я хотел бы использоватьвсе приятные возможности ABP, но я бы хотел заменить часть аутентификации ABP вызовами AADB2C.Чтобы сделать это, я заменил вызов AddAuthentication () в Startup следующим образом ... (ядро .net)

public IServiceProvider ConfigureServices(IServiceCollection services)
{
    services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);

    IdentityRegistrar.Register(services);  // ABP generated

    // I removed this code …
    //  AuthConfigurer.Configure(services, _appConfiguration);     // ABP generated

    // I added this code from a generated webapi project startup file that I know works separately …
    services.AddAuthentication(AzureADB2CDefaults.BearerAuthenticationScheme)
       .AddAzureADB2CBearer(options => Configuration.Bind("AzureAdB2C", options));
...
}

Как мне заставить ABP распознать это и проверить внешний токен jwt и создать нового AbpUser?Было бы здорово использовать все атрибуты AbpAuthorize в сервисах приложения abp таким образом.

Я видел этот совет, но, похоже, мне нужно самому обратиться к B2C таким образом ... https://aspnetboilerplate.com/Pages/Documents/Zero/User-Management?searchKey=authentication#external-authentication

Спасибо

- Энди

...