Campus Campus
首页
文档
案例
Gitee (opens new window)
GitHub (opens new window)
首页
文档
案例
Gitee (opens new window)
GitHub (opens new window)
  • Campus介绍

  • 快速入门

  • 参考手册

    • 开发规范
    • 分页实现
    • 权限设计
      • 权限方法
      • 使用示例
    • 日志系统
  • 更新日志

  • 文档
  • 参考手册
zhiyuan
2023-05-16
目录

权限设计

# 权限方法

@PreAuthorize注解用于配置接口要求用户拥有某些权限才可访问,它拥有如下方法

方法 参数 描述
hasPermi String 验证用户是否具备某权限
lacksPermi String 验证用户是否不具备某权限,与 hasPermi逻辑相反
hasAnyPermi String 验证用户是否具有以下任意一个权限
hasRole String 判断用户是否拥有某个角色
lacksRole String 验证用户是否不具备某角色,与 isRole逻辑相反
hasAnyRoles String 验证用户是否具有以下任意一个角色,多个逗号分隔

对比若依增加

  • @PreAuthorize("@ss.resourceAuth()")

    验证用户的接口权限

# 使用示例

  1. 数据权限示例。
// 符合system:user:list权限要求
@PreAuthorize("@ss.hasPermi('system:user:list')")

// 不符合system:user:list权限要求
@PreAuthorize("@ss.lacksPermi('system:user:list')")

// 符合system:user:add或system:user:edit权限要求即可
@PreAuthorize("@ss.hasAnyPermi('system:user:add,system:user:edit')")
1
2
3
4
5
6
7
8
  1. 角色权限示例。
// 属于user角色
@PreAuthorize("@ss.hasRole('user')")

// 不属于user角色
@PreAuthorize("@ss.lacksRole('user')")

// 属于user或者admin之一
@PreAuthorize("@ss.hasAnyRoles('user,admin')")
1
2
3
4
5
6
7
8

​

  1. 接口权限
@PreAuthorize("@ss.resourceAuth()")
1

角色接口分配在后台管理:角色管理 -> 分配接口

使用注意:要在 Controller 类上加上注解

@ApiResource(name = "信息墙api", appCode = "campus", resBizType = ResBizTypeEnum.BUSINESS)
1

权限提示

超级管理员拥有所有权限,不受权限约束。

最后更新: 2023/06/30, 0:06:00
分页实现
日志系统

← 分页实现 日志系统→

Theme by Vdoing | Copyright © 2023-2024 oddfar | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式