【发布时间】:2020-03-04 22:37:15
【问题描述】:
我正在使用 ASP.NET MVC5 实现一个 Web 应用程序。我没有使用传统的 MVC 身份验证和授权。我选择使用Sessions,因为我的应用程序将被极少数用户使用,并且仅在本地使用。
我在 gloab.asax 中的 Application_Start() 中设置了一个 Session["LoggedUser"]。 Session["LoggedUser"] 的值是在登录时设置的。然后,我在多个操作(例如 Edit 和 Delete 等)中使用if 条件检查了Session["LoggedUser"] 的值。如果它等于空白字符串,则用户未在该操作/页面上获得授权,反之亦然。此类页面不会被直接访问。
现在,在传统的 MVC 授权和身份验证中,[AllowAnonymous]、[Authorize] 和 [Authorize(Roles="Admin")] 的使用非常干净。这些标签可以放在控制器中的任何操作上,授权将在下面处理。我试图找到在我的基于会话的身份验证和授权中使用的等价标签。也许,在 MVC 应用程序中使用会话的一种有效/更好的方式。请指导我。
提前致谢。
【问题讨论】:
标签: asp.net asp.net-mvc authentication session authorization