cdk-patterns
构建 AWS CDK 基础设施模式
使用 CDK 构建设计生产就绪的 AWS 基础设施。应用经过验证的模式来构建无服务器 API、容器和数据管道,使用可复用的 L2/L3 构造。
تنزيل ZIP المهارة
رفع في Claude
اذهب إلى Settings → Capabilities → Skills → Upload skill
فعّل وابدأ الاستخدام
اختبرها
استخدام "cdk-patterns". 创建一个带有 Lambda 和 DynamoDB 的无服务器 API
النتيجة المتوقعة:
生成一个完整的 CDK 构造,包含 API Gateway 集成、具有适当运行时配置的 Lambda 函数、具有按需计费功能的 DynamoDB 表、使用 grantReadWriteData 的 IAM 权限,以及为可观测性启用的 X-Ray 追踪。
استخدام "cdk-patterns". 审查我的 CDK 栈是否符合最佳实践
النتيجة المتوقعة:
提供具体建议:将 CfnFunction 替换为 lambda.Function L2 构造,为有状态资源添加 RemovalPolicy.RETAIN,使用 table.grantReadWriteData 而不是内联策略实现最小权限 IAM,并添加 cdk.Tags 用于资源组织。
التدقيق الأمني
آمنAll static analysis findings are false positives. The 'Dynamic function constructor' at line 53 is actually a CDK Lambda construct (new lambda.Function). The 'Ruby/shell backtick execution' detections are markdown code block delimiters (```typescript), not shell commands. The 'Weak cryptographic algorithm' findings reference description text, not actual crypto code. This skill contains only documentation and example CDK TypeScript code with no executable security risks.
درجة الجودة
ماذا يمكنك بناءه
无服务器 API 开发
使用 API Gateway、Lambda 和 DynamoDB 构建生产就绪的无服务器 API,启用适当的 IAM 权限和监控。
可复用的基础设施构造
创建组织标准的 L3 构造,将最佳实践编码到跨团队的一致性基础设施部署中。
CDK 代码审查和优化
审查现有 CDK 代码中的反模式、安全问题,以及使用更高级别构造的机会。
جرّب هذه الموجهات
创建一个 TypeScript 的 CDK 栈,部署带有 S3 存储桶的 Lambda 函数。使用 L2 构造,应用移除策略,并启用 X-Ray 追踪。
为带有 API Gateway、Lambda 和 DynamoDB 的无服务器 API 生成可复用的 CDK 构造。包括适当的 IAM 权限、环境变量和 CloudWatch 告警。
设计一个多栈 CDK 应用程序,将有状态资源(RDS、S3)与无状态计算(Lambda、ECS)分离。展示如何在栈之间传递引用。
审查此 CDK 栈是否存在安全反模式、IAM 过度权限,以及使用 L2 构造替代 L1 的机会。提出具体的改进建议。
أفضل الممارسات
- 使用 L2 构造而非 L1 (Cfn*) 构造,以获得更安全的默认值和更少的样板代码
- 将有状态资源(数据库、存储桶)与无状态计算分离到不同的栈中,以实现独立的生命周期管理
- 使用 grant 方法而不是宽泛的内联策略,将所有 IAM 角色的最小权限原则应用到所有 IAM 角色
تجنب
- 当存在 L2 替代方案时使用 L1 (Cfn*) 构造,导致更多代码和更弱的安全保证
- 硬编码账户 ID 或区域,而不是使用 cdk.Aws.ACCOUNT_ID 和 cdk.Aws.REGION 以保持可移植性
- 在同一栈中部署有状态和无状态资源,不必要地耦合它们的生命周期