0
私はPHPを試しています。セッションを使用すると、ブラウザウィンドウを閉じるとセッションが期限切れになることに気付きました。閉じたブラウザウィンドウでセッションを維持するためにsession.cookie_lifetimeを使用するのは悪いですか?
私はここで検索し、あなたはsession.cookie_lifetime
を使用できると言いましたが、それはあまりにも長くするのはお勧めしません。私の質問は。たとえば、次のようなサイト、reddit、またはfacebook。彼らはあなたがブラウザを閉じたときにセッションが閉じられないように "私を覚えています"ボタンを持っています。彼らはどのようにこれを達成するのですか?
ありがとうございます!
しかし、私は、クッキーにユーザの情報を保存すると、ブラウザに保存されているクッキーから、ハッカーがそのクッキーを変更する可能性があることも読み取っています。たとえば、ユーザーにログインすると、そのユーザーIDは '$ _SESSION ['userId']'変数に格納されます。しかし、私がクッキーでそれを行うと、ハッカーはIDを変更して他のユーザーと同じようにログインすることができます。コースの私はここで何かを逃しているが、私はそれが何であるか分からない。 – nick
誰かが予期せぬものに変更できるような機密データを保存する必要はありません。代わりに、トークンを使用することができます。だからあなたは、ユーザーのためのランダム化されたトークンを作成し、トークンを格納することができます。誰かがユーザーのコンピュータをハックしてCookieを変更した場合、ユーザーIDのように予測可能なものではありません。代わりに、ハッカーが予測する方法がないというトークンです。ハッカーがそれを変更した場合、最悪の場合、ユーザーはログインすることはできませんが、別のユーザーと一致するものに変更することはできません。 –