islamelkadi/terraform-aws-eventbridge

GitHub: islamelkadi/terraform-aws-eventbridge

一个生产就绪的 AWS EventBridge Terraform 模块,内置多框架合规支持和环境自适应安全控制。

Stars: 0 | Forks: 0

# Terraform AWS EventBridge 模块 [![Terraform Security](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/74b4821cdb132703.svg)](https://github.com/islamelkadi/terraform-aws-eventbridge/actions/workflows/terraform-security.yaml) [![Terraform Lint & Validation](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/052880aa2d132703.svg)](https://github.com/islamelkadi/terraform-aws-eventbridge/actions/workflows/terraform-lint.yaml) [![Terraform Docs](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/06ff714afb132704.svg)](https://github.com/islamelkadi/terraform-aws-eventbridge/actions/workflows/terraform-docs.yaml) 用于 AWS EventBridge 规则和目标的可复用 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 加密 - 用于事件总线访问的 IAM 最小权限策略 - 用于失败交付的 Dead letter queue 支持 - 用于监控的 CloudWatch Logs 集成 - 带有审计理由的安全控制覆盖 ### 基于环境的安全控制 安全控制通过 [terraform-aws-metadata](https://github.com/islamelkadi/terraform-aws-metadata?tab=readme-ov-file#security-profiles) 模块的安全配置文件根据环境自动应用: | 控制措施 | 开发环境 | 预发布环境 | 生产环境 | |---------|-----|---------|------| | KMS 客户托管密钥 | 可选 | 必需 | 必需 | | IAM 最小权限 | 强制执行 | 强制执行 | 强制执行 | | Dead letter queue | 可选 | 推荐 | 必需 | | CloudWatch Logs | 可选 | 必需 | 必需 | 有关安全配置文件以及控制措施如何随环境变化的完整详细信息,请参阅 [Security Profiles](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`)而不是提交哈希,以获得更好的可维护性和可读性 - 语义版本控制是稳定版本的有效且广泛接受的版本控制策略 **KMS IAM 策略 (CKV_AWS_111, CKV_AWS_356, CKV_AWS_109)** - 在示例代码中被抑制,其中 KMS 模块使用灵活的 IAM 策略用于演示目的 - 生产部署应根据特定的安全要求自定义 KMS 策略并应用最小权限原则 ## 子模块 | 子模块 | 描述 | |-----------|-------------| | [rule](modules/rule/) | 带有 Step Functions 和 Lambda 目标的 EventBridge 规则 | ## 模块结构 ``` terraform-aws-eventbridge/ ├── modules/ │ └── rule/ │ ├── example/ │ │ ├── main.tf │ │ ├── variables.tf │ │ ├── outputs.tf │ │ └── params/input.tfvars │ └── ... └── 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` 运行,除了 [引导](#prerequisites) 步骤外,无需额外安装。 ## 要求 无要求。 ## 提供商 无提供商。 ## 模块 无模块。 ## 资源 无资源。 ## 输入 无输入。 ## 输出 无输出。 ## 许可证 MIT 许可。有关完整详细信息,请参阅 [LICENSE](LICENSE)。
标签:AWS, CIS, CloudWatch, DPI, EC2, ECS, EventBridge, FSBP, IaC, IAM最小权限, KMS加密, NIST, PCI-DSS, Pre-commit, Python, Terraform, 事件驱动, 企业级, 安全合规, 审计, 提示词模板, 无后门, 无服务器, 模块, 死信队列, 漏洞利用检测, 网络代理, 网络调试, 自动化, 逆向工具