B2C商城
角色权限管理
TPshop平台权限管理流程:
权限控制逻辑: 后台每一个操作都要通过控制器方法实现,每一个页面请求都会验证有没有分配权限资源,当新增一个控制器
或缺少某个操作权限时请添加权限资源(具体添加方法往下看)
添加权限资源
以超级管理员账号登录平台后台后, 在左侧菜单"设置"->"权限管理" -> "权限资源列表" -> 选择"添加商家资源权限"/"平台资源权限"
输入权限资源名称后, 选择一个所属分组(所属哪个模块,即左边一级菜单) 然后选择权限码(由控制器和操作方法组成)会在下面列出该资源的权限码(如上图), 一个权限资源可以同时添加多个权限码. 添加完成之后点击"确认提交" 以上权限资源添加完之后, 为角色分配权限资源.
用户分配角色, 角色添加权限
1)、平台新增一个后台操作人员就需要为这个用户分配一个角色, 某个角色有相应的操作权限(超级管理员拥有系统所有操作权限). 给用户分配了角色之后才能做相关的操作.
2)、平台默认一个admin的超级管理员, 该用户不可删除,可以修改密码.
例如, 我们为平台新增一个编辑文案的用户为例.
第一步、新增"文案编辑"角色
以管理员账号登录平台, 在"权限"->"角色管理"->"添加角色"(如果发现下面的权限资源缺失, 请参考第一步"添加权限资源"添加后再来分配权限资源)
注意: 从新分配的权限的角色,记得退出后台重新登陆才生效
第二步、新增用户
在"权限" -> "管理员列表" -> "新增管理员"
第三步、登录后台
现在, 我们以"wenan"这个用户登录后台后, 平台显示的是"文案编辑"相关的操作权限
常见问题:
问题一: 新添加的一个管理员, 分配了角色, 但是没有显示菜单
原因分析: 如果你是TPshop2.x 版本, 那么请检查你的权限资料列表
在"权限资源列表"查看权限资源前缀包含了类似"XXController", 如果包含了"Controller"那么你的权限资源还是旧的, 请联系官方更新新版权限资源.
问题二: ①操作时提示"您没有操作权限[System@index], 请联系超级管理员分配权限"
原因分析: 提示已经很明显, 您缺少相应的操作权限
解决办法: (如上图)将缺失的权限资源"System@index" 拷贝到权限资源列表搜索, 如下图(如果没有搜索出来, 请参考以上步骤添加权限资源), 这里我们搜到的结果是"网站设置"
在"角色管理" 菜单, 找到用户所在的角色, 编辑该角色的权限, 将"网站设置"赋给该角色,保存成功后退出重新登录即可.
②操作时提示"店铺等级没有操作权限[Store@plate_handle], 请联系平台管理员分配权限"
首先确认是否有此权限资源, 查看方法参考以上第①步骤, 如果已经拥有此权限资源
查看当前店铺等级所属等级, 查看方法: 商家后台->店铺->店铺设置
然后登录平台后台, 设置店铺等级权限,
商城->店铺等级->找到"店铺等级"->将此权限赋予该等级.
操作完成之后清理缓存, 商家重新登录即可
常见问题三: 给某个用户赋予了角色, 但是部分菜单没有显示出来
例如以下会员, 赋予了管理用户角色, 但是缺少了"提现申请" , "充值记录"菜单. 那说明你缺少了这两个菜单权限.
也许有童鞋有疑问, 我明明给用户赋予了权限, 为什么没权限呢?
接下来我们检测该用户是否拥有这两个菜单权限.
首先: 以超级管理员用户登录后台, 查看"充值记录"的请求URL
可以看到, 提现申请请求的是URL是: index.php?m=Admin&c=User&a=withdrawals.
细心的童鞋会发现, 我们的权限资源其实就是c和a参数的组合, 那么, 提现申请的权限应该是User@withdrawals(不明白这里的,请把这个文档从头到尾 详细看一遍).
既然如此, 我们搜索这个权限资源对应的名称, 在"权限资源列表"菜单搜索"withdrawal"关键词, 发现该权限名字是"转账记录"(如下图)
再来看看当前用户所属角色: 会员管理(如下图)
我们查看该角色并没有设置"转账记录"权限, 那么我们勾选之后,点击保存
保存之后, (用超级管理员在总平台后台清理缓存, 这一步一定要做, 否则可能因为缓存问题,用户可能仍然没有权限) 刚刚的用户重新登录看看吧.
常见问题四: 商家后台, 超级管理员能上传图片, 普通管理员无法上传图片(后端配置项没有正常加载,上传插件不能正常使用),如下图:
1.先检查application\config.php下的app_trace是否已经设置为false (一般修改此处就可以了, 如果超级管理员可以, 普通管理员不行, 请继续往下看)
2.检查该角色是否拥有"文件上传权限"
如果没有, 请按照添加权限资源步骤添加此权限, 此权限资源内容如下: