第2个BUG临时解决思路:
目前实现:
客户端后台用户管理地方,不能编辑服务端的系统组用户的密码。但是,还有一个衍生出来的问题就是,客户端B的系统组用户在客户端C登录后,客户端C就可以在后台编辑这个帐号的密码了。达到可以控制客户端B这个帐号的权限了…以上问题除非是在站点中了木马病毒情况下 就可以通过这种方式修改服务端或者其他客户端的帐号密码达到一定的权限,引起更大的破坏。正常情况下,运营方面需要进行监督一下。
打开uc_client/model/user.php文件
将所有的
替换成:
- uid,username,groupid,password,
打开uc_client/control/user.php文件,找到:
- return array('uid' => $user['uid'], 'username' => $user['username'], 'email' => $user['email']);
替换成:
- return array('uid' => $user['uid'], 'username' => $user['username'], 'groupid' => $user['groupid'], 'email' => $user['email']);
打开admin/usermanager.php,找到:
- S::gp(array('uid'),'GP',2);
下方添加代码:
- //获取服务端用户信息 by rickyleo
- $serverUserInfo = array();
- $serverPwdAble = '';
- require_once R_P.'uc_client/uc_client.php';
- $serverUserInfo = uc_user_get($uid, '1');
- $serverPwdAble = ($serverUserInfo['groupid'] == '3') ? ' disabled="disabled" value="******"' : '';
- $pwdDisableReason = $serverPwdAble ? '<font color=red> 该帐号是用户中心服务端系统组用户.客户端无法编辑该帐号的密码!请到服务端站点后台进行修改密码!</font>' : '';
- //end
打开template/admin/usermanager.htm文件,找到:
- <tr class="tr1 vt">
- <td class="td1">新密码</td>
- <td class="td2"><input type="text" class="input input_wa" name="password" value='' /></td>
- <td class="td2"><div class="help_a">输入想要替换的密码。<font color=blue>如不更改请留空</font></div></td></tr>
- <tr class="tr1 vt">
- <td class="td1">确认密码</td>
- <td class="td2"><input type="text" class="input input_wa" name="check_pwd" /></td>
- <td class="td2"><div class="help_a">再次输入密码。<font color=blue>如不更改请留空</font></div></td>
- </tr>
替换成:
- <tr class="tr1 vt">
- <td class="td1">新密码</td>
- <td class="td2"><input type="text" class="input input_wa" {$serverPwdAble} name="password" value='' />{$pwdDisableReason}</td>
- <td class="td2"><div class="help_a">输入想要替换的密码。<font color=blue>如不更改请留空</font></div></td></tr>
- <tr class="tr1 vt">
- <td class="td1">确认密码</td>
- <td class="td2"><input type="text" class="input input_wa" {$serverPwdAble} name="check_pwd" /></td>
- <td class="td2"><div class="help_a">再次输入密码。<font color=blue>如不更改请留空</font></div></td>
- </tr>
客户端后台编辑在服务端是系统组用户的帐号时,密码输入框是disabled并且显示*号,并给出提示。效果图如下: