Stellar Engine 部署阶段

Stellar Engine 采用分层阶段设计,可实现依赖项隔离、安全遏制和可重复部署。该代码库分为四个连续的阶段,每个阶段负责着陆区的特定网域。

阶段 0:引导

引导阶段会初始化管理部署流程本身所需的最低限度的可行基础设施,充当 IaC 流水线的信任根。

此阶段对初始部署者服务账号应用了最小权限原则,并严格分离了管理层次结构。

此阶段的目标是创建以下内容:

  • 行政基础
  • 远程状态管理
  • 初始安全边界

系统会创建以下资源:

  • 核心结算账号关联和预算提醒
  • 用于托管部署服务账号的专用管理 IaC 项目
  • 为 Terraform 远程状态锁定 Cloud Storage 存储分区,并启用对象版本控制
  • 与中央 Cloud Logging 存储桶集成的全局审核日志接收器
  • 重要联系人配置,有助于确保安全、技术和结算通知仅发送到授权的机构网域

第 1 阶段:资源管理

资源管理阶段会创建组织层次结构、访问权限边界和租户隔离。

此阶段的目标是定义特定监管框架所需的文件夹、项目和自定义 Identity and Access Management 角色。

此阶段在不同的管理网域中采用职责分离原则,并严格隔离资源。

系统会创建以下资源:

  • 符合合规要求的文件夹层次结构(例如 ProdNon-ProdSecurityShared
  • 按环境和功能隔离的专用租户项目
  • 精细的 IAM 角色绑定和自定义角色,以强制执行最小权限原则

第 2 阶段:建立人际网络

“网络”阶段会预配通信路径、边界安全控制和混合连接。Stellar Engine 支持多个网络模块,包括 FedRAMP HighIL5 NGFW

此阶段的目标是建立安全连接模式、数据包过滤以及入站或出站控制。

此阶段侧重于严格的边界保护、集中式流量检查和深度数据包过滤。运行此阶段后,集成 SIEM 解决方案以监控资源。将 SIEM 分段到单独的Google Cloud 项目和单独的 VPC 中,以便与收集数据的位置分开。

系统会创建以下资源:

  • 可最大限度减少公开暴露的中心辐射型共享 VPC 拓扑或 Network Connectivity Center 架构
  • 适用于混合工作负载的 VPC 对等互连、Cloud VPN 或专用互连连接
  • 在专用检查 VPC 中使用 Palo Alto VM-Series 新一代防火墙 (NGFW)(DoD IL5 飞地必需)的标准 VPC 路由或高级服务链

第 3 阶段:安全和审核

安全和审核阶段应用加密强制执行、最终锁定和服务责任。

此阶段的目标是增强数据保护、审核可追溯性和加密主权。

此阶段侧重于静态数据主权、使用中数据主权和严格的数据加密隔离。

系统会创建以下资源:

  • Cloud Key Management Service (Cloud KMS) 密钥环和密钥,以满足所有存储服务的客户管理的加密密钥 (CMEK) 要求
  • 应用于部署期间所用服务账号的安全锁定脚本和组织政策服务限制条件
  • 死信主题和有关审核日志提取失败的提醒

部署原则

下表介绍了 Stellar Engine 在部署过程中遵循的原则。

原则 说明
状态隔离

Terraform 状态文件按阶段严格分隔。例如,阶段 2 中的 bug 或状态损坏无法访问或损坏阶段 0 或阶段 1 的核心状态或凭据。

模块版本固定

蓝图使用固定的 Git 标记或提交哈希值来引用模块化依赖项。固定有助于确保模块注册表中的上游更改不会在未经明确审核的情况下自动引入到目标环境中。

影响控制

更新在阶段目录中本地执行。影响范围控制有助于确保对第 2 阶段防火墙规则的代码更改不会影响第 3 阶段的 Cloud KMS 密钥。

故障隔离

Cloud Storage 状态存储分区配置为启用对象版本控制。如果错误的代码更改或手动状态编辑损坏了状态文件,则可以立即将该文件恢复到之前的版本。