Skip to content

访问权限

TIP

访问权限用于控制用户对资源的访问,主要分为后端接口和前端页面两种,其中页面是否可以访问通过菜单管理进行了实现,所以此处访问权限对前端只关注处理页面中的元素, 例如按钮、表单项、表格列等。

权限类别

常规角色鉴权接口

该类型的接口如果配置完毕后,而没有进行任何的权限集分配的话,那么就只允许超级管理员进行访问而已,如果要使用该类型的接口,那么必须进行权限的分配。

讲一个接口设置为常规角色鉴权接口,通常有下列两种方式:

  • 可视化配置,通常一个接口不进行特殊配置的话,默认就是需要进行鉴权的。通过管理后台对接口进行配置,此时这个接口作为一类权限资源,可以通过分配给角色进行控制。
  • 借助权限码实现,通过在Controller类或方法上添加@PermCode注解,就可以将访问接口纳入权限码的管理中,此时会根据角色所拥有的权限码进行鉴权。

用户可以访问的方式:

  • 用户作为超级管理员账号的话,拥有对所有用户、角色、菜单、接口、权限的完全控制权,就算不进行配置也默认拥有所有权限
  • 用户拥有某个角色,并且角色拥有某个权限码,那么用户就可以访问这个权限码对应的接口
  • 用户拥有某个角色,并且角色拥有对应的访问权限资源,那么用户就可以访问这个对应的接口

例子:

java

公开可访问接口

公开可访问接口,无需进行角色权限校验以及不会进行用户信息的收集,此类型接口不会获取用户信息,也不可以强制必须获取用户信息,例如登录接口、注册接口、获取验证码接口、获取短信接口等。

通常用下列集中方式标识接口为公开可访问的:

  • bootx.starter.auth.ignoreUrls中配置该接口路径,在访问是将不会进行鉴权
  • Controller类上添加@IgnoreAuth注解,该注解标识该Controller下的所有接口都不需要鉴权
  • Controller类中的方法上添加@IgnoreAuth注解,该方法对应的接口将不需要鉴权
  • 在可视化界面中,配置接口为公开可访问的类型

例子:

123

java

登录可访问接口

登录可访问接口,该类型的接口无需进行权限的分配,也就是说它不需要将权限分配给对应的角色等等,只要访问该接口的用户已登录了,那么就有访问该接口的权限了。

通常用下列集中方式标识接口为公开可访问的:

  • Controller类上添加@IgnoreAuth(ignore = false, login = true)注解,该注解标识该Controller下的所有接口都只需要登录即可访问
  • Controller类中的方法上添加@IgnoreAuth(ignore = false, login = true)注解,该方法对应的接口将需要登录即可访问
  • 在可视化界面中,配置接口为登录可访问的类型

可视化配置

权限码控制

前端控制

其他情况

系统超级管理员

系统超级管理员拥有最高权限,拥有对所有用户、角色、菜单、接口、权限的完全控制权,就算不进行配置也默认拥有所有权限。

登录即可访问


本文档内容版权属于济南易杯光年软件技术有限公司,保留所有权利