我在我的创业公司中有这个:
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseHsts();
}
app.UseHttpsRedirection();
app.UseStaticFiles();
app.UseSwaggerWithUi();
app.UseAuthentication();
app.UseMiddleware<SomeMiddleware>();
app.UseMvc();
}
用户验证后,我需要添加一些额外的声明,但是中间件Invoke函数总是在Auth之前触发(HttpContext.User.Identity.IsAuthenticated为false)。但当它到达控制器时,用户已经通过身份验证。
这里有什么想法吗?我尝试在调用app.UseMiddleware
后放置“app.UseAuthentication()”,但没有任何影响。
我目前正在使用多个身份验证方案。我不确定是否会产生影响。
app.UseMiddleware<SomeMiddleware>();
移动到了app.UseAuthorization()
之后。 - jpgrassi