問題タブ [django-csrf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
323 参照

django - Django の CSRF ミドルウェアの責任者を特定するにはどうすればよいですか?

Django の CSRF ミドルウェアの責任者を見つけて、質問できるようにするにはどうすればよいですか?

Django サイトで何ヶ月にもわたって非常に多くの CSRF 障害が発生しており、数週間ごとに何時間も問題が発生しています。その開発に携わった開発者に連絡して、私が抱えている問題について 1 つか 2 つの根本的な質問をしたいと思います。

満足のいく答えが得られない問題について、他にもいくつかの投稿を投稿しましたが、いくつかの回避策が得られます:
Django CSRF フレームワークを無効にできず、私のサイトを壊しています
Django CSRF フレームワークには多くの失敗
があります Django の CSRF ミドルウェアからの大量の誤検知?
Django の CSRF 失敗ミドルウェアの場合、失敗している URL を報告するために CSRF エラーを取得するにはどうすればよいですか?

SVN トランクで Django の CSRF 保護を完全に無効にする

0 投票する
1 に答える
1472 参照

django - Django は CSRF トークンを値ではなくオブジェクトとして出力します

Django の単純な POST フォームで CSRF トークンに苦労しています。テンプレートは、トークンの値を出力する代わりに、次の CSRF 出力を生成します。

テンプレートで使用{% csrf_token %}していますが、これを修正するにはどうすればよいですか? (私はDjango 1.2を使用しています)

編集: 正確なフォーム コードは次のとおりです。

0 投票する
1 に答える
737 参照

django - Django - 公開ページで CSFR を実行するには? または、さらに良いことに、どのように使用する必要がありますか?

これを読んだ後: http://docs.djangoproject.com/en/dev/ref/contrib/csrf/#how-to-use-it

これを登録しているページを使用している人物を信頼する場合を除いて、これを使用することは有効ではないという結論に達しました。これは正しいです?

次のステートメントのために、いつこれを使用しても安全なのか、私は本当に理解していないと思います:

これは、外部 URL をターゲットとする POST フォームに対しては実行しないでください。これにより、CSRF トークンが漏洩し、脆弱性につながる可能性があります。

紛らわしい理由は次のとおりです。私にとって「外部 URL」とは、私のドメインの一部ではないページのことです (つまり、私は www.example.com を所有しており、www.spamfoo.com に投稿するフォームを配置しています。これは明らかに当てはまりません)。他の人の Web サイトに投稿するフォームを生成するために Django を使用することはありませんが、公開フォーム (ログイン フォームなど) で CSRF 保護を使用できないというのはどうしてでしょうか?

0 投票する
1 に答える
1040 参照

python - フォームが別のフレームにポストされると Django CSRF が失敗する

同じページの iframe に投稿するフォームが必要なページを作成しています。テンプレートは次のようになります。

背後のビューでform-resultsCSRF エラーが発生しています。クロスフレーム投稿に何か特別なことが必要ですか?

0 投票する
7 に答える
22808 参照

python - djangoのcsrfエラー

自分のサイトへのログインを実現したい。基本的に、DjangoBookから次のビットを一緒にコピーして貼り付けました。ただし、登録フォームを送信すると、エラーが発生します(CSRF検証に失敗しました。リクエストは中止されました)。誰かがこのエラーを引き起こした原因とそれを修正する方法を教えてもらえますか?

これが私のコードです:

views.py:

register.html:

0 投票する
2 に答える
6648 参照

python - 常に応答があるとは限らないビューの Django CSRF を無効にする

CSRFトークンを必要としないPOSTを受け取るDjangoビューがあります。したがって@csrf_exempt、ビューでデコレータを使用しました。問題は、ビューから応答を発行しない場合があることです (これは Twitter ボットであり、すべてのツイートに対して HTTP POST を受信し、すべてのツイートに応答したくありません)。応答を発行しないと、次のエラーが表示されます。

resp (これは応答だと思います) は None です。なぜなら、ビューはただreturn. このエラーを回避し、POST で CSRF トークンを要求しないようにするにはどうすればよいですか。

ありがとう!

0 投票する
3 に答える
38101 参照

django - django csrfトークンをHTMLに直接埋め込むにはどうすればよいですか?

私のdjangoアプリ内で、ユーザーのホームページに「メッセージ」として表示されるhtmlの文字列をデータベースに保存しています。これらのメッセージの一部にはフォームが含まれていますが、テンプレート言語で記述されていないため、csrf トークンを挿入できません (したがって、アプリが壊れます)。

このトークンを編集中の python ファイル内から直接挿入する方法はありますか? 私は次の行に沿って何かを探しています:

同様のシナリオで機能する他のソリューションは素晴らしいでしょう。ありがとう

編集: トークンはセッションごとに異なるため、実際には機能しません。データベースに保存することはあまり役に立ちません。ビュー内でトークンを動的にロードする方法はありますか?

0 投票する
1 に答える
614 参照

django - djangoでジェネリックビューを使用する際の問題

私は現在、django ジェネリック ビューを使用していますが、理解できない問題があります。

delete_object を使用すると、TypeError 例外が発生します。

コードは次のとおりです(docstringとインポートを省略しました):

ビュー.py

urls.py

他の一般的なビュー (object_list、create_object など) は、これらのパラメーターで正常に機能します。私が抱えているもう 1 つの問題は、create_object() 関数を使用するときに、CSRF メカニズムについて何かを言っていることです。それは何ですか?

0 投票する
1 に答える
166 参照

django - csrf_token Cookie が別のサイトによって削除されましたか?

私は 1.2.1 で実行されている django サイトを持っていますが、csrf_token Cookie が存在せず、投稿時にページが 403 エラーでエラーになるため、ユーザーは時々多くの作業を失います。これを別のサイト (ユーザーが頻繁に使用するサイト) に絞り込み、Cookie を削除しました。このサイトは、ActiveX ClearAuthenticationCache コマンドを使用してこれを行います。

CSRF 保護を削除する以外に、この問題の解決策はありますか?

ありがとう、ピート

0 投票する
3 に答える
1076 参照

iphone - CSRF を回避するために、iPhone アプリから Django バックエンドへの認証とリクエストを行うにはどうすればよいですか?

私は、Django の経験がまったくない iPhone 開発者と一緒に働いており、Django には比較的慣れていません。ユーザーがログインして、データベースから自分の個人ライブラリに本を追加できるWebインターフェースを備えた既存のDjangoアプリを構築しました。

ユーザーが認証してライブラリにアクセスできるようにするiPhoneアプリケーションを構築しようとしていますが、認証を行ってからユーザーのライブラリをリクエストする最良の方法は何だろうと思っていました。最初は HTTP POST リクエストを使用して資格情報を Django アプリに送信しましたが、別の Django 開発者は、これはクロスドメイン リクエストであり、Django 1.2 以降では機能しないと言っていました。

クロスドメインの HTTP POST リクエストを実行できない場合、iPhone アプリから Django アプリケーションにデータを POST するにはどうすればよいですか?