0

PHP 私のウェブサイトはほぼ完成していますが、セキュリティに問題があります。実際、まだ問題はありませんでしたが、防ぐ必要があります。たとえば、ログイン システムでは、cookie/session を使用しています。人々がここで答えたように、Cookie は簡単に克服でき、扱いにくいものです。

パスワードやデータセキュリティを含め、ログインシステムを実行する最善の方法は何ですか?

また、投稿にユーザーの名前を書き込むためにCookieを使用しています。例えば。(ログインに成功したふりをする)

$Cookie = $_COOKIE['username'];
$Cookie = $FetchUserNameFromDatabase;

//Then, on posts to write the name of the user, from the cookie.
$DoPost = "INSERT INTO posts (username, message) VALUES ($Cookie, $AnyMessage)";

これは、Cookie の値から投稿にユーザー名を書き込む最良の方法ですか (ログイン後、ユーザーの名前は Cookie に保存されるため)?

そうでない場合、それを行う最善の方法は何ですか?

ありがとうございます。

@編集

聞くのを忘れました。また、大量のコメント (大量スパム) を防止する最善の方法は何ですか? たとえば、私はコメント (または投票など) を行い、正常に動作します。その後、別のコメントをすると、しばらくの間ブロックされ、この時間が経過するまで再度コメントすることはできません。それを行う最善の方法は何ですか、または少なくとも、主要なサイト/フォーラムがそれを防ぐために使用しているものは何ですか?

再度、感謝します。

4

2 に答える 2

0

セッションIDだけを使用しないのはなぜですか? https接続を使用してログインを実装し、データベースに対してユーザーを識別するセッションIDを割り当てます。さらに参考までに、安全な接続はもう必要ありません。

投稿を識別したい場合は、「SELECT username FROM users WHERE sessid=" のようなものを使用してください。セッションID()

于 2013-01-30T14:20:06.510 に答える
0

観点からは、アプリケーションの状態を変更しない操作を実行する場合にのみ、Cookie 情報を使用する必要があります。ページの上部にユーザー名を表示するようなものです。

ただし、アプリケーションが新しい POST を追加するなどの状態を変更するすべてのシナリオ (この例では) では、クライアントの Cookie を信頼してはなりません。

「それを行うための最良の方法」に答えるために、それはあなたが依存している技術に依存します.

編集:

大量のスパムを防ぐには、Cookie 情報と IP アドレスなどのリクエスト情報を使用する必要があります。

于 2013-01-30T14:20:14.233 に答える