0

Django 1.1.1では、ユーザー名の代わりに、facebook 接続用のsocial-registrationや電子メール ベースの認証用のdjango-emailauthなど、いくつかの認証バックエンドを使用しています。

Csrf ミドルウェアが不可欠なセキュリティ対策であるかどうか、特に facebook 接続で問題が発生することがあることに興味があります。

私のプロジェクトはかなり単純です。各ユーザーには、入力できるプロファイルと、購入を行うための支払いを入力する購入ページがあります。これらのページはどちらも によって保護されてい@login_requiredます。

4

1 に答える 1

1

まあ、それはあなたのサイトを、すでにログインしているが(ブラウザで)だまされているユーザーから保護します. むしろONにしたほうがいいです。login_required はここでは関係ありません。

問題に関しては、はい、いくつかの原因になる可能性があります。修正するには、次の 2 つの方法があります。

  1. ajax リクエストを行う場合、django は HTTP ヘッダーに基づいて保護をオフにするのに十分なほどスマートです。基本的に、任意の ajax ライブラリからのリクエストはすべて通過するはずです。

  2. ヘッダーが役に立たない場合は、ビューにcsrf_exemptデコレーターを配置してください。

結論:お金のビューでcsrfを使用し、Facebookなどでいずれかの方法で無効にします.

于 2010-03-08T09:23:01.130 に答える