平台工程 - AWS 规范性指导

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

平台工程

通过打包的、可重复使用的云产品构建安全、合规的多账户云环境。

为了支持开发团队进行创新,该平台需要快速适应,以满足业务需求。(请参阅 AWS CAF 业务视角。) 它必须做到既足够灵活以适应产品管理需求,又足够严格以遵守安全限制,并且足够快速以满足运营需求。此过程需要构建一个合规的多账户云环境,该环境具有增强的安全功能和打包的、可重复使用的云产品。 

有效的云环境使您的团队可以轻松预调配新账户,同时确保这些账户符合组织策略。一组策管式云产品可以帮助您规范最佳实践,帮助您进行治理,并帮助提高云部署的速度和一致性。部署最佳实践蓝图,以及检测性和预防性护栏。将您的云环境与现有环境集成,以实现所需的混合云使用案例。

自动执行账户预调配工作流程,并使用多个账户来支持您的安全和治理目标。在本地环境和云环境之间以及不同云账户之间设置连接。在现有身份提供者(IdP)和云环境之间实现联合身份验证,以便用户可以使用现有登录凭证进行身份验证。集中日志记录,建立跨账户安全审计,创建入站和出站 DNS 解析程序,并获得对账户和护栏的控制面板可见性。

根据企业标准和配置管理,评估和认证可供使用的云服务。将企业标准打包并不断改进为自助部署产品和消耗性服务。利用基础设施即代码(IaC)以声明式方式定义配置。创建支持团队,向开发者和业务用户宣传该平台,并允许他们构建集成,从而加快整个组织的采用速度。

要完成以下各部分中讨论的任务,您需要培养能力和团队,使您的组织朝着现代平台工程方向发展。有关技术详细信息,请参阅 Establishing your Cloud Foundation on AWS 白皮书。

晚于

构建登录区并部署护栏

当您开始迈向成熟的平台工程之旅时,必须首先按照平台架构功能中定义的方式,部署具有检测性和预防性护栏的登录区。护栏可确保应用程序所有者在使用云资源时不会违反组织标准。通过此机制,您可以自动执行账户预调配工作流程,以使用多个账户来支持您的安全治理目标。 

建立身份验证

根据 AWS CAF 安全视角中规定的标准,在所有环境、系统、工作负载和流程中实施身份管理和访问控制。对于员工身份,限制 AWS Identity and Access Management (IAM)用户的使用,改为依赖允许您在集中位置管理身份的身份提供者。这样可以更轻松地管理跨多个应用程序和服务的访问权限,因为您可以从一个位置创建、管理和撤消访问权限。使用现有流程来管理对 AWS 环境的访问权限的创建、更新和删除。

部署网络

根据您的平台架构设计,创建集中式网络账户,以控制进出您环境的入站和出站流量。我们建议您设计网络,以便在本地网络与 AWS 环境之间、与互联网之间以及跨 AWS 环境之间快速配置连接。集中网络管理使您能够部署网络控制,通过使用预防性和被动控制来隔离整个环境中的网络和连接。

收集、汇总和保护事件和日志数据

使用 Amazon CloudWatch 跨账户可观察性。它提供了一个统一的界面,用于搜索、可视化及分析关联账户中的指标、日志和跟踪记录,并消除账户边界。

如果您的组织对集中日志控制和安全性具有特定的合规性要求,请考虑设置一个专用的日志归档账户。这提供了一个专门用于日志数据的集中式加密存储库。通过定期轮换加密密钥来增强此归档的安全性。

实施稳健的策略来保护敏感的日志数据,必要时使用掩蔽技术。将日志聚合用于合规、安全和审计日志,并确保使用严格的防护栏和身份结构,以防止未经授权更改日志配置。

建立控制

根据 AWS CAF 安全视角的定义,部署满足您业务需求的基础安全功能。部署额外的预防性检测性控制,并根据需要在所有账户中以编程方式一致地预调配这些控制。将检测性控制集成到平台架构功能所定义的运营工具中,以便运营机制可以审查不合规资源。

实施云财务管理

根据 AWS CAF 治理的视角,实施成本分配标签和 AWS Cost Categories,使组织的标签策略与云消费的财务责任保持一致。 AWS Cost Categories 允许您使用诸如AWS Cost Explorer中发布的账单数据之类的工具,向内部成本中心收取或显示云费用AWS 成本和使用情况报告。 

推进

构建基础设施自动化

在继续操作之前,根据您的平台架构对云服务进行评估和认证,以供使用。然后,将企业标准打包并不断改进为可部署的产品和可消费的服务,并使用基础设施即代码(IaC)以声明式方式定义配置。基础设施自动化通过基于角色的访问权限控制(RBAC)或基于属性的访问权限控制(ABAC)来允许访问每个账户中的特定服务,从而模拟软件开发周期。通过使用或开发自助服务功能,部署一种方法来快速配置新帐户 APIs,并使其与您的服务和事件管理功能保持一致。创建账户时自动进行网络集成和 IP 分配,以确保合规和网络安全。通过使用配置为与 AWS协同工作的原生连接器,将新账户与您的 IT 服务管理(ITSM)解决方案集成。根据需要更新您的行动手册和运行手册。

提供集中式可观测性服务

为了实现有效的云可观测性,您的平台应支持对本地和集中式日志数据的实时搜索和分析。随着运营规模的扩展,平台索引、可视化和解释日志、指标和跟踪的能力是将原始数据转化为可操作洞察的关键。

通过关联日志、指标和跟踪,您可以提取可操作的结论,并制定有针对性、明智的响应。制定规则,允许对日志、指标或跟踪中识别的安全事件或模式做出主动响应。随着 AWS 解决方案的扩展,请确保您的监控策略同步扩展,以保持和增强您的可观察性能力。

实施系统管理和 AMI 治理

广泛使用 Amazon Elastic Compute Cloud(Amazon EC2)实例的组织需要操作工具来大规模管理实例。软件资产管理、端点检测和响应、库存管理、漏洞管理和访问管理是许多组织的基础功能。 这些功能通常通过安装在实例上的软件代理来实现。开发将代理和其他自定义配置打包到亚马逊机器映像(AMI)中的功能,并向云平台的用户提供这些 AMI。使用预防性和检测性控制来治理这些 AMI 的使用。AMI 应包含能够大规模管理长时间运行的 EC2 实例的工具,特别是对于不经常使用新 AMIs 实例的可变 Amazon EC2 工作负载。您可以大规模使用 AWS Systems Manager 来自动升级代理、收集系统清单、远程访问 EC2 实例以及修补操作系统漏洞。

管理凭证使用

根据 AWS CAF 安全视角,实现角色和临时凭证。使用工具通过使用预安装的代理来管理对实例或本地系统的远程访问,而无需存储机密密钥。减少对长期凭证的依赖,在 IaC 模板中扫描硬编码凭证。如果您无法使用临时凭证,请使用应用程序令牌和数据库密码等编程工具来自动轮换和管理凭证。使用 IaC 的最低权限原则对用户、组和角色进行编码,并通过使用护栏来防止手动创建身份账户。

建立安全工具

安全监控工具应支持跨基础设施、应用程序和工作负载的精细安全监控,并为模式分析提供聚合视图。与所有其他安全管理工具一样,您应扩展检测和响应 (XDR) 工具,以提供按照 AWS CAF Security 视角 AWS 中定义的要求评估、检测、响应和修复应用程序、资源和环境安全的功能。

Excel

通过自动化获取和分发身份结构

使用 IaC 工具对角色、策略和模板等身份结构进行编码和版本化。使用策略验证工具检查是否有安全警告、错误、一般警告、建议的 IAM 策略更改和其他调查发现。在适当情况下,部署和删除以自动方式提供对环境的临时访问权限的身份构造,并禁止使用控制台的个人进行部署。

为跨环境的异常模式添加检测和提醒

主动评估环境中是否存在已知漏洞,并增加对异常事件和活动模式的检测。审查调查发现并向平台架构团队提出建议,以进行能够进一步提高效率和创新的变革。 

对威胁进行分析和建模

根据 AWS CAF 安全视角的要求,对行业和安全基准进行持续监控和测量。在实施检测方法时,确定哪些类型的事件数据和信息最能为您的安全管理职能提供信息。此监控包括多种攻击向量,包括服务使用量。您的安全基础应包括在多账户环境中进行安全日志记录和分析的全面功能,包括关联来自多个来源的事件的能力。使用特定的控件和护栏防止更改此配置。 

持续收集、审查和完善权限

记录身份角色和权限的更改,并在检测性护栏检测到与预期配置状态的偏差时发出提醒。使用汇总和模式识别工具来审查您的集中式事件集合,并根据需要完善权限。

选择、衡量并持续改进您的平台指标

为了使平台成功运营,应建立并定期审查全面的指标。确保它们与组织目标和利益相关者的需求保持一致。使用团队支持和工具采用指标,跟踪平台性能和改进指标,并结合补丁、备份和合规等操作参数。

使用CloudWatch跨账户可观察性实现高效的指标管理。此服务简化了数据聚合和可视化,以实现明智的决策和有针对性的增强。使用这些指标作为成功指标和变革驱动力,营造持续改进的环境。