# go-admin **Repository Path**: hxchjm/go-admin ## Basic Information - **Project Name**: go-admin - **Description**: go-admin,web端go-admin-ui - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-10-26 - **Last Updated**: 2024-11-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 说明 用户名密码:admin/123456 ## 1. 逻辑说明 1. 角色是权限的最小分配单元,用户绑定角色后便获得该角色的所有权限。 2. 角色可以配置菜单权限,每个菜单权限里都有增删改查的按钮权限。 3. 角色权限的最小粒度是api接口,配置权限就是绑定api到角色身上。 4. 表关联关系为sys_role->sys_role_menu->sys_menu->sys_menu_api_rule->sys_api,服务端会按照此关系绑定api到角色上,并写入casbin,这就是设置权限的原理 5. 角色设置菜单权限,分为db的修改和casbin的设置,具体流程如下: 1. 勾选菜单权限,通过/api/v1/role/:id的PUT接口将勾选的菜单项目menu_id列表发送到服务端 2. 服务端在sys_role_menu关联表中记录role_id和menu_id的映射,并根据menu_id在表sys_menu_api_rule查询查询api接口,并写入casbin,如下所示 > p user /api/v1/role DELETE #删除权限 p user /api/v1/role GET #查询权限 p user /api/v1/role POST #添加权限 3. 用户每次登录,会通过/api/v1/getinfo接口获取button权限和需要显示的菜单项目 4. 待补充 ## 2.前端代码地址 1. 前端代码:https://gitee.com/hxchjm/go-admin-ui 2. 原始版本指南:https://www.go-admin.dev/