13

私は RESTful JSON API を構築していますが、json データの盗難クロスサイト リクエスト フォージェリが心配です。

これらの問題の両方に対処するために作成された優れたソリューションは、Origin http ヘッダーです。ただし、この方法はすべての最新のブラウザーと互換性があるわけではないことが懸念されます。これは正当な懸念事項ですか?Origin http ヘッダーは互換性の問題で役に立たないのですか? HTTP リファラー チェックを実行するときにオリジンを考慮する必要がありますか?

4

2 に答える 2

2

それは正当な懸念です。完全にサポートされていない古いブラウザを使用している可能性があります。また、ベータ版にはバグがある可能性があります。

X-Frame-Options: SAMEORIGINまた、誰かがあなたのサイトを iframe に組み込むのを防ぐために、JSON API に追加することも検討してください。

また、返された JSON 応答の前に特殊文字を追加し、JSON デコーダーでそれらを手動で削除することも検討してください。これが Google のやり方 です。JSON 応答に?

また、セキュリティを強化するために、リクエストごとにnonceを含め、フィッシング サイトではなく自分のコードから送信されたものであることを確認するためにリクエストに署名することも検討してください。これは、OAuth1.0の仕組みと似ています。別の方法として、セッションごとに自動的に有効期限が切れるトークンを生成し、必要に応じてトークンを更新する方法があります。これがOAuth2.0の仕組みです。これにより、必要に応じてアクセスを無効にすることができます。たとえば、バグが見つかった場合は、古いクライアントをアップグレードする必要があります。

于 2014-01-05T03:12:34.973 に答える