タイムアウトの平均について
解決済
回答 3
投稿
- 評価
- クリップ 1
- VIEW 4,369
Laravelを使って会員制出欠管理システムを制作しているのですが、最近利用者から
「ずっとログインしたままにできないのか?」
「ログインした状態をもっと長くしてほしい」
という要望がありました。
現在ログインしてからタイムアウトするまでの時間はデフォルトのまま'120分'となっていますが、初心者である私には、この時間が平均的なのかどうかもわからない状態です。
要点としては
・セキュリティの問題
・利便性の問題
・メモリの問題
が考えられ、
■セッション保持時間が長くなると
・セキュリティの問題
同じ端末で複数の利用者がいる場合に危険
・利便性の問題
利用者は毎回ログインしなくて良い為、操作性は上がる
・メモリの問題
メモリの圧迫が大きくなる ⇒ 会員数が多くなるほど肥大化
■セッション保持時間が短くなると
・セキュリティの問題
利用後にログアウトをしなくても、しばらく使っていないと勝手にログアウトするから安心
・利便性の問題
システムに訪れる度にログインを要求され、手間がかかる(現状)
・メモリの問題
メモリの利用量は少なくて済む
上記のような知識しかないのですが、設定する時間について何かアドバイスをいただけないでしょうか?
例えばセッションを1週間保持するとすれば、考え得る問題(プログラム的にも、現実の環境でも)は何があるでしょうか?
よろしくお願いします。
-
気になる質問をクリップする
クリップした質問は、後からいつでもマイページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
クリップを取り消します
-
良い質問の評価を上げる
以下のような質問は評価を上げましょう
- 質問内容が明確
- 自分も答えを知りたい
- 質問者以外のユーザにも役立つ
評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。
質問の評価を上げたことを取り消します
-
評価を下げられる数の上限に達しました
評価を下げることができません
- 1日5回まで評価を下げられます
- 1日に1ユーザに対して2回まで評価を下げられます
質問の評価を下げる
teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。
- プログラミングに関係のない質問
- やってほしいことだけを記載した丸投げの質問
- 問題・課題が含まれていない質問
- 意図的に内容が抹消された質問
- 過去に投稿した質問と同じ内容の質問
- 広告と受け取られるような投稿
評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。
質問の評価を下げたことを取り消します
この機能は開放されていません
評価を下げる条件を満たしてません
質問の評価を下げる機能の利用条件
この機能を利用するためには、以下の事項を行う必要があります。
- 質問回答など一定の行動
-
メールアドレスの認証
メールアドレスの認証
-
質問評価に関するヘルプページの閲覧
質問評価に関するヘルプページの閲覧
checkベストアンサー
+5
2時間が長いとは思いませんが、中途半端だなとは思います。
セッションタイムアウト以前の問題として、そもそもログアウト機能はなんのためにあるのかというテーマに関して、以前ブログ記事を書きました。
ぶっちゃけて言えば、「ログアウト機能はなくても重大な問題ではない」というのが結論です。ログアウト機能がなくても大きな問題ではないと言っているわけですから、セッションタイムアウトが長いことも大きな問題ではありません。
現実問題として、最近の普及しているウェブサイトの多くは、twitterもgoogleもfacebookも基本的にはログイン状態を保持し続けます。そうしても、大きな問題ではないからです。
たとえば、離席中の操作をされるという点については、PCをロックすればよいことであり、PCのロックはウェブサイトを使わなくても元々必要なことです。であれば、PCもロックし、ウェブサイトもタイムアウトするのは対策が重複していることになります。デメリットがなければそれでもいいのですが、ユーザーの手間が増えるというデメリットがあります。
それでも、安全性が大幅に増すのであれば手間を惜しむなということになるわけですが、前述の記事で書いたように、そもそも大幅に安全性が増すわけではありません。
加えて、頻繁にログインを要求してしまうと、ユーザーは安易なパスワードをつけがちになります。これこそが警戒すべきことで、絶対に避けなければなりません。
そのような背景から、最近のウェブサイトはセッションタイムアウト時間が長いのだと思います。
ただし、利用時間が短いサイトであれば、タイムアウトを短くしてもよいでしょう。そのあたりは、利用シーンと合わせて考えればよいと思います。
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
+4
セッション時間は正直、ケースバイケースです。
「ずっとログインしたままにできないのか?」
「ログインした状態をもっと長くしてほしい」
ログイン画面に「ログイン情報を保存する」のようなチェックボックス等実装してみては如何でしょうか。
情報を保存していいブラウザか否か等をお客様に委ねる事ができると思います。
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
+1
120分
私的感覚ですが「長すぎる」ですね。
「ログインしてからタイムアウトするまでの時間」と書かれているので語弊ありそうですが、
正確には「ログイン後の無操作時間」ですよね。
PマークやISMSを取得している企業なんかですと「クリアデスククリアスクリーン」の方針に従い、PCのスクリーンセーバー起動までの時間が15分と設定されているところも多いでしょうから、
「無操作時間中に席を立ったときのリスク」に大変気を配っていることだと思います。それと同じですね。
ですので、そこはセキュリティリスクをきちんと理解してもらった上で設定した時間であることを分かってもらう必要があります。
この「無操作での自動ログアウト時間をどうするか」は要件定義時点で決めることも多いと思います。
また導入時に理解を得るための説明会・教育を行うところも多いと思います。
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
15分調べてもわからないことは、teratailで質問しよう!
- ただいまの回答率 88.10%
- 質問をまとめることで、思考を整理して素早く解決
- テンプレート機能で、簡単に質問をまとめられる
2019/03/26 20:29
自分でPCのスクリーンセーバーのこと出しておきながらそれと同じと言い切ってしまって恥ずかしい…。
2019/03/27 12:25
ブログ拝見させていただきました。具体的なメリットとデメリットが明示されており、大変参考になりました。ありがとうございます。
>2時間が長いとは思いませんが、中途半端だなとは思います。
ご意見いただきありがとうございます。
利用シーンについては少し検討が必要そうですが、やはりユーザから直接要求があったようにログイン状態保持時間を長くする、ないしは永続化(できるように)する方向で進めたいと思います。ありがとうございました。