ASP.Net MVC权限设置

作者:王文青
开发工具与关键技术:VS+ASP.Net MVC +SQL Server

数据库的设计:

用户表SYS_Users
用户IDUsersID
用户类型IDUsersTypesID
账号AccountNumber
密码Password
用户姓名UsersName
手机号码Phone
头像路径AvatarPath
创建时间CreationTime
用户类型表SYS_UserTypes
用户类型IDUsersTypesID
用户类型MCUserTypesName
描述Describe
系统模块功能表SYS_SystemModuleFunction
系统模块功能IDSystemModuleFunctionID
父IDFarID
系统模块功能MCSystemModuleFunctionName
路径URL
代码名称CodeName
启用否WhetherToEnable
排序Sort
描述Describe
权限组表SYS_UserPermissions
权限组IDAuthorizationGroupID
用户类型IDUsersTypesID
模块功能IDModuleFunctionID
添加人IDToAddPeopleID
添加时间AddTheTime
启用否WhetherToEnable

使用ActionFilterAttribute过滤类在某个方法前使用

[Permissions(Code = "代码名称")]//执行方法前使用
 public ActionResult TeamSpecifiedTimeSetting{
          return View();
}

建立Permissions .cs 内容如下

 public class Permissions : ActionFilterAttribute{//继承过滤类
/// <summary>
    /// 获取Code名称
    /// </summary>
    public string Code{ 
        get; 
        set; 
    }
public override void OnActionExecuting(ActionExecutingContext filterContext)
    {
bool isstate = true;
if(isstate){
//逻辑判断代码
    }else{
   filterContext.Result = new RedirectResult("url" + "没有该模块的权限")
    }
         }
            }

项目总结:
在这次项目中,学到用过滤类(ActionFilterAttribute)做权限的验证,使用cookie存放查询出的内容,在到cookie查询需要的权限,提高性能,减少提交。虽然项目是升级,看别人的代码,然后使劲改,最恶心的if else多层嵌套写了几千行,代码看着我一脸懵逼,代码可读性非常低。代码应该减少if else嵌套,一样的代码用封装,提高代码的可读性,维护性。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
ASP.NET MVC 是一种用于构建Web应用程序的开发框架,其中权限管理系统是一个重要的功能。ASP.NET MVC 权限管理系统用于控制用户在系统中所拥有的特定权限以及能够访问的特定功能和功能模块。 ASP.NET MVC 权限管理系统通常包括以下几个关键组件: 1. 用户认证:用户在系统中登录时,需要进行身份验证以确保其身份的合法性。身份验证可以通过用户名和密码,或者通过其他身份验证方式来实现。 2. 用户授权:在用户认证通过之后,需要对用户进行授权,确定其在系统中所具有的特定权限。这可以通过角色或权限的方式进行管理,例如管理员、普通用户等。 3. 角色管理:系统管理员可以创建和管理各种角色,将不同的权限集分配给不同的角色。这样就可以通过简单的角色分配来控制用户在系统中的访问权限。 4. 权限管理:系统提供了细粒度的权限管理机制,可以控制用户对具体功能和功能模块的访问权限。管理员可以对每个角色或用户进行权限分配,确定其能够访问的具体功能。 5. 安全性管理:ASP.NET MVC 权限管理系统还需要考虑到安全性方面的问题,包括密码的加密存储、用户会话管理、输入验证等。这些措施可以确保系统在处理用户请求时的安全性。 总之,ASP.NET MVC 权限管理系统是在ASP.NET MVC框架上构建的一种用于管理用户权限和访问控制的系统。通过用户认证、用户授权、角色管理、权限管理和安全性管理的综合运用,可以确保系统只允许授权用户访问特定功能和功能模块,提高系统的安全性和可用性。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值