Qualimetry/intellij-terraform-plugin
GitHub: Qualimetry/intellij-terraform-plugin
一款集成 tflint、Trivy 和 Checkov 的 IntelliJ 插件,在 JetBrains IDE 中对 Terraform 文件进行实时静态分析和安全合规检查。
Stars: 0 | Forks: 0
# Qualimetry Terraform Analyzer - IntelliJ 插件
在 IntelliJ IDEA 和其他 JetBrains IDE 中对 Terraform 文件 (`.tf`) 进行静态分析,包括在 JetBrains Qodana 中用于 CI/CD 流水线的无头 (headless) 分析。
由与 [VS Code 扩展](https://github.com/Qualimetry/vscode-terraform-plugin) 和 [SonarQube 插件](https://github.com/Qualimetry/sonarqube-terraform-plugin) 相同的分析引擎驱动。
## 功能特性
- **766 条规则**,源自 tflint、Trivy 和 checkov,涵盖配置错误、安全、风格和正确性。
- **实时诊断**,在编辑 `.tf` 文件时即时生效。
- **可配置** — 通过逐规则设置面板启用/禁用单个规则并覆盖严重级别。
- **SonarQube 导入** — 通过 **Tools > Qualimetry Terraform > Import Rules from SonarQube** 从 SonarQube 质量配置 (quality profile) 导入活动规则。
- **Qodana 支持** — 在 JetBrains Qodana 中自动运行,用于 CI/CD 中的质量门禁 (quality gates)。
## 规则类别
| 来源 | 侧重 | 示例 |
|--------|-------|----------|
| tflint | Terraform 约定 | 命名约定、已弃用语法、Provider 要求 |
| Trivy | 安全配置错误 | S3 加密、IAM 策略、网络安全组 |
| checkov | 合规性与最佳实践 | CIS 基准、SOC2、HIPAA、PCI-DSS 检查 |
## 前置条件
该插件将 tflint、Trivy 和 checkov 作为外部工具运行。请将它们安装在您的 PATH 中:
- [tflint](https://github.com/terraform-linters/tflint)
- [Trivy](https://aquasecurity.github.io/trivy/)
- [checkov](https://www.checkov.io/)
如果未安装某个工具,则该工具的检测结果将被静默跳过。
## 安装
### 从 JetBrains Marketplace 安装
1. 打开 **Settings > Plugins > Marketplace**。
2. 搜索 **Qualimetry Terraform Analyzer**。
3. 点击 **Install** 并重启。
### 从源码构建
```
cd
mvn clean install -pl terraform-rules
cd intellij-plugin
./gradlew buildPlugin
```
插件 ZIP 包生成在 `build/distributions/` 目录中。
## 配置
在 **Settings > Tools > Qualimetry Terraform Analyzer** 下配置分析器:
- **启用/禁用** 分析器(全局开关)。
- **逐规则表格** — 启用/禁用单个规则、设置严重级别覆盖、按名称或键过滤。
- **Reset to Defaults** — 清除所有覆盖设置并恢复为默认配置。
- 逐规则覆盖设置存储在 `qualimetry-terraform.xml` 中。
### 从 SonarQube 导入
使用 **Tools > Qualimetry Terraform > Import Rules from SonarQube** 从 SonarQube 质量配置中获取活动规则。输入您的服务器 URL、可选的身份验证令牌 以及可选的配置文件名称。导入的规则将替换当前配置。服务器 URL 和配置文件名称会在会话之间被记住。
## 其他可用版本
同样的分析引擎也支持其他平台的插件:
- **[VS Code 扩展](https://github.com/Qualimetry/vscode-terraform-plugin)** — 在 VS Code 中输入时即可捕获问题。
- **[SonarQube 插件](https://github.com/Qualimetry/sonarqube-terraform-plugin)** — 在 CI/CD 流水线中强制执行质量门禁。
规则键和严重级别在所有三个工具中保持一致,因此检测结果可以直接进行对比。
## 系统要求
- IntelliJ IDEA 2024.3 或更高版本(任何基于 IntelliJ 平台的 JetBrains IDE)。
- PATH 中存在 tflint、Trivy 和/或 checkov。
## 许可证
Apache License 2.0。有关详细信息,请参阅 [LICENSE](LICENSE)。
标签:CIS 基准, DevSecOps, ECS, HCL, IaC 安全, IDE 扩展, IntelliJ IDEA, JetBrains 插件, JS文件枚举, Qodana, SAST, SonarQube 集成, Terraform, tflint, 上游代理, 云安全监控, 后台面板检测, 后端开发, 安全专业人员, 盲注攻击, 策略即代码, 聊天机器人安全, 误配置检测, 静态分析