1

同じマシンおよびリモート サーバー上の他のアプリケーションと通信するために使用される Rails 3 アプリケーションに API コントローラーがあります。

リモート サーバーは、HTTP 基本認証を使用して API にアクセスします。同じサーバーからのリクエストはデフォルトで許可されます。

request.local を信頼しても安全ですか? リクエストは本当に同じマシンから来ているのですか?IPスプーフィングなどを考えています。

ところで、「protect_from_forgery」はAPIコントローラーで無効になっています。

4

1 に答える 1

0

適度なレベルのセキュリティについては、はい。これには、任意のユーザーが同じシステムで実行する可能性のあるすべてのプロセスを信頼する必要があります。また、サーバーの TCP/IP スタック、ルート、およびネットワーク フィルター/内部ファイアウォールを、サーバーの外部から発信されたパケットがローカル IP アドレス (具体的には 127.0.0.1) として偽装されることを許可しない適切な方法で構成する必要があります。LOCALHOSTまた、Rails の定数が に設定されていることを前提としてい127.0.0.1ます。

ところで、クロスサイト リクエスト フォージェリprotect_from_forgery(CSRF) から保護しますが、IP アドレス スプーフィングに対しては保護しませんし、保護することもできません。また、リクエストが承認された IP からのものであり、ユーザーが CSRF から保護されていないことを確認します。

于 2014-08-18T18:26:59.020 に答える