Go快速开发框架2.6.0版本更新内容快速了解
GoFly企业版框架2.6.0版本更新内容较多,为了大家能够快速了解,本文将把更新内容列出详细讲解。本次更新一段时间以来大伙反馈的问题,并且升级后台安全认证机制,增加了RBAC权限管理及系统操作日志等提升后台数据安全性。
更新明细:
- 修改了所以前端页面的Message提示状态设计,前端基础框架功能界面细节全部查找修复,并优化了UI
- 优化表格顶部搜索项页面自适应布局,当界面宽度变小时可左右滑动。
- 增加了表格列设置
- 表单多图组件可以拖动调整顺序
- 添加了了RBAC权限管理,每个接口都可以自定义是否需要权限认证才能访问,不需要验证的也是简单在接口所在文件结构体设置即可忽略认证。
- 添加了系统操作日志,方便系统追踪使用,删除只能是一个月前的数据,系统保证一个月的操作日志,也可以通过RBAC权限设置,把删除日志指定给某个角色。在菜单中添加权限数据,然后再角色中统一管理。
- 为了方便开发者统一的把接口登录验证设置和RBAC权限验证方式归到一起。在2.5.8版本是在配置文件中设置忽略登录接口及模块,在2.6.0版本之后就不在配置文件设置了,直接在当前接口中文件结构体中设置忽略验证接口,方法是RBAC权限一致,本文下面后详细介绍。
- 对后端的router中间件进行微调,把TTL内的最大访问数放到配置文件可以动态修改,对路由请求结果进行优化。
- 修改了大伙提问题修改,如字典获取数group_id条件、admin端素材管理的系统附件编写等问题。
- 更新代码仓打包工具,当你填写好包名后自动找到和包名相关数据表、后端代码文件、前端代码文件目录等
更新功能主要讲解:
权限和登录
1.RBAC权限和登录认证
- 不需要权限认证,在文件结构体中添加权限认证,例如在后台的system的用户账号account.go中,忽略getList和GetRole(注意搜字母大小写都可以)这样这两个接口就不需要权限认证即可访问了,NoNeedAuths设置代码如下:
// 用户账号管理
type Account struct{ NoNeedAuths []string }
func init() {
fpath := Account{NoNeedAuths: []string{"getList", "GetRole"}}
gf.Register(&fpath, fpath)
}
- 不需要登录认证就能访问的接口,在文件结构体中添加登录认证,例如在后台的user的用户登录index中,忽略login和logout(注意搜字母大小写都可以)这样这两个接口就不需要权限认证即可访问了,NoNeedLogin设置代码如下:
type Index struct {
NoNeedLogin []string //忽略登录接口配置-忽略全部传[*]
NoNeedAuths []string //忽略RBAC权限认证接口配置-忽略全部传[*]
}
// 初始化路由
func init() {
fpath := Index{NoNeedLogin: []string{"login", "logout"}, NoNeedAuths: []string{"*"}}
gf.Register(&fpath, fpath)
}
2.后台菜单中添加权限设置数据
3.在权限在角色中授权
这样就完全成了权限设置。
操作日志
操作日志可以查看每个请求数据
在线体验
- admin端:https://spl.goflys.cn/webadmin/
- business端:https://spl.goflys.cn/webbusiness/