WEB系统访问权限管理模型

1 权限系统模型

日常开发的系统包含很多功能,但对于不同的用户只能访问不同的功能。因此这就涉及到了权限管理。权限管理都是针对用户进行,因此前置条件是用户登陆到系统中,最终有一个身份,最终根据这个身份来管理。所以这类权限管理应该包含如下实体。

  • 资源:我们系统中所包含的各种功能(系统接口、链接等)。例如查看系统访问记录、更新系统用户资料。
  • 权限 :可以操作资源的能力。例如查看系统访问记录权限。
  • 角色 :一个系统中有很多权限,而实际在访问系统时,可拥有的权限可能是权限集合的一个子集。因此通过角色来关联可拥有的权限。例如访客角色只能查看系统公开数据。
  • 用户:一个真实的用户,登陆到系统中会有一个系统账号。最终这个用户账号会关联一个角色,从而可以使用部分系统功能,最终对用户访问系统能够进行限制。

WEB系统访问权限管理模型_第1张图片

用户关联角色相当于是授权。这之前需要获取用户登陆系统的身份账号。随后将其与角色关联。这种固定关联需要在系统中一个个指定。

除了固定关联外,还可以进行分类关联。即将满足设定条件的账号与指定的角色相关联。

2 权限系统配置

有了权限系统模型后,并开发完系统,接着就是要对系统进行配置。即配置模型中提到的4项。

  • 添加资源:配置系统中要访问的接口。
  • 添加权限:将权限和资源关联。
  • 创建角色:将角色和资源绑定。
  • 授权:在角色下添加指定的用户账号。或者配置账号筛选条件,是满足条件的账号均得到授权。

3 权限系统接入

做权限系统的目的就是能够有一套统一的系统,使得不同的服务都可以接入,从而避免重复开发权限管理的工作。接入就是在访问系统前,对请求进行拦截,去验证这次访问是否有权限。 例如JavaWeb中就是增加 Filter,来进行前置验证。权限离不开账号,因此权限Filter前应先有账号Filter,例如先访问单点登陆系统获取登陆信息,随后再进行鉴权。

4 总结

权限系统是一个常见的系统,本文介绍了权限模型的基本概念,根据模型,可以自己开发出简单的权限管理系统。理解了基本模型日常使用也会得心应手。

你可能感兴趣的:(系统)