alphacrack/aws-cdk-secure-constructs

GitHub: alphacrack/aws-cdk-secure-constructs

一套默认安全的 AWS CDK L2 构造库,通过强制执行 CIS 基线管控和分层属性注入,帮助团队在基础设施代码层面内建安全合规能力。

Stars: 2 | Forks: 1

# AWS CDK Secure Constructs 默认安全的 AWS CDK constructs,支持 [CDK 属性注入](https://docs.aws.amazon.com/cdk/v2/guide/blueprints.html)。 **状态:** 早期阶段。目前仅实现了 **S3 (`SecureBucket`)**。要求 `aws-cdk-lib` >= 2.196.0。 ## 功能介绍 - **Construct:** `SecureBucket` — CIS 关键设置(加密、阻止公共访问、SSL、对象所有权)将始终被强制执行。 - **层级:** 用于操作设置(版本控制、日志记录、移除策略)的 `HIGH` / `MEDIUM` / `LOW`。 - **注入器:** 属性注入器,包括 `TieredSecureBucketDefaults`(仅收紧权限)。 - **合规性:** `S3BucketCompliance.report()` — 强制执行的管控措施通过合成测试进行验证。 属性注入器用于设置默认值;它们不会阻止直接使用 L1 `CfnBucket`。 ## 安装 从 npm 安装(发布后): ``` npm install aws-cdk-secure-constructs ``` 从该仓库安装(本地): ``` npm install npm run build npm run test:local-build # pack + install + cdk synth ``` ## 使用说明 ``` import { App, Stack } from 'aws-cdk-lib'; import { SecureBucket, SecurityLevel } from 'aws-cdk-secure-constructs'; const app = new App(); const stack = new Stack(app, 'MyStack'); new SecureBucket(stack, 'Data', { securityLevel: SecurityLevel.HIGH, }); ``` 分层注入器(全组织基准): ``` import { PropertyInjectors } from 'aws-cdk-lib'; import { Bucket } from 'aws-cdk-lib/aws-s3'; import { TieredSecureBucketDefaults, SecurityLevel } from 'aws-cdk-secure-constructs'; PropertyInjectors.of(app).add( new TieredSecureBucketDefaults({ securityLevel: SecurityLevel.MEDIUM }) ); new Bucket(stack, 'RawBucket', { enforceSSL: false }); // CIS-critical fields still enforced ``` 更多示例:[examples/](examples/),[examples/local-consumer/](examples/local-consumer/)(用于测试已发布的 tarball)。 ## 开发 ``` npm install npm run build # jsii -> lib/ npm test npm run lint npm run test:local-build npm run release -- patch # from clean main only; tags and triggers CI publish ``` ## 文档 - [API](docs/API.md) - [安全模型](docs/SECURITY.md) - [设计指南](docs/DESIGN.md) - [贡献指南](CONTRIBUTING.md) - [路线图](ROADMAP.md) ## 许可证 MIT — 详见 [LICENSE](LICENSE)。
标签:AWS CDK, TypeScript, 云安全配置, 云计算, 安全合规, 安全插件, 暗色界面, 网络代理, 自动化攻击, 规则引擎