2016-06-21 9 views
2

Python 3アプリケーションを完成させました。PyPiの複数のパブリックモジュールを使用しています。Python:PyPi public modules:安全で安全かどうかを判断する方法は?

しかし、お客様の資格情報を処理し、サードパーティのAPIにアクセスする企業の企業内で展開する前に、私は安全で安全であるというデューデリジェンスを行う必要があります。

  1. 検証は、PyPIモジュールのセキュリティと安全に使用するために、ターゲットのPython 3アプリが取り扱う資格情報になることに注意することが重要である:

    は、私がどのような手順を実行する必要がありますか?

  2. PyPiモジュールの署名を検証する最も推奨される方法は何ですか?
  3. PyPiモジュールの署名を信頼できますか?

ところで、Python 3アプリケーションはDockerコンテナ内で実行されます。

ので、これらは3つの別々の質問ですあなた

答えて

1

ありがとう:

  1. あなたはパッケージを監査(またはそれを行うために他の誰かを取得)、それは安全ですかどうかを知るにする必要があります。その周りに簡単な方法はありません。

  2. すべてのpypiパッケージにはmd5署名が添付されています(ファイルの後のかっこ内のリンク)。それらの中には、同じ場所に現れるpgp署名も付いているものもありますが、公開されているかどうかは作者次第です。 (例えばhttps://pypi.python.org/pypi/rpc4djangoはmd5とpgpの両方を含む)Md5は完全性を検証する。 Pgpは完全性と原点を検証するので、利用可能な場合はより良い選択です。

  3. 他の署名と同じくらいです。

あなたがそのレベルへの依存関係を心配している場合は、内部のpypiリポジトリの管理を検討する必要があります。それはより良い検証を提供します(最初のダウンロード後にパッケージに署名し、あなたの署名のみを受け入れるだけです)。信頼性とスピードが向上します(pypiがダウンした場合でもソフトウェアを構築できます)。また、まだ監査/承認されていないパッケージの置き換え/更新の問題を回避できます。

+0

返信いただきありがとうございます。だから... "あなたはパッケージを監査しなければならない(または他の誰かにそれをさせる)ことで、安全かどうかを知る必要があります。次の質問には申し訳ありません:監査はどのように行われますか? PyPiモジュールの監査を実行するツール、プロセス、サービスはありますか? – jeff00seattle

+0

助けに使うことができるコード分析ツールがありますが、私は監査のために誰かにコードを読んで理解させる方法がないと思っています。それが広告された通りに動作するかどうかを知る唯一の方法です。 – joelnb

+0

"コード解析ツール"として、私はpep8、pyflakes、pylintなどをもっと推測しています。 – jeff00seattle

関連する問題