Skip to content

权限验证

路由添加LoginAuth中间件,可实现登录验证,

路由添加TokenAuth中间件,可实现登录、菜单授权验证, 权限标识接口路径确定,例如:/api/admin/user,标识位为admin:user

go
// 表示该路由下的所有接口都需要登录
r := rg.Group("/", middleware.LoginAuth())

// 表示该路由下的所有接口都需要登录、菜单授权
r := rg.Group("/", middleware.TokenAuth())

对于路由组下不需要验证的路由

  1. 调整路由顺序,白名单路由在验证路由之前
  2. server/config/admin.go添加白名单
go
// 免登录验证
NotLoginUri: []string{
	// "admin:system:login",        // 登录接口
	// "admin:common:index:config", // 配置接口
},

// 免接口权限验证
NotAuthUri: []string{
	// "admin:system:logout",     // 退出登录
	// "admin:system:menu:menus", // 系统菜单
	// "admin:system:menu:route", // 菜单路由
	// "admin:system:admin:upInfo", // 管理员更新
	// "admin:system:admin:self",     // 管理员信息
	// "admin:system:role:all", // 所有角色
	// "admin:system:post:all", // 所有岗位
	// "admin:system:dept:list", // 所有部门
	// "admin:setting:dict:type:all", // 所有字典类型
	// "admin:setting:dict:data:all", // 所有字典数据
},