islamelkadi/terraform-aws-config
GitHub: islamelkadi/terraform-aws-config
生产级 Terraform 模块,用于部署支持多框架合规的 AWS Config 服务,实现跨账户/区域的自动化合规监控与告警。
Stars: 0 | Forks: 0
# Terraform AWS Config 模块
[](https://github.com/islamelkadi/terraform-aws-config/actions/workflows/terraform-security.yaml)
[](https://github.com/islamelkadi/terraform-aws-config/actions/workflows/terraform-lint.yaml)
[](https://github.com/islamelkadi/terraform-aws-config/actions/workflows/terraform-docs.yaml)
支持聚合功能的可复用 AWS Config Terraform 模块。
## 前置条件
本模块专为 macOS 设计。您的机器上必须已安装以下内容:
- Python 3 和 pip
- [Kiro](https://kiro.dev) 和 Kiro CLI
- [Homebrew](https://brew.sh)
要安装其余开发工具,请运行:
```
make bootstrap
```
这将安装/升级:tfenv、Terraform(通过 tfenv)、tflint、terraform-docs、checkov 和 pre-commit。
## 安全
### 安全控制
实施针对 FSBP、CIS、NIST 800-53/171 和 PCI DSS v4.0 的控制措施:
- 持续记录资源配置
- 自动合规规则评估
- 配置快照的 KMS 加密
- 合规违规的 SNS 通知
- Config 服务角色的 IAM 最小权限
- 带有审计说明的安全控制覆盖
### 基于环境的安全控制
安全控制通过 [terraform-aws-metadata](https://github.com/islamelkadi/terraform-aws-metadata?tab=readme-ov-file#security-profiles) 模块的安全配置文件,根据环境自动应用:
| 控制项 | Dev | Staging | Prod |
|---------|-----|---------|------|
| KMS 加密 | 可选 | 必需 | 必需 |
| 持续记录 | 可选 | 必需 | 必需 |
| SNS 通知 | 可选 | 推荐 | 必需 |
| 多区域聚合 | 可选 | 推荐 | 必需 |
有关安全配置文件以及控制如何随环境变化的完整详细信息,请参阅 [安全配置文件](https://github.com/islamelkadi/terraform-aws-metadata?tab=readme-ov-file#security-profiles) 文档。
### 安全扫描抑制
本模块抑制了某些不适用于示例/演示代码的 Checkov 安全检查。以下检查在 `.checkov.yaml` 中被抑制:
**模块源版本控制 (CKV_TF_1, CKV_TF_2)**
- 被抑制是因为我们使用语义版本标签(`?ref=v1.0.0`)而不是提交哈希,以提高可维护性和可读性
- 语义版本控制是稳定版本的有效且广泛接受的版本控制策略
## 子模块
| 子模块 | 描述 |
|-----------|-------------|
| [aggregator](modules/aggregator/) | 用于多账户/区域合规的 AWS Config Aggregator |
## 模块结构
```
terraform-aws-config/
├── modules/
│ └── aggregator/
│ └── ...
└── README.md
```
## 要求
| 名称 | 版本 |
|------|---------|
| terraform | >= 1.14.3 |
| aws | >= 6.34 |
## MCP 服务器
本模块包含两个在 `.kiro/settings/mcp.json` 中配置的 [Model Context Protocol (MCP)](https://modelcontextprotocol.io/) 服务器,用于 Kiro:
| 服务器 | 包 | 描述 |
|--------|---------|-------------|
| `aws-docs` | `awslabs.aws-documentation-mcp-server@latest` | 提供对 AWS 文档的访问,用于服务功能、API 参考和最佳实践的上下文查找。 |
| `terraform` | `awslabs.terraform-mcp-server@latest` | 支持直接从 IDE 执行 Terraform 操作(init、validate、plan、fmt、tflint),并为常见工作流提供自动批准的命令。 |
这两个服务器都通过 `uvx` 运行,除了 [bootstrap](#prerequisites) 步骤外,无需额外安装。
## 要求
No requirements.
## Providers
No providers.
## Modules
No modules.
## Resources
No resources.
## 输入
No inputs.
## 输出
No outputs.
标签:AWS, AWS Config, CIS, DevSecOps, DPI, EC2, ECS, FSBP, IaC, KMS加密, NIST, PCI DSS, Pre-commit, Python, SNS通知, Terraform, Tflint, 上游代理, 亚马逊云科技, 人工智能安全, 企业级, 合规性, 安全合规, 安全基线, 开源框架, 持续集成, 教学环境, 无后门, 模块, 治理, 网络代理, 自动化合规, 资源监控, 逆向工具