2016-05-10 7 views
0

私は、引数として表データから構築されたクエリを受け付けセロリのタスクを持っているpickling/unpicklingは安全ですか?</p> <pre><code>query = self.data.data.query response = ExportTableTask.delay_or_fail(query=query) </code></pre> <p>私は結果を再現するために設定したクエリにクエリを再追加しているセロリのタスク内::

def task(query): 
    data = Model.objects.all() 
    data.query = query 

私の関心事は、このpickledクエリーの転送が安全かどうかと、クエリーセットに再追加されたときにさらにサニタイズされているかどうかです。

誰かがタスクブローカーにアクセスした場合、好きなSQLを注入できますか?

答えて

0

あなたはそれを正しく行う方法は、django docに記載されています。

誰かが楽しむことができるメッセージにアクセスすると、ピクルスはオブジェクトのバイナリ表現に過ぎません。予想される形式で有効なクエリオブジェクトを生成するのに十分です。彼は多くの損害を被る可能性があります。

しかし、ブローカーは、TSLを使用してセキュリティ保護され、ユーザーはメッセージの挿入を防ぐために強力なパスワードで作成する必要があります。 別のアプローチは、セロリの労働者と一緒に孤立したネットワークにブローカーを置くことです。安全で高速です。

関連する問題

 関連する問題