2012-04-12 15 views
0

ウェブサイト上のページ間でデータを転送する最良の方法は何ですか?たとえば、私はこのサイトにログインしていて、ページを切り替える回数と、ブラウザを閉じても何回ログインしているかを知っています。どのようにこれは正確に行われますか?私はクッキーを使用して考えていますが、私は「本当によく分からない?ウェブサイト上のページ間でデータを転送する

ありがとう!

答えて

1

2つのオプションがあります。

クッキーはユーザーの入力です。クッキーに保存されているセッションIDはユーザー入力、httpヘッダーはユーザー入力です。これらは3重チェックする必要があります一方、セッションデータはサーバーに格納されているため、格納されていなければ多かれ少なかれ安全です/ tmpで編集。

セッション認可の最も一般的な設定の1つは、セッションIDがCookieに保存されており、パスワードを含むすべてがセッションに保存されていることです。クッキーからのIDに基づいてセッションを開始した後、セッションデータからユーザーIDを取得し、そこに保存されているパスワードが有効かどうかを確認する必要があります。

セッション変数を設定した場合、別のセッションCookieをハイジャックしない限り、ユーザーは直接変更できません。

主に気を付けなければならないのは共有ホスティングで、セッションデータは安全ではありません(通常、他のサイトで見ることができます)。

クッキーデータが安全でないことにも注意してください。フォームのデータを信頼してはならないのと同じ方法で信頼するべきではありません。パスワードを持つ

あなたのベストプラクティスは、次のとおりです。

  • ストアハッシュ形式、好ましくはSHA1(最初の選択肢)またはMD5(2番目の選択肢)で、データベースのパスワード。
  • ユーザーのパスワードを受け取ったら、暗号化してデータベースに保存されているものと照合します。
  • ユーザセッションにログインしたユーザ名を設定します。
  • クッキーを永久に保存するのではなく、一定期間(たとえその日であっても)後にクッキーを期限切れにします。
  • 可能であれば、安全な接続(HTTPではなくHTTPS)を使用してください。 SSL証明書は安価です。
+0

私はそれを理解すると思います。だから私は: - >ユーザーのログインを持っている。 - >ログイン時にセッションでユーザー名を保存します。 - >セッションを期限切れのCookieに格納します。 - >私はページごとに行くので、クッキーとセッションにアクセスしてユーザー情報を取得します。 – NSchulze

1

はい、あなたはセッションIDを保存するクッキーが存在し、通常ので、ログインしたままになります。

関連する問題