安全性
稽核
執行 yarn install
時,Yarn 預設不會執行稽核,因為這應在 cron 任務中執行。不過,你可以隨時執行稽核,方法是執行 yarn
npm audit
。
資訊
我們的實作與 npm 實作有一些不同。與大多數其他 Yarn 指令一樣,yarn npm audit
預設只套用於目前工作區的直接相依性。如要取得整個專案的報告,請使用 -A,--all
和/或 -R,--recursive
旗標。
提示
你可以透過使用 --environment production
執行指令,從報告中排除你的 devDependencies
(及其傳遞性相依性)。
強化模式
強化模式可以使用 enableHardenedMode
設定或在你的環境變數中定義 YARN_ENABLE_HARDENED_MODE=1|0
來設定(或停用),但在大多數情況下你甚至不必考慮它 - 當 Yarn 偵測到它在來自公開 GitHub 儲存庫的 pull request 中執行時,強化模式會預設啟用。
在此模式下,Yarn 會在執行 yarn install
時自動啟用 --check-resolutions
和 --refresh-lockfile
旗標,這應該可以保護你免於大多數由 封鎖檔中毒 造成的攻擊,代價是安裝速度會稍微變慢。
危險
強化模式會讓安裝速度顯著變慢,因為 Yarn 必須查詢註冊表以確保封鎖檔中包含的資訊是正確的。如果你的 CI 管線執行多個工作,我們建議在所有工作中停用強化模式,除了其中一個工作,以限制效能影響。