同時ログイン機能(BE)

このコミットが含まれているのは:
守矢諏訪子 2022-01-24 22:25:19 +09:00
コミット cd20baa188
4個のファイルの変更18行の追加11行の削除

ファイルの表示

@ -19,7 +19,7 @@ BROADCAST_DRIVER=log
CACHE_DRIVER=file
QUEUE_CONNECTION=sync
SESSION_DRIVER=file
SESSION_LIFETIME=120
SESSION_LIFETIME=150
MEMCACHED_HOST=127.0.0.1

ファイルの表示

@ -19,7 +19,7 @@ BROADCAST_DRIVER=log
CACHE_DRIVER=file
QUEUE_CONNECTION=sync
SESSION_DRIVER=file
SESSION_LIFETIME=120
SESSION_LIFETIME=150
MEMCACHED_HOST=127.0.0.1

ファイルの表示

@ -10,11 +10,9 @@ use Illuminate\Support\Facades\Log;
use App\Models\LoginLimits;
// use App\Models\LoginLimits;
trait AuthenticationTrait {
private function makeSession ($guard, $db) {
session()->regenerate();
//session()->regenerate();
if (!session()->has($guard)) {
// 認証されたデータのpasswordとremember_token以外を把握する
@ -36,6 +34,15 @@ trait AuthenticationTrait {
return ['status_code' => 200, 'params' => ['id' => $login_user_datum['id']]];
}
}
if (session()->has($this->getGuard())) {
if (null !== ($get = $this->getModel()->where('id', session()->get($this->getGuard())['id'])->first())) { // トークンがある場合
// セッションを想像する
$login_user_datum = $this->makeSession($this->getGuard(), $get->toArray());
return ['status_code' => 200, 'params' => ['id' => $login_user_datum['id']]];
}
}
return ['status_code' => 202];
}
@ -98,11 +105,11 @@ trait AuthenticationTrait {
}
// 既にセッションがあれば、ログアウトします。
if (Session::has('children')) Session::forget('children');
if (Session::has('fathers')) Session::forget('fathers');
if (Session::has('admins')) Session::forget('admins');
unset($_COOKIE['remember_token']);
setcookie('remember_token', '', time() - 3600, '/', $_SERVER['HTTP_HOST'], 0, 1);
//if (Session::has('children')) Session::forget('children');
//if (Session::has('fathers')) Session::forget('fathers');
//if (Session::has('admins')) Session::forget('admins');
//unset($_COOKIE['remember_token']);
//setcookie('remember_token', '', time() - 3600, '/', $_SERVER['HTTP_HOST'], 0, 1);
if ($r->remember_token == 'true') {
$token = bin2hex(random_bytes(24));

ファイルの表示

@ -31,7 +31,7 @@ return [
|
*/
'lifetime' => env('SESSION_LIFETIME', 120),
'lifetime' => env('SESSION_LIFETIME', 150),
'expire_on_close' => true,