PyCQA/vscode-bandit
GitHub: PyCQA/vscode-bandit
将 Bandit Python 安全扫描工具集成到 VS Code 中,实现编码时的实时安全漏洞检测与提醒。
Stars: 9 | Forks: 2

# Bandit Visual Studio Code 扩展
这是一个用于 [Bandit](https://github.com/PyCQA/bandit) 静态分析安全工具的 Visual Studio Code 扩展,由 Bandit 的原作者开发和维护。此扩展内置了 Bandit 1.8.3 版本。
它兼容所有受[积极支持](https://devguide.python.org/#status-of-python-branches)的 Python 编程语言版本。
有关 Bandit 的更多信息,请访问 https://bandit.readthedocs.io/。
## 设置
您可以通过配置多项设置来自定义此扩展的行为。
| 设置 | 默认值 | 描述 |
|---------------------------|----------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `bandit.args` | `[]` | 传递给 Bandit 用于对 Python 文件进行 linting 的参数。每个参数应为数组中的一个独立字符串。
示例:
- `"bandit.args": ["--severity-level=high"]`
- `"bandit.args": ["--skip=B603", "--confidence-level=high"]` | | `bandit.cwd` | `${workspaceFolder}` | 设置用于 Bandit 对 Python 文件进行 linting 的当前工作目录。默认情况下,它使用工作区的根目录。您可以将其设置为 `${fileDirname}`,以使用正在被 linting 的文件所在的父文件夹。 | | `bandit.enabled` | `true` | 启用/禁用使用 Bandit 对 Python 文件进行 linting。此设置可以全局配置,也可以按工作区配置。禁用时,linting 服务器将继续监视文件,但不会执行 linting 或公开代码操作。 | | `bandit.path` | `[]` | 扩展用于运行 Bandit 的路径或命令。接受字符串数组(每个参数独立分开)。
示例:
- `"bandit.path": ["~/global_env/bandit"]`
- `"bandit.path": ["bandit"]`
- `"bandit.path": ["${interpreter}", "-m", "bandit"]`
如果设置为 `["bandit"]`,它将使用您的 `PATH` 中可用的 Bandit。注意:使用自定义路径可能会减慢 linting 的速度。 | | `bandit.interpreter` | `[]` | 用于启动 Bandit 的 Python 可执行文件或命令。接受字符串数组(每个参数独立分开)。如果保留为 `[]`,它将使用当前选定的 Python 解释器。 | | `bandit.importStrategy` | `useBundled` | 指定要使用的 Bandit 二进制文件。`useBundled` 使用随扩展一起提供的版本。`fromEnvironment` 使用当前 Python 环境中的 Bandit。如果找不到,它将回退到内置版本。如果设置了 `bandit.path`,则此选项会被覆盖。 | | `bandit.showNotifications` | `off` | 控制何时显示扩展通知。选项:`onError`、`onWarning`、`always`、`off`。 | ### 变量替换 在 `bandit.args`、`bandit.cwd` 和 `bandit.path` 设置中支持以下变量替换: | 变量 | 描述 | 支持的位置 | |---------------------------------|--------------------------------------------------------------------------------|-----------------------| | `${workspaceFolder}` | 当前活动工作区文件夹的根目录 | `args`、`cwd`、`path` | | `${workspaceFolder:FolderName}` | 多根工作区中特定工作区文件夹的根目录 | `args`、`path` | | `${userHome}` | 当前用户主目录的路径 | `args`、`path` | | `${env:EnvVarName}` | 环境变量 `EnvVarName` 的值 | `args`、`path` | | `${interpreter}` | Bandit 使用的 Python 可执行文件(工作区解释器或 bandit.interpreter) | `path` | | `${fileDirname}` | 正在被 linting 的文件所在的目录 | `cwd` | ## 命令 | 命令 | 描述 | | ---------------------- | --------------------------------- | | Bandit: Restart Server | 强制重启 linter 服务器。 | ## 日志记录 在命令面板(**视图** > **命令面板...**)中,运行 **开发者: 设置日志级别...** (Developer: Set Log Level...) 命令。从 **扩展日志** (Extension logs) 组中选择 **Bandit**。然后选择您想要设置的日志级别。 要打开日志,请点击状态栏右下角(Python 语言模式旁边)的语言状态图标 (`{}`)。找到 **Bandit** 条目并选择 **打开日志** (Open logs)。 ## 故障排除 在本节中,您将找到一些可能遇到的常见问题及其解决方法。如果您遇到了此处未涵盖的问题,请[提交 issue](https://github.com/PyCQA/vscode-bandit/issues)。
示例:
- `"bandit.args": ["--severity-level=high"]`
- `"bandit.args": ["--skip=B603", "--confidence-level=high"]` | | `bandit.cwd` | `${workspaceFolder}` | 设置用于 Bandit 对 Python 文件进行 linting 的当前工作目录。默认情况下,它使用工作区的根目录。您可以将其设置为 `${fileDirname}`,以使用正在被 linting 的文件所在的父文件夹。 | | `bandit.enabled` | `true` | 启用/禁用使用 Bandit 对 Python 文件进行 linting。此设置可以全局配置,也可以按工作区配置。禁用时,linting 服务器将继续监视文件,但不会执行 linting 或公开代码操作。 | | `bandit.path` | `[]` | 扩展用于运行 Bandit 的路径或命令。接受字符串数组(每个参数独立分开)。
示例:
- `"bandit.path": ["~/global_env/bandit"]`
- `"bandit.path": ["bandit"]`
- `"bandit.path": ["${interpreter}", "-m", "bandit"]`
如果设置为 `["bandit"]`,它将使用您的 `PATH` 中可用的 Bandit。注意:使用自定义路径可能会减慢 linting 的速度。 | | `bandit.interpreter` | `[]` | 用于启动 Bandit 的 Python 可执行文件或命令。接受字符串数组(每个参数独立分开)。如果保留为 `[]`,它将使用当前选定的 Python 解释器。 | | `bandit.importStrategy` | `useBundled` | 指定要使用的 Bandit 二进制文件。`useBundled` 使用随扩展一起提供的版本。`fromEnvironment` 使用当前 Python 环境中的 Bandit。如果找不到,它将回退到内置版本。如果设置了 `bandit.path`,则此选项会被覆盖。 | | `bandit.showNotifications` | `off` | 控制何时显示扩展通知。选项:`onError`、`onWarning`、`always`、`off`。 | ### 变量替换 在 `bandit.args`、`bandit.cwd` 和 `bandit.path` 设置中支持以下变量替换: | 变量 | 描述 | 支持的位置 | |---------------------------------|--------------------------------------------------------------------------------|-----------------------| | `${workspaceFolder}` | 当前活动工作区文件夹的根目录 | `args`、`cwd`、`path` | | `${workspaceFolder:FolderName}` | 多根工作区中特定工作区文件夹的根目录 | `args`、`path` | | `${userHome}` | 当前用户主目录的路径 | `args`、`path` | | `${env:EnvVarName}` | 环境变量 `EnvVarName` 的值 | `args`、`path` | | `${interpreter}` | Bandit 使用的 Python 可执行文件(工作区解释器或 bandit.interpreter) | `path` | | `${fileDirname}` | 正在被 linting 的文件所在的目录 | `cwd` | ## 命令 | 命令 | 描述 | | ---------------------- | --------------------------------- | | Bandit: Restart Server | 强制重启 linter 服务器。 | ## 日志记录 在命令面板(**视图** > **命令面板...**)中,运行 **开发者: 设置日志级别...** (Developer: Set Log Level...) 命令。从 **扩展日志** (Extension logs) 组中选择 **Bandit**。然后选择您想要设置的日志级别。 要打开日志,请点击状态栏右下角(Python 语言模式旁边)的语言状态图标 (`{}`)。找到 **Bandit** 条目并选择 **打开日志** (Open logs)。 ## 故障排除 在本节中,您将找到一些可能遇到的常见问题及其解决方法。如果您遇到了此处未涵盖的问题,请[提交 issue](https://github.com/PyCQA/vscode-bandit/issues)。
标签:Bandit, docx, IDE 插件, linting, MITM代理, PyCQA, Python, SAST, SOC Prime, Visual Studio Code, VSCode 扩展, VSCode 插件, 云安全监控, 代码安全, 代码审查, 前端框架, 安全扫描, 安全检查, 安全漏洞检测, 开发工具, 无后门, 时序注入, 漏洞枚举, 盲注攻击, 逆向工具, 静态分析, 静态应用安全测试