Vla*_*tov 0 c# asp.net-identity asp.net-core asp.net-core-middleware
我有一个 ASP.NET Core 沙箱项目。我已经添加了IdentityDbContext。注册页面工作正常。登录/注销页面工作正常。(可以通过为SignInManager.IsSignedIn(User)用户显示的html看到)
我有一个控制器标有[Authorize]:
[Authorize]
public class MyTestController : Controller
{
...
}
Run Code Online (Sandbox Code Playgroud)
当我第一次尝试导航到它时 - 它工作正常(重定向到登录页面)
但成功登录后,它再次重定向回使用相同链接登录: https://localhost:44359/Identity/Account/Login?ReturnUrl=%2FMyTest
这是我的代码Startup.cs:
[Authorize]
public class MyTestController : Controller
{
...
}
Run Code Online (Sandbox Code Playgroud)
以前,我为登录、注销、注册添加了脚手架身份项。没有[Authorize]工作良好的控制器。
Kia*_*aha 10
在我看来,您的中间件的顺序不正确。ASP.NET 需要知道用户是否首先通过身份验证,以便确定它是否有权进行请求。尝试交换这两个:
app.UseAuthentication();
app.UseAuthorization();
Run Code Online (Sandbox Code Playgroud)
微软关于这个主题的文档:配置身份
| 归档时间: |
|
| 查看次数: |
4686 次 |
| 最近记录: |