没有不值得去解决的问题,也没有不值得去学习的技术!

UCenter修改密码时通知其它应用的密码为空的解决方案!

更新程序之后的通知表!
Ucenter数据库中的用户表列表
Ucenter数据库中的用户表列表
在A应用中修改用户密码之后,在更新用户密码的通知列表中,发现password为空!
在A应用中修改用户密码之后,在更新用户密码的通知列表中,发现password为空!

password为空应该是基于安全考虑了的,分析代码执行流程,解决方案如下,在password中我是采用md5加密的:

UCenter后台更改密码后的通知程序:
ucenter.kchmc.net/control/admin/user.php

//$_ENV[‘note’]->add(‘updatepw’, ‘username=’.urlencode($username).’&password=’);
$_ENV[‘note’]->add(‘updatepw’, ‘username=’.urlencode($username).’&password=’.md5($orgpassword));

UCenter通知程序:
ucenter.kchmc.net/control/user.php

//$_ENV[‘note’]->add(‘updatepw’, ‘username=’.urlencode($username).’&password=’);
$_ENV[‘note’]->add(‘updatepw’, ‘username=’.urlencode($username).’&password=’.md5($newpw));

如果是在A应用里修改密码,而需要通知的其它应用使用独立用户数据库,则需要修改ucenter客户端(uc_client)的相应代码:
kchmc.net/phpsso_server/api/uc_client/control/user.php

//$_ENV[‘note’]->add(‘updatepw’, ‘username=’.urlencode($username).’&password=’);
$_ENV[‘note’]->add(‘updatepw’, ‘username=’.urlencode($username).’&password=’.md5($newpw));

更新程序之后的通知表!
更新程序之后的通知表!

现在有可能kchmc.net与ucenter.kchmc.net已经更新了密码,但是其它的应用有可能还未通知,或者通知失败,现在一种解决方案便是继续等待,或者直接手动在ucenter.kchmc.net通知列表中操作再次通知!

需要长期技术维护或远程问题排查?

我是拥有 15+ 年经验的 PHP / Go 后端工程师,长期关注已有系统维护、Bug 修复、性能优化、服务器排查、WordPress 网站维护和小功能迭代。

如果你的项目遇到以下情况,可以先从一次小问题排查开始合作:

  • ✅ PHP / Laravel / Yii2 老项目无人维护
  • ✅ Go / Gin 后端接口需要排查或优化
  • ✅ WordPress 网站访问慢、报错或插件冲突
  • ✅ Nginx / MySQL / Redis / Linux 服务器异常
  • ✅ CDN / Cloudflare / DNS / HTTPS 配置问题
  • ✅ 需要长期远程技术支持或兼职维护

更多介绍请查看:关于我 & 合作

微信:13980074657
邮箱:shuijingwanwq@gmail.com
Telegram:@shuijingwan
GitHub:https://github.com/shuijingwan

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理