3

ユーザーがサイトにログインするとき、ログインしたユーザーIDを何らかの方法で保存して、サイトがユーザーごとに異なるコンテンツを生成できるようにする必要があります。

ユーザーの ID を $_SESSION[]変数に保存するのは安全ですか?

ユーザーがデータを変更して$_SESSION[]別のユーザーになりすますことはできますか?

ID を使用して、データベースからフェッチする必要があるデータを確認し、ユーザーが持っている権限を確認します。

4

1 に答える 1

5

受け入れられている最善の方法は、セッションにユーザーIDを保存することです。

セッションはデフォルトで/tmpファイルとして保存されます。ディレクトリトラバーサルの脆弱性などのセキュリティ上の問題がない限り、エンドユーザーは表示できません。ほとんどのアプリケーションはそのまま使用$_SESSIONします。そこに広範囲にわたる弱点がある場合、主要なプロジェクトは別の方法で物事を行うことになります。サーバー側のセッション値がクライアント側のエクスプロイトによって取得されることを心配する必要はありません。また、セッションの使用の単純さにも注意してください。これにより、アプリケーション全体で常に、標準的で一貫性のあるアクセスが必要なユーザー固有のデータへのデータアクセスが可能になります。

于 2013-01-08T15:29:06.990 に答える