pnpm audit
Перевіряє наявність відомих проблем безпеки у встановлених пакунках.
Якщо виявлено проблеми з безпекою, спробуйте оновити залежності за допомогою pnpm update. Якщо звичайне оновлення не може виправити всі проблеми, використайте перевизначення, для примусового встановлення версій, які не є вразливими. Наприклад, якщо бібліотека lodash@<2.1.0 є вразливою, скористайтеся цим перевизначенням для встановлення lodash@^2.1.0:
overrides:
"lodash@<2.1.0": "^2.1.0"
Або, запустіть pnpm audit --fix.
Якщо ви хочете проігнорувати деякі вразливості, оскільки вони не впливають на ваш проєкт, ви можете скористатися параметром auditConfig.ignoreGhsas.
Since v11, pnpm audit queries the registry's /-/npm/v1/security/advisories/bulk endpoint. Відповідь не містить ідентифікаторів CVE, тому повідомлення фільтруються за ідентифікатором повідомлення GitHub (GHSA). If you previously listed CVEs under auditConfig.ignoreCves, replace each entry with the corresponding GHSA-xxxx-xxxx-xxxx value (shown in the More info column of pnpm audit output) under auditConfig.ignoreGhsas.
Параметри
--audit-level <рівень>
- Рівні: low, moderate, high, critical
- Стандартно: low
Друкує лише ті повідомлення, рівень яких вищий або дорівнює вказаному у параметрі <рівень>.
Це також можна встановити за допомогою auditLevel у pnpm-workspace.yaml.
--fix
Додає перевизначення до файлу pnpm-workspace.yaml для примусової заміни версій залежностей на безпечні.
Use --fix=update (added in v11.0.0) to fix vulnerabilities by updating packages in the lockfile instead of adding overrides.
When minimumReleaseAge is set, --fix also adds the minimum patched version of each advisory to minimumReleaseAgeExclude in pnpm-workspace.yaml, so the security fix can be installed without waiting for the release age window.
--interactive, -i
Додано у: v11.0.0
Review the advisories selected by --fix and pick which ones to apply. Only usable together with --fix.
--json
Виводить на екран результат перевірки у форматі JSON.
--dev, -D
Перевіряє лише dev залежності.
--prod, -P
Перевіряє лише production залежності.
--no-optional
Не перевіряє optionalDependencies.
--ignore-registry-errors
Якщо реєстр повертає код статусу, відмінний від 200, процес повинен завершитися з 0. Таким чином, процес завершиться невдачею лише у випадку, якщо реєстр успішно відповість і знайде вразливості.
--ignore-unfixable
Added in: v10.11.0
Ignore all advisories with no resolution.
Since v11, unfixable advisories are tracked by GHSA rather than CVE.
--ignore <vulnerability>
Added in: v10.11.0
Ignore a vulnerability by its GitHub advisory ID (GHSA). Before v11 this flag accepted CVE identifiers.
Налаштування
auditConfig
auditConfig.ignoreGhsas
A list of GHSA codes that will be ignored by the pnpm audit command.
auditConfig:
ignoreGhsas:
- GHSA-42xw-2xvc-qx8m
- GHSA-4w2v-q235-vp99
- GHSA-cph5-m8f7-6c5x
- GHSA-vh95-rmgr-6w4m
Before v11, auditConfig.ignoreCves was used to filter advisories by CVE identifier. That setting is no longer recognized.