Я создал простое серверное приложение Blazor, связанное с каталогом Azure B2 C для авторизации. Все работает, но мне нужно добавить дополнительные требования к роли к токену. Исследования указывают мне на этот пост SO , который относится к добавлению претензий во время уведомления AuthorizationCodeReceived
( Пример здесь ).
Я понимаю, что мне нужно сделать , но в примере используется OpenIdConnectAuthentication (из Microsoft.Owin.Security.OpenIdConnect
) вместо Microsoft.AspNetCore.Authentication.AzureADB2C.UI
сервера Blazor *.
Как я могу получить доступ и изменить утверждения в токене после его получения? Поддерживается ли такая вещь в Microsoft.AspNetCore.Authentication.AzureADB2C.UI
или должен переключаться на OpenId?
Ниже приведен шаблон, включенный в базовое c серверное приложение Blazor, но AzureADB2COptions
- это просто строковые значения конфигурации.
public void ConfigureServices(IServiceCollection services)
{
services.AddAuthentication(AzureADB2CDefaults.AuthenticationScheme)
.AddAzureADB2C(options => Configuration.Bind("AzureAdB2C", options));
services.AddRazorPages();
services.AddServerSideBlazor().AddCircuitOptions(o =>
{
if (_environment.IsDevelopment()) //only add details when debugging
{
o.DetailedErrors = true;
}
});
// remaining service configuration
}