跳至主要内容

AWS 解决方案库

在 AWS 上使用 C2PA 的媒体来源指南

确立数字内容的真实性

概览

本指南演示了如何在 AWS 上运行内容来源和真实性联盟(C2PA)标准,以跟踪媒体工作负载的来源。通过 C2PA,您可以创建数字签名清单,以安全、防篡改的格式记录数字资产的来源。本指南使用封装在 Docker 容器中的 C2PA 开源命令行工具自动执行此过程。然后,AWS CloudFormation 模板会使用 AWS Fargate 和 AWS Lambda 创建一个应用程序,以接受每个数字资产以及输入参数,并生成一个 C2PA 附带文件来记录每个资产的来源。

工作原理

AWS Fargate

此架构图显示了如何使用 AWS Fargate 为 AWS 账户中的媒体工作负载生成 C2PA 清单 Sidecar 文件。该架构图也适用于 AWS Lambda,如下一个选项卡所示。

Architecture diagram illustrating an AWS Cloud solution for C2PA media provenance using AWS Fargate, Amazon S3, Certificate Authority, AWS Secrets Manager, and associated cloud components, including digital asset management and JSON assertions.

AWS Lambda

此架构图显示了如何使用 AWS Lambda 为 AWS 账户中的媒体工作负载生成 C2PA 清单 Sidecar 文件。

Architecture diagram illustrating a media provenance workflow using C2PA standards on AWS. Components include AWS Lambda, Secrets Manager, S3, a certificate authority, MAM system, and JSON assertions. The diagram shows the flow of digital assets, certificate creation, and manifest generation in the AWS Cloud.

自信地进行部署

在账户中启动本指南所需的一切都在这里。

让我们来实现它

为部署做好准备了吗? 查看 GitHub 上的示例代码,了解详细的部署说明,以根据需要按原样部署或进行自定义部署。

访问示例代码

Well-Architected 支柱

上面的架构图是按照 Well-Architected 最佳实践创建的解决方案示例。要做到完全的良好架构,您应该遵循尽可能多的 Well-Architected 最佳实践。

AWS 云开发套件 (AWS CDK) 使您能够将基础设施作为代码进行管理,可让您的开发人员针对不同的环境自动部署、更新或删除本指南。此外,它还支持采用可扩展的结构化方法来管理基础设施。因此,您可以降低控制台上潜在的手动操作错误风险,并轻松地将解决方案部署到业务的其他部分。

阅读“卓越运营”白皮书

IAM 角色会保护由 Lambda 函数 URL 公开的 API,因此只有具有适当权限的用户才能调用端点。此外,用户必须使用内部应用程序负载均衡器访问 Fargate 公开的 API,只有 VPC 内的调用者才能访问该负载均衡器。您可以整合亚马逊虚拟私有云 (Amazon VPC) 高级安全功能来配置特定的访问规则。最后,Secrets Manager 可以安全地存储数字证书和用于签署 C2PA 清单的私有密钥,并提供审计和监控工具。

阅读《安全性》白皮书

Lambda 在无服务器环境中生成 C2PA 清单,该环境旨在实现高可用性和可靠性。例如,它会自动扩展功能以保持可用性,在出现故障时重试流程,并且可以配置为在多个可用区(AZ)中运行,以提供弹性。

Fargat e一起使用的@@ 亚马逊弹性容器服务(Amazon ECS)是生成C2PA清单的替代架构。该架构使用完全托管的服务来部署和管理容器化应用程序,并通过运行状况检查和自动修复来处理意外系统错误,从而支持可靠性。例如,Fargate 可持续监控和替换任何出现故障或运行不正常的容器,并根据工作负载进行扩展,以保持应用程序的可靠性和响应能力。此外,如果将 Fargate 配置为在多个可用区中运行,应用程序负载均衡器将自动将请求路由到运行状况良好的容器,从而使请求处理更具弹性。

阅读《可靠性》白皮书

Lambda 支持函数 URL,无需 API 网关即可公开 REST API,从而简化了架构。这些功能可根据需求自动扩展,因此您的开发运营团队无需预置和管理亚马逊弹性计算云 (Amazon EC2) 实例或规划和管理亚马逊 EC2 自动扩展组。此外,Fargate 可在无服务器环境中启动任务,无需预置和维护 Amazon EC2 实例,从而简化了容器化应用程序的部署。您还可以根据工作负载特征调整 Fargate 任务的大小,并将其配置为自动扩展或缩减正在运行任务的数量,以最大限度地利用计算资源。

阅读《性能效率》白皮书

Lambda 仅按其处理数据的时间计费,并根据需求进行扩展,因此您无需为闲置的计算资源付费。此外,您还可以对 Fargate 进行配置,以使用合适的 CPU 和内存大小,从而平衡性能和成本。

阅读《成本优化》白皮书

Lambda 仅使用工作负载所需的计算能量。Fargate 是一项托管服务,因此,您无需实施自己的容器基础设施,而是可以依靠 AWS 对已部署的硬件进行高利用率和可持续性优化。

阅读《可持续性》白皮书

免责声明

示例代码;软件库;命令行工具;概念验证;模板;或其他相关技术(包括由我方人员提供的任何前述项)作为 AWS 内容按照《AWS 客户协议》或您与 AWS 之间的相关书面协议(以适用者为准)向您提供。您不应将这些 AWS 内容用在您的生产账户中,或用于生产或其他关键数据。您负责根据特定质量控制规程和标准测试、保护和优化 AWS 内容,例如示例代码,以使其适合生产级应用。部署 AWS 内容可能会因创建或使用 AWS 可收费资源(例如,运行 Amazon EC2 实例或使用 Amazon S3 存储)而产生 AWS 费用。

找到今天要查找的内容了吗?

请提供您的意见,以便我们改进网页内容的质量。