securesauce/vscode-precaution
GitHub: securesauce/vscode-precaution
一款集成 Precaution 静态分析工具的 VS Code 扩展,旨在为 Python 开发者提供实时的代码安全漏洞检测与反馈。
Stars: 1 | Forks: 1

# Precaution 的 Visual Studio Code 扩展
一款针对 Precaution 静态分析安全工具的 Visual Studio Code 扩展。此扩展内置了 `0.8.0` 版本的 `precli`。
它兼容所有[受支持版本](https://devguide.python.org/#status-of-python-branches)的 Python 语言。
有关 Precaution 的更多信息,请参阅 https://precli.readthedocs.io/
## 设置
您可以配置多项设置来自定义此扩展的行为。
| 设置 | 默认值 | 描述 |
| --------------------------- | -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| precaution.args | `[]` | 传递给 Precaution 用于对文件进行 lint 的参数。每个参数应作为数组中的单独字符串提供。
示例:
- `"precaution.args": ["--config=precli.toml"]`
- `"precaution.args": ["--disable=PY001"]` | | precaution.cwd | `${workspaceFolder}` | 设置用于 Precaution 对文件进行 lint 的当前工作目录。默认情况下,它使用工作区的根目录 `${workspaceFolder}`。您可以将其设置为 `${fileDirname}`,以将正在被 lint 的文件的父文件夹用作 Precaution 的工作目录。 | | precaution.enabled | `true` | 启用/禁用使用 Precaution 对文件进行 lint。此设置可全局应用或在工作区级别应用。如果禁用,lint 服务器本身将继续运行并监视读写事件,但不会执行 lint 或公开代码操作。 | | precaution.path | `[]` | 扩展用于 Precaution 对文件进行 lint 的路径或命令。接受包含单个或多个字符串的数组。如果传递命令,每个参数应作为数组中的单独字符串提供。如果设置为 `["precli"]`,它将使用 `PATH` 环境变量中可用的 Precaution 版本。注意:使用此选项可能会减慢 lint 速度。
示例:
- `"precaution.path" : ["~/global_env/precli"]`
- `"precaution.path" : ["precli"]`
- `"precaution.path" : ["${interpreter}", "-m", "precli"]` | | precaution.interpreter | `[]` | 用于启动 Precaution 服务器及任何子进程的 Python 可执行文件路径或命令。接受包含单个或多个字符串的数组。当设置为 `[]` 时,扩展将使用所选 Python 解释器的路径。如果传递命令,每个参数应作为数组中的单独字符串提供。 | | precaution.importStrategy | `useBundled` | 定义用于对文件进行 lint 的 precli 二进制文件。当设置为 `useBundled` 时,扩展将使用扩展附带的 Precaution 二进制文件。当设置为 `fromEnvironment` 时,扩展将尝试使用当前所选环境中可用的 Precaution 二进制文件及所有依赖项。注意:如果扩展在所选环境中找不到有效的 precli 二进制文件,它将回退到使用扩展附带的 Precaution 二进制文件。如果设置了 `Precaution.path`,此设置将被覆盖。 | | Precaution.showNotification | `off` | 控制此扩展何时显示通知。接受的值为 `onError`、`onWarning`、`always` 和 `off`。 | 在 `precaution.args`、`precaution.cwd`、`precaution.path` 和 `precaution.interpreter` 设置中支持以下变量替换: - `${workspaceFolder}` - `${workspaceFolder:FolderName}` - `${userHome}` - `${env:EnvVarName}` `precaution.path` 设置还支持将 `${interpreter}` 变量作为数组项之一。此变量将根据 `precaution.interpreter` 设置的值进行替换。 ## 命令 | 命令 | 描述 | | ---------------------- | --------------------------------- | | Precaution: Restart Server | 强制重启 lint 服务器。 | ## 日志 从命令面板(**视图** > **命令面板...**)中,运行 **Developer: Set Log Level...** 命令。从 **Extension logs** 组中选择 **Precaution**。然后选择您想要设置的日志级别。 要打开日志,请单击状态栏右下角(Python 语言模式旁边)的语言状态图标 (`{}`)。找到 **Precaution** 条目并选择 **Open logs**。 ## 故障排除 在本节中,您将找到一些可能遇到的常见问题及其解决方法。如果您遇到此处未涵盖的任何问题,请[提交 issue](https://github.com/securesauce/vscode-precaution/issues)。
示例:
- `"precaution.args": ["--config=precli.toml"]`
- `"precaution.args": ["--disable=PY001"]` | | precaution.cwd | `${workspaceFolder}` | 设置用于 Precaution 对文件进行 lint 的当前工作目录。默认情况下,它使用工作区的根目录 `${workspaceFolder}`。您可以将其设置为 `${fileDirname}`,以将正在被 lint 的文件的父文件夹用作 Precaution 的工作目录。 | | precaution.enabled | `true` | 启用/禁用使用 Precaution 对文件进行 lint。此设置可全局应用或在工作区级别应用。如果禁用,lint 服务器本身将继续运行并监视读写事件,但不会执行 lint 或公开代码操作。 | | precaution.path | `[]` | 扩展用于 Precaution 对文件进行 lint 的路径或命令。接受包含单个或多个字符串的数组。如果传递命令,每个参数应作为数组中的单独字符串提供。如果设置为 `["precli"]`,它将使用 `PATH` 环境变量中可用的 Precaution 版本。注意:使用此选项可能会减慢 lint 速度。
示例:
- `"precaution.path" : ["~/global_env/precli"]`
- `"precaution.path" : ["precli"]`
- `"precaution.path" : ["${interpreter}", "-m", "precli"]` | | precaution.interpreter | `[]` | 用于启动 Precaution 服务器及任何子进程的 Python 可执行文件路径或命令。接受包含单个或多个字符串的数组。当设置为 `[]` 时,扩展将使用所选 Python 解释器的路径。如果传递命令,每个参数应作为数组中的单独字符串提供。 | | precaution.importStrategy | `useBundled` | 定义用于对文件进行 lint 的 precli 二进制文件。当设置为 `useBundled` 时,扩展将使用扩展附带的 Precaution 二进制文件。当设置为 `fromEnvironment` 时,扩展将尝试使用当前所选环境中可用的 Precaution 二进制文件及所有依赖项。注意:如果扩展在所选环境中找不到有效的 precli 二进制文件,它将回退到使用扩展附带的 Precaution 二进制文件。如果设置了 `Precaution.path`,此设置将被覆盖。 | | Precaution.showNotification | `off` | 控制此扩展何时显示通知。接受的值为 `onError`、`onWarning`、`always` 和 `off`。 | 在 `precaution.args`、`precaution.cwd`、`precaution.path` 和 `precaution.interpreter` 设置中支持以下变量替换: - `${workspaceFolder}` - `${workspaceFolder:FolderName}` - `${userHome}` - `${env:EnvVarName}` `precaution.path` 设置还支持将 `${interpreter}` 变量作为数组项之一。此变量将根据 `precaution.interpreter` 设置的值进行替换。 ## 命令 | 命令 | 描述 | | ---------------------- | --------------------------------- | | Precaution: Restart Server | 强制重启 lint 服务器。 | ## 日志 从命令面板(**视图** > **命令面板...**)中,运行 **Developer: Set Log Level...** 命令。从 **Extension logs** 组中选择 **Precaution**。然后选择您想要设置的日志级别。 要打开日志,请单击状态栏右下角(Python 语言模式旁边)的语言状态图标 (`{}`)。找到 **Precaution** 条目并选择 **Open logs**。 ## 故障排除 在本节中,您将找到一些可能遇到的常见问题及其解决方法。如果您遇到此处未涵盖的任何问题,请[提交 issue](https://github.com/securesauce/vscode-precaution/issues)。
标签:CISA项目, IDE 插件, IP 地址批量处理, Linter, MITM代理, pptx, Precaution, precli, Python, SOC Prime, Visual Studio Code, 云安全监控, 代码安全, 代码审查, 安全漏洞扫描, 安全编码, 开发工具, 无后门, 漏洞枚举, 逆向工具, 静态代码检测, 静态分析