SuperAPI AI 工具集

terraform-security-scan

安全与审计

查看项目

更新于 10-16 06:57

技能介绍

Terraform Security Scan 技能用于对 Azure 基础设施的 Terraform 配置执行全面的安全扫描与合规检查。

用途 该技能面向以下场景:审查 Terraform 代码中的安全漏洞;检查是否符合安全框架;作为部署前的安全门禁;进行安全审计与评估;以及在拉取请求中开展安全审查。

主要能力 技能按类别组织安全检查,并提供不安全与安全写法的对照示例。

认证与密钥:检查是否存在硬编码凭据。示例中,不安全的做法是直接输出存储账户的主访问密钥;安全的做法是通过 azurerm_key_vault_secret 数据源从 Key Vault 获取存储连接字符串。

加密:检查存储加密。示例展示了 azurerm_storage_account 资源的安全配置,包括设置 min_tls_version 为 TLS1_2、启用 enable_https_traffic_only、并将 allow_nested_items_to_be_public 设为 false。

网络安全:检查 NSG 规则。示例展示了 azurerm_network_security_group 资源中允许 HTTPS 的入站安全规则配置。

RBAC 与访问控制:检查最小权限。示例展示了 azurerm_role_assignment 资源,将 Storage Blob Data Reader 角色分配给用户分配的托管标识。

使用方式 技能提供安全扫描命令。

使用 tfsec 进行静态分析: brew install tfsec tfsec . tfsec . --format json > security-report.json

使用 Checkov 扫描: pip install checkov checkov -d . checkov -d . --framework terraform --check CKV_AZURE

与 CI/CD 集成 技能提供 GitHub Actions 安全门禁示例,在 pull_request 时运行。作业在 ubuntu-latest 上执行,步骤包括检出代码、运行 tfsec(使用 aquasecurity/tfsec-action@v1.0.0,soft_fail 为 false)、运行 Checkov(使用 bridgecrewio/checkov-action@master,directory 为 .,framework 为 terraform,soft_fail 为 false)。

合规框架 技能涉及以下合规框架。

Azure Security Benchmark:需验证的关键控制项包括网络安全控制、身份管理、数据保护、资产管理、日志与威胁检测。

CIS Azure Foundations:需检查的章节包括 1.x 身份与访问管理、3.x 存储账户、4.x 数据库服务、5.x 日志与监控、6.x 网络。

适用场景 适用于 Azure 基础设施的 Terraform 配置在开发、审查、部署前和审计阶段的安全与合规检查,尤其适合集成到拉取请求流程中作为自动化安全门禁。

限制 资料未提供该技能的具体安装方式、支持的 Terraform 版本范围、扫描规则总数、误报率、性能表现、收费或价格信息,也未提供除 tfsec 与 Checkov 之外的其他工具支持情况。详细合规检查清单、安全模式和扫描工具配置需参见其参考指南,资料中未展开。