概览
此解决方案可提供一个机制,用于集中存储由监管 AWS 工作负载的云安全控件签发的证据,作为防止篡改的持久证据记录。存储的控件证据随后可用于合规性评估机制、部署决策或审计流程中。
证据记录是系统或人工生成的史实的数字记录,它与一个或多个目标实体有关,由证据提供者签发。
注意:AWS 不提供合规性或监管建议。您应该独立评估 Verifiable Controls Evidence Store 对您的用例的适用性,包括为了满足您可能拥有的任何审计、合规性和监管要求。
优势
近乎实时地存储和检索证据。查询证据记录,确定软件版本是否满足合规性要求,以帮助做出部署决策,或追溯性访问证据以帮助进行临时审计或调查。
通过不同的数据格式加入 AWS、第三方提供商和自定义系统或人工证据提供者。自定义架构支持各种证据类型。将为环境定义的目标实体相关的历史性证据相关联,例如应用程序版本或部署环境。
通过 Web 应用程序和/或 API 进行交互,以管理证据和加入证据提供者。两种界面均支持所有操作和任务。
验证已存储的证据记录的数据完整性。该解决方案使用 Amazon Quantum Ledger Database (QLDB) 确保不可变性,并允许对证据进行加密验证。
技术详情
您可以使用实施指南自动部署此架构。
步骤 1
AWS Cloud 开发工具包(CDK)代码部署了一个 Amazon CloudFront 分发来为可选的 UI 提供服务。CloudFront 可提供低延迟、高性能且安全的静态 Web 托管。Amazon Simple Storage Service(Amazon S3)Web UI 存储桶应用于托管静态 Web 应用程序构件。
第 2 步
Amazon Cognito 用户池,用于为客户提供快速、方便的身份验证机制来探索解决方案的功能,而无需进行大量配置。
第 3 步
Amazon API Gateway 用于显示一组 RESTful API。API 网关用于处理由证据存储使用者发出的 HTTP 请求。它通过根据 AWS Identity and Access Management(IAM)及其 API 使用计划来验证请求的凭证(签名和 API 密钥),以此编排身份验证和授权工作流。
第 4 步
证据存储 AWS Lambda 函数用于处理来自 API 网关的已验证请求。此 Lambda 函数将会枚举解决方案的业务逻辑,以通过 API 网关接收来自用户的其他请求,验证并存储这些请求,并检索进出不同数据库的数据。
第 5 步
Amazon Quantum Ledger Database(Amazon QLDB)用于跟踪和存储证据记录。Amazon QLDB 用于确保证据记录的不可变性并以加密方式验证本质。证据记录的内容将存储于 Amazon S3 中,并且其哈希值将保存于 Amazon QLDB 中。
第 6 步
Amazon DynamoDB 用于存储证据提供者及其相应的证据内容模式。请求处理 Lambda 函数依靠此数据来在将证据内容提交至 Amazon QLDB 分类账之前对其进行验证。
第 7 步
流处理 Lambda 函数用于将证据记录复制到 Amazon OpenSearch Service,以在整个证据记录数据结构中提供高级查询功能(全文搜索)。
第 8 步
Amazon Kinesis Data Streams 用于将记录复制到 Amazon OpenSearch Service,以便为使用者提供更好的查询体验。Amazon Kinesis 为解决方案提供用于近乎实时地复制和归档证据记录的渠道。
第 9 步
Amazon Kinesis Data Firehose 用于将证据记录归档至 S3 存储桶。
第 10 步
Amazon CloudWatch 和 AWS X-Ray 用于日志记录和监控。
第 11 步
AWS Config 和 AWS Security Hub 用于将调查结果发布至 Amazon EventBridge。
第 12 步
Amazon Simple Queue Service(Amazon SQS)用于为 AWS Config 和 Security Hub 证据收集器提供速率限制功能。
第 13 步
证据收集器 Lambda 函数用于调用 Create Evidence API 以记录调查发现。其中包括 Security Hub 证据收集器和 S3 证据收集器。