关于适用于 Visual Studio Code 的 CodeQL
可以对从源代码生成的数据库运行 CodeQL 查询,以便查找代码库中的错误和安全漏洞。 有关 CodeQL code scanning 的详细信息,请参阅“关于使用 CodeQL 进行代码扫描”。
通过适用于 Visual Studio Code 的 CodeQL 扩展,可以执行以下操作:
- 编写自定义 CodeQL 查询和支持库
- 直接从大型开源
github/codeql
存储库查看和使用 CodeQL 安全查询。 - 对一个或多个 CodeQL 数据库运行查询
- 通过程序跟踪数据流,突出显示存在潜在安全漏洞的区域。
- 查看、创建和编辑所有类型的查询或库的 CodeQL 包,你可以使用这些包,也可以发布包与他人共享。
- 运行 CodeQL 查询的单元测试。
- 使用专用编辑器来查看、创建和编辑 CodeQL 模型包,这些包用于扩展标准 CodeQL 分析。
适用于 Visual Studio Code 的 CodeQL 扩展还会将 CodeQL 边栏视图添加到 VS Code。 这包括本地 CodeQL 数据库的列表、当前会话中运行的查询概述以及用于大规模分析的变体分析视图。
IntelliSense
该扩展为在 VS Code 编辑器中打开的查询文件(扩展 .ql
)和库文件(扩展 .qll
)提供标准 IntelliSense 功能。 这些设置包括:
- 语法突出显示
- 右键单击选项(如转到定义)
- 自动完成建议
- 悬停信息
有关 VS Code 中 Intellisense 的详细信息,请参阅 Visual Studio Code 文档中的 IntelliSense。
还可以使用 VS Code 文档格式设置命令来根据 CodeQL 样式指南设置代码的格式。
VS Code Command Palette
可以从 VS Code Command Palette 对适用于 VS Code 的 CodeQL 扩展运行命令。 有关 VS Code Command Palette 的详细信息,请参阅 VS Code 文档中的“用户界面”。
数据和遥测
如果明确选择允许 GitHub 收集使用情况数据和指标,GitHub 将执行此操作,以帮助核心开发人员改进适用于 Visual Studio Code 的 CodeQL 扩展。 有关详细信息,请参阅“Visual Studio Code 的 CodeQL 中的遥测”。
关于 GitHub CodeQL 许可证
许可证通知: 如果没有 GitHub Enterprise 许可证,则通过安装此产品,即表示你同意 GitHub CodeQL 条款和条件。
GitHubCodeQL 按用户授予许可。 根据许可证限制,可以使用 CodeQL 执行以下任务:
- 执行学术研究。
- 演示软件。
- 测试根据 OSI 批准的许可证发布的 CodeQL 查询,确认这些查询的新版本可以继续找到正确的漏洞。
其中“OSI 批准的许可证”是指开放源代码计划 (OSI) 批准的开放源代码软件许可证。
如果使用的是开放源代码代码库(即根据 OSI 批准的许可证发布的代码库),则还可以使用 CodeQL 来完成以下任务:
- 对开放源代码代码库执行分析。
- 如果在 GitHub.com 上托管和维护开放源代码库,则为自动分析、持续集成或持续交付或在此期间生成 CodeQL 数据库。
CodeQL 不能用于自动分析、持续集成或持续交付,无论是用作正常软件工程流程还是其他,除了在本文中明确规定的情况下,除非你具有 GitHub Advanced Security 的许可证。
后续步骤
若要了解如何安装适用于 Visual Studio Code 的 CodeQL 扩展,请参阅“安装适用于 Visual Studio Code 的 CodeQL”。