私はこの質問を私の心に持っています。 私は自分のために適切な答えを得るためにあなたとフェローを共有し、そこに誰かを助けるかもしれないと思った。私たちは、クライアント側のidフィールドを使用する必要がクライアントに送信する前に、テーブルのID列を暗号化/ハッシュ化する必要があります。
id, name, email and password
多くの時間を:
ので、引数のために、我々は次の列を持つ当社のウェブサイトのためのユーザーテーブルを持っていると仮定することができます。 ユーザーがプロフィールを編集できるようにAJAXを実装しているとします。
<div>
<div>
<label>Name: <input type = "text" name = "txtName" id = "txtName"/></label>
</div>
<div>
<label>Email: <input type = "text" name = "txtEmail" id = "txtEmail"/></label>
</div>
<div>
<label>Password: <input type = "password" name = "txtPasswd" id = "txtPasswd"/></label>
</div>
<div>
<input type = "submit" name = "updateProfile" value = "Save" />
<input type = "hidden" name = "id" value = "1" />
</div>
</div>
質問にではなく、テーブルのデザイン、HTMLやCSSのものから生じ得る欠陥を指摘あなたの焦点を保管してください: とプロファイル編集ページには次のようになります。
よろしく、
ユーザーがIDを知っているか、他のIDを推測することがどれほど危険なのかによって異なります。 IDを「1」から「2」に変更して別のユーザーのプロファイルを上書きすることができれば、セキュリティに深刻な問題があります。それでも、人々はランダムなIDを使って外の世界に奉仕したいのです –
私はハッシュ(ランダム32文字)とIDをユーザに持っています。私はそのIDを内部的に外部通信に使用します。 –
@ダゴン私はあなたのコミュニティに参加してフォームを見て、他のユーザーの詳細を簡単に変更できるので、悪い考えです。 –