python – “pip -allow-external”的安全考慮
描述這些選項的文件部分(ofollow,noindex" target="_blank">pip install ,pip wheel )非常簡潔,不能解釋使用它們的危險.我也無法在網際網路上找到任何這樣做的資源.
我在FreeNode #pip通道上提出了這個問題.以下是我對我在那裡的答覆的解釋.感謝您從#pip轉到agronholm和dstufft回答我的問題.
可以通過三種不同的方式在PyPI上維護軟體包:
>直接在PyPI上如果一個軟體包託管在PyPI上,則不需要額外的交換機來安裝它.通過HTTPS保護與PyPI的連線,因此下載被認為是受信任的.
>在外部網站上,使用PyPI儲存相關檔案的安全校驗和.在這種情況下,pip需要–allow-external開關才能繼續.雖然下載可能來自不安全的伺服器,但下載的檔案會根據儲存在PyPI上的安全校驗和進行檢查.因此,這種情況也被認為是安全的.
>在外部網站上,沒有PyPI儲存任何校驗和.在這種情況下,無法確保下載安全.在這種情況下,–allow-external不足以啟用安裝,pip需要 – 未經驗證.
因此, – 外部單獨被認為是一個安全的交換機,只有使用 – 未認證是一個潛在的安全問題.這也是為什麼pip具有–allow-all-external選項,但是沒有 – 全部未驗證.
作為旁觀者,–allow-external不是作為安全功能引入的,而是由於在處理第三方網站時潛在的速度,正常執行時間和便利性問題.
http://stackoverflow.com/questions/21021326/security-considerations-of-pip-allow-external