+
95
-

phpmyadmin如何实现tokem自动登录?

phpmyadmin如何实现tokem自动登录?

网友回复

+
15
-

可以使用phpmyadmin官方推荐的单点登录解决方案,编写一个单独的单点登录页面,php代码如下:

<?php
/**
 * Single signon for phpMyAdmin
 *
 * This is just example how to use session based single signon with
 * phpMyAdmin, it is not intended to be perfect code and look, only
 * shows how you can integrate this functionality in your application.
 *
 * @package    PhpMyAdmin
 * @subpackage Example
 */
declare(strict_types=1);

/* Use COOKIEs for session */
ini_set('session.use_COOKIEs', 'true');
/* Change this to true if using phpMyAdmin over https */
$secure_COOKIE = false;
/* Need to have COOKIE visible from parent directory */
session_set_COOKIE_params(0, '/', '', $secure_COOKIE, true);
/* Create signon session */
$session_name = 'SignonSession';
session_name($session_name);
// Uncomment and change the following line to match your $cfg['SessionSavePath']
//session_save_path('/foobar');
@session_start();

/* Was data posted? */
if (isset($_POST['user'])) {
    /* Store there credentials */
    $_SESSION['PMA_single_signon_user'] = $_P...

点击查看剩余70%

+
15
-

先要将config.inc.php中的$cfg['Servers'][$i]['auth_type'] = 'signon';设为signon模式

+
15
-

在config.inc.php中设置auth_type为第三方一键登录,

$cfg['Servers'][$i]['auth_type'] = 'signon';
/* Server parameters */
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['AllowNoPassword'] = false;
$cfg['Servers'][$i]['SignonURL'] = "login.php";
$cfg['Servers'][$i]['LogoutURL'] = "loginout.php";
$cfg['Servers'][$i]['SignonSession'] = "SignonSession";

login.php代码如下:

<?php
         session_set_CO...

点击查看剩余70%

我知道答案,我要回答