ferhatyesilmen Merhaba, bir kullanıcın farkı yerlerden oturum açmasını engellemek ve bu girişimleri kayıt altına almak istiyorum. Daha önce bu şekilde çalışması olan varsa algoritması hakkında bilgi verebilirse sevinirim. İyi çalışmalar.
kzorluoglu Fikilerim: Users tablosuna bir deger olusturup (örnegin user_connected gibi) onu kontrol edebilirsin, yerin veya mekanin önemi kalmaz. Log mantigida zaten basit Log::info('Ne istiyorsan.');
ferhatyesilmen Users tablosunda token alanım var. Buraya kullanıcı giriş yaptıktan sonra ürettiğim benzersiz token i kaydettiriyorum ve bu tokenide sessiona atıyorum. her işlemin başında db'tokeni ise session daki karşılaştırıyorum . aynı değilse bir başkası girmiş oluyor . Ancak burdaki sıkıntım şu ilk kullanıcı sayfasını yenilemezse bir başkasının onun yerine oturum açtığına dair bilgiyi veremiyorum ve bununla ilgili log kaydını tutamıyorum.
mgsmus - Kullanıcı tablonuza last_session_id şeklinde bir alan ekleyin. - Kullanıcı login olunca bu alana mevcut oturum id'sini yazsın.(mesela login event kullanarak) - Daha sonra bir middleware kullanarak mevcut oturum id'si ile veritabanındakini isteklerden (request) önce kıyaslayın. Eğer farklı ise (ki kullanıcı başka yerden girmiş demektir) kullanıcıyı logout yaptırın.
mgsmus ferhatyesilmen yazdıUsers tablosunda token alanım var. Buraya kullanıcı giriş yaptıktan sonra ürettiğim benzersiz token i kaydettiriyorum ve bu tokenide sessiona atıyorum. her işlemin başında db'tokeni ise session daki karşılaştırıyorum . aynı değilse bir başkası girmiş oluyor . Ancak burdaki sıkıntım şu ilk kullanıcı sayfasını yenilemezse bir başkasının onun yerine oturum açtığına dair bilgiyi veremiyorum ve bununla ilgili log kaydını tutamıyorum. Ben yazarken yazmışsınız. Bu şekilde olacak ise real-time bir çözüm üretmeniz lazım. Yani: https://laravel.com/docs/master/events#broadcasting-events