簡體   English   中英

從上下文Symfony中刪除經過身份驗證的用戶

[英]Remove authenticated user from context Symfony

我想知道有關如何刪除剛剛通過身份驗證的用戶的說明,因此就好像沒有用戶通過身份驗證一樣。

我應該刪除會話的內容還是有適當的方法?

你可以試試這個:

$this->get('security.token_storage')->setToken(null);
$this->get('request')->getSession()->invalidate();

基本上,如果密碼的使用時間超過3個月,則需要強制用戶進入change password站點。 只要他不更改密碼,他就不能做其他事情,只能更改密碼。

您不得破壞身份驗證,因為如果用戶未經身份驗證,則永遠無法更改密碼。

用戶更改密碼后,您可以注銷該用戶,然后將其重定向回首頁或登錄頁面。

要使用戶退出系統,您需要使該用戶的令牌和會話無效。 在此問題中,您將找到更多有關手動注銷用戶的信息。

// manual logout 
$this->get('security.token_storage')->setToken(null);
$this->get('request')->getSession()->invalidate();

因此,此代碼將放置在密碼更改表單的$form->isValid()部分中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM