[英]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.