Blazor .NET 8中如何添加AddMicrosoftIdentityConsentHandler?
在Blazor .NET 8中集成AddMicrosoftIdentityConsentHandler的正确方式
核心代码实现
.NET 8重构了Blazor的服务注册API,原AddServerSideBlazor()被替换为AddInteractiveServerComponents(),但AddMicrosoftIdentityConsentHandler()扩展方法可直接链式调用在后者之后,代码如下:builder.Services.AddInteractiveServerComponents() .AddMicrosoftIdentityConsentHandler();该扩展方法的底层服务逻辑未发生改变,只是适配了.NET 8新的组件注册入口,用于处理身份认证流程中的权限同意环节。
针对B2C调用下游API的补充配置(附带需求)
- 先确保已正确配置Azure AD B2C认证服务:
builder.Services.AddMicrosoftIdentityWebAppAuthentication(builder.Configuration, "AzureAdB2C"); - 若需调用下游API,需启用令牌获取能力并配置令牌缓存:
builder.Services.AddMicrosoftIdentityWebAppAuthentication(builder.Configuration, "AzureAdB2C") .EnableTokenAcquisitionToCallDownstreamApi() .AddInMemoryTokenCaches(); - 在Blazor组件中,通过注入
IAccessTokenProvider获取令牌时,ConsentHandler会自动触发权限同意流程(当需要时)。
- 先确保已正确配置Azure AD B2C认证服务:
内容的提问来源于stack exchange,提问作者Yan D
相关产品推荐
相关产品推荐

