加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

自动将用户登录到PHPMyAdmin

发布时间:2020-12-13 16:53:33 所属栏目:PHP教程 来源:网络整理
导读:我正在为我们的组织编写一个虚拟主机控制面板,并希望能够自动将用户登录到phpMyAdmin. 用户登录控制面板 用户点击“管理数据库” 用户被重定向到PHPMyAdmin并自动登录 最好的方法是什么? 当然,我们不希望以纯文本格式将用户的控制面板帐户密码保存在我们的
我正在为我们的组织编写一个虚拟主机控制面板,并希望能够自动将用户登录到phpMyAdmin.

>用户登录控制面板
>用户点击“管理数据库”
>用户被重定向到PHPMyAdmin并自动登录

最好的方法是什么?

当然,我们不希望以纯文本格式将用户的控制面板帐户密码保存在我们的数据库中.

解决方法

如果不知道一组用户名和密码,我认为没有办法做到这一点.最后,phpMyAdmin只是将会话连接到数据库的中间件.

据我所知,phpMyAdmin本身甚至没有自己的用户表.它基本上尝试使用您提供的凭据登录数据库.如果成功,它会将您的凭据存储在Cookie中,尽管它们已加密.这就是phpMyAdmin在配置文件中要求提供Blowfish密码的原因,以便更安全地存储您的凭据.

什么是最接近你可以得到你想要的是phpMyAdmin实际内置,请参阅单点登录http://wiki.phpmyadmin.net/pma/Auth_types.

auth_type signon is a feature to allow phpMyAdmin to integrate with Single Sign-on (SSO) systems. Administrators can configure their phpMyAdmin installations to get a MySQL username and password from an existing SSO session,allowing the user sign in once to a control panel,for example,and then switching between applications such as phpMyAdmin without the need to log in again.

对我而言,我会为您的每个用户帐户创建一个新用户,例如名为foo的用户可能拥有一个名为foo_mysql的仅限SSO的帐户.然后将foo_mysql及其密码(加密)存储到数据库中.当您的用户尝试从管理门户访问phpMyAdmin时,您可以使用“signon”身份验证类型设置对其进行签名,如http://wiki.phpmyadmin.net/pma/Auth_types#signon中所述.

更安全的方式(但我仍然有自己的疑问)可能是您只在需要时创建一个临时的仅限SSO的帐户.例如,每次用户请求从您的管理门户访问phpMyAdmin时,都会生成一个新的随机foo_4f65ca1d.然后将新凭据发送到phpMyAdmin.

一旦你将它传递给phpMyAdmin,它将是phpMyAdmin,它管理通常的phpMyAdmin方式的凭据.当用户从门户网站注销时,删除临时用户.或者设置一个计划任务,在一段时间后删除它们(可能是与phpMyAdmin会话长度同步的一段时间).

这样,帐户本身就像用户会话一样.您甚至不必在数据库中存储这些凭据,纯文本或加密.

我不是这里的安全专家,但我希望这可以解决一些讨论或其他一些更安全的解决方案.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读