2011-05-22 43 views
3

我已經按照這個教程:的Symfony 2:數據庫中更改用戶不退出導致

http://symfony.com/doc/current/book/security.html

使用自定義的用戶實施的UserInterface類,但是我發現,在數據庫中調整密碼(比如說用戶在他們認爲是被壓縮的基礎上改變了它),我發現類/ Symfony只是更新登錄。只有當用戶名被改變時,用戶纔會註銷。無論如何改變這種行爲?

+0

有一件事我應該提到:運行調試(app_dev.php)版本時,我可以在底部看到它會從「tim」更改爲「tim(* not auth *)」,只要我進行數據庫更改;很顯然它注意到了它。 – 2011-05-22 00:40:39

回答

0

不理解你的問題。如果你的問題是當你改變任何值時用戶會話有多接近?可以在您的操作userUpdate實施例行程序驗證您的用戶名有變化,根據您的需要,您可以重新啓動會話或關閉它,如果這就是你想要的

+0

如何檢測所有打開的會話?是的,我可以獲得進行更改的用戶的會話,但是我更多地考慮密碼是否受損,然後由(希望是正確的)用戶更改,我希望在該帳戶下登錄的其他人都可以註銷? – 2011-09-06 20:48:56

0

使用基於cookie的會話沒有辦法做到這一點因爲會話存儲在用戶計算機上。

您必須切換到基於數據庫的會話。因此,您可以識別打開的會話並刪除它們以取消對用戶的身份驗證。