単一のエントリ ポイント URL を持つ Java Web アプリケーションがあり、外部 Web アプリケーションがその URL にリダイレクトされます。Cookie などを使用して、特定のドメインからのリクエストであることをサーバー側で確認できますか?
編集: 外部アプリ コードを変更できません
HTTP リファラー (ページを「呼び出した」URL) を知りたいと思います。
String referrer = request.getHeader("referer");
編集
gustafcが言ったように、HTTP リファラーはクライアント制御の値であり、クライアントによってまったく異なるものにスプーフィングされたり、削除されたりする可能性があることを忘れていたので、HTTP リファラーが偽の値ではないことを確認することはできません
HTTP リファラーを確認できますが、信頼性は高くありません。簡単に偽造でき、プライバシー上の理由からリファラーを無効にすることを選択する人もいます。したがって、ほとんどの場合は機能するかもしれませんが、セキュリティやその他の重要な問題については信頼しないでください。
これをしようとする本当の理由は何ですか?
はい。getRemoteHost()
リクエストの発信元は、リクエスト オブジェクトのまたはgetRemoteAddr()
メソッドから取得できます。
http://docs.oracle.com/javaee/5/api/javax/servlet/ServletRequest.html#getRemoteHost()
If you only need to verify that the request is from a specific IP (or IP range) you can configure a rule at your firewall to support this (assuming the proxy is within the firewall.