سلام دوستان خسته نباشید
وقتی یک کاربر در چند دستگاه دیگه وارد حساب خودش شده
حالا توی یه دستگاه دیگه میاد و عملیات ریست پسورد رو انجام میده
توی این حالت باید از حسابش در دستگاه های دیگه خارج بشه
این عمل چطور انجام میشه؟
در api لاراول passport
توکن رو منقضی میکنین با استفاده شیوه زیر
https://stackoverflow.com/a/42866949/7908390
یا سرچ کنین revoke passport tokens
@tefo.ha27
ممنون
اما این برا حالتی هست که یوزر لاگینه
وقتی لاگین نیست و با ایمیلش میخواد ریست پس کنه چی؟
یه نگاه به جدول oauth_access_tokens بکن اونجا میتونی هرچی توکنه مربوطه به اون یوزر هستش رو revokeش کنین
یعنی اون ستون ها برابر با یک یا همون true قرار بدین
درود
Laravel also provides a mechanism for invalidating and "logging out" a user's sessions that are active on other devices without invalidating the session on their current device. When the logoutOtherDevices method is invoked, the user's other sessions will be invalidated entirely, meaning they will be "logged out" of all guards they were previously authenticated by
ابتدا میدلور "Illuminate\Session\Middleware\AuthenticateSession" رو در فایل "app/Http/Kernel.php" و قسمت web آنکامنت کنید.
'web' => [
// ...
\Illuminate\Session\Middleware\AuthenticateSession::class,
// ...
],
بعدش میتونید از متد logoutOtherDevices در فِساد Auth استفاده کنید.
use Illuminate\Support\Facades\Auth;
Auth::logoutOtherDevices($password);
@ali.bayat
سلام ممنون روشی که من مبخوام برای روت های api به کمک passport هستش
روشی که شما گفتید برای حالت وب هست درسته؟
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟