スマホブラウザでタスクキルをしてもログイン状態が維持できるようにしたい
現在React, Expressの構成でWebアプリケーションを開発しています。
PCブラウザでは正常に動作するのですが、スマホブラウザ(IOS, Android,全ブラウザ)でアクセスするとタスクキル時にログイン状態を維持できなくなります。
認証機能はJWTをCookieに保存しリクエスト毎に確認する。有効期限が切れていればリフレッシュトークンを使い新しいアクセストークンを取得する。
といった普通のJWT認証です。
しかしなぜかスマートフォンのブラウザアプリをタスクキルするとログアウト状態になってしまいます。
"スマホブラウザアプリのタスクキル時"というどうにもデバッグがしにくい環境でのバグなので、原因がどこにあるのか検討も付きません。
端末はIOS14のIPhone2台とAndroid1台で検証しました。
別の環境でも試そうと思い、以前作成したRails単体のWebアプリで試したところ、こちらもタスクキル時にログアウト処理が走るようになっていました。
こちらはdeviseを使用したsession-cookieでの認証です。
開発時の2021年6月頃はこのような挙動はしていなかったと思います。
認証方法の違う2つのアプリケーションで確認できたためコードレベルのバグではないと思います。
タスクキル時にCookieが削除されるような仕様変更でもあったのでしょうか?
これが原因かも?と思う方がいらっしゃったら何でもコメントしてくださると助かります。
あなたの回答
tips
プレビュー