-1

[ View All Registered User]ハイパーリンクをクリックすると、次の URL が [アドレス] フィールドに表示されます。

http:/localhost:8080/RegSearch.jsp?primaryRegId=20001

URL アドレスを20001ではなく30909に変更しprimaryRegIdてページを更新すると、他のユーザーの情報30909が返されますが、これは保護されていません。

post メソッドも試してみましたが、それでもブラウザ コンソールから確認できます。

これを回避する方法を教えてください。

4

1 に答える 1

0

「リンク内のパラメーターを非表示にする」ことはありません。任意のリクエストのクライアント側パラメータは、このように偽装できます。

あなたがすることは、サーバー上で要求されたデータの承認を検証することです。そのため、どのユーザーも他のユーザーのデータを要求できます。しかし、 のサーバー側コードでは、そのリクエストを受信すると、リクエストを行っているユーザーが、リクエストしているデータを表示する権限RegSearch.jspを持っていることを検証します。もしそうなら、それを彼らに見せてください。そうでない場合は、エラーを表示するか、別のページにリダイレクトします。

リンクを張っているページにはセキュリティはかかりません。セキュリティは、データを表示するページで行われます。

于 2013-08-14T12:51:03.813 に答える