6
votes

YII2: Déconnexion de tout navigateur après un mot de passe de changement d'utilisateur

Je souhaite déconnecter un utilisateur de tout navigateur lorsqu'il change son mot de passe actuel. J'ai mis le code dans ma fonction de contrôleur après avoir enregistré la nouvelle PASSWORD dans la base de données:

$session = Yii::$app->session;
unset($session['id']);
unset($session['timestamp']);
$session->destroy();


0 commentaires

3 Réponses :


0
votes

C'est certainement possible, en utilisant session_id code>. Lorsque l'utilisateur se connecte ailleurs ailleurs, vous pouvez faire cette étape avant de commencer une nouvelle session pour le nouveau login:

// The hard part: find out what $old_session_id is
    $session = Yii::$app->session;
    unset($session['old_id']);
    unset($session['timestamp']);
    $session->destroy();


// Now proceed to create a new session for the new login


0 commentaires

1
votes

problème connexe @ github / yii2:

L'utilisateur reste autorisé malgré la clé d'authentification est modifié # 9718: https://github.com/yiisoft/yiii2/issues/9718


0 commentaires

0
votes

1- sur le changement de mot de passe, vous devez définir une nouvelle auth_key.

2- Changer \ Modèle \ User xxx

"_ identité" est le nom que vous avez passé Définir l'identitécookie dans la configuration principale


0 commentaires