632 Star 11.7K Fork 2.8K

小诺 / Snowy

 / 详情

角色资源授权关键参数未赋值

已完成
创建于  
2023-05-10 09:48

当前使用版本、分支(必填,否则不予处理)

2.2.7

该问题是如何引起的?(确定最新版也有问题再提!!!)

权限控制-》角色管理-》选择 超管管理员 授权-》授权资源 报非超管角色不可被授权系统模块菜单资源
输入图片说明

代码排查发现关键参数id未赋值
SysUserServiceImpl类 786行
输入图片说明

重现步骤(如果有就写完整)

报错信息

非超管角色不可被授权系统模块菜单资源

bugfix

对sysUserIdParam 赋值

public void grantResource(SysUserGrantResourceParam sysUserGrantResourceParam) {
        String id = sysUserGrantResourceParam.getId();
        SysUserIdParam sysUserIdParam = new SysUserIdParam();
        sysUserIdParam.setId(id);
        List<String> roleIdList = this.ownRole(sysUserIdParam);
        if(ObjectUtil.isEmpty(roleIdList)) {
            throw new CommonException("非超管角色用户不可被授权系统模块菜单资源");
        }

评论 (7)

libai4hao 创建了任务

数据库中菜单表内,业务这个模块的code,由system改为biz看一下,最新版更新过了,可能你没更新sql

我使用的snowy-cloud也有同样的情况,输入图片说明

修改后还是会报错,日志中执行sql如下:

SELECT * FROM sys_relation WHERE OBJECT_ID = null AND CATEGORY = 'SYS_ROLE_HAS_RESOURCE'

参数OBJECT_ID 应该是必填的

对应的代码
输入图片说明
输入图片说明
输入图片说明
输入图片说明

一样的逻辑,改了还不行吗

如果不行,你从下载代码,启动,登录哪个账号,创建什么角色,给谁授权,写下,我们来复现。

抱歉看错了,没有问题。我是在用户管理非管理员角色授权出错了。正常 :grin:

你好请问, 【用户管理】中 【授权管理】 是不能设置的吗?使用的是【snowy-cloud】
新建用户-添加角色-授权管理-非超管角色用户不可被授权系统模块菜单资源
输入图片说明

输入图片说明

输入图片说明

登录 后才可以发表评论

状态
负责人
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
参与者(3)
1980003 xiaonuobase 1614682939
Java
1
https://gitee.com/xiaonuobase/snowy.git
git@gitee.com:xiaonuobase/snowy.git
xiaonuobase
snowy
Snowy

搜索帮助