AWS Lambda
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

AWS Lambda 中的数据保护

AWS Lambda 符合 AWS 责任共担模型,此模型包含适用于数据保护的法规和准则。AWS 负责保护运行所有 AWS 服务的全球基础设施。AWS 保持对此基础设施上托管的数据的控制,包括用于处理客户内容和个人数据的安全配置控制。充当数据控制者或数据处理者的 AWS 客户和 APN 合作伙伴对他们在 AWS 云中放置的任何个人数据承担责任。

出于数据保护的目的,我们建议您保护 AWS 账户凭证并使用 AWS Identity and Access Management (IAM) 设置单个用户账户,以便仅向每个用户提供履行其工作职责所需的权限。我们还建议您通过以下方式保护您的数据:

  • 对每个账户使用 Multi-Factor Authentication (MFA)。

  • 使用 SSL/TLS 与 AWS 资源进行通信。

  • 使用 AWS CloudTrail 设置 API 和用户活动日志记录。

  • 使用 AWS 加密解决方案以及 AWS 服务中的所有默认安全控制。

  • 使用高级托管安全服务(例如 Amazon Macie),它有助于发现和保护存储在 Amazon S3 中的个人数据。

我们强烈建议您切勿将敏感的可识别信息(例如您客户的账号)放入自由格式字段或元数据(例如函数名称和标签)。这包括使用控制台、API、AWS CLI 或 AWS 开发工具包处理 Lambda 或其他 AWS 服务时。您输入到元数据的任何数据都可能被选取以包含在诊断日志中。当您向外部服务器提供 URL 时,请勿在 URL 中包含凭证信息来验证您对该服务器的请求。

有关数据保护的更多信息,请参阅 AWS 安全性博客上的 AWS 责任共担模型和 GDPR 博客文章。

传输中加密

Lambda API 终端节点仅支持基于 HTTPS 的安全连接。使用 AWS 管理控制台、AWS 开发工具包或 Lambda API 管理 Lambda 资源时,所有通信都使用传输层安全性 (TLS) 进行加密。

有关 API 终端节点的完整列表,请参阅 AWS General Reference中的 AWS 区域和终端节点

静态加密

您可以使用环境变量安全地存储密钥,以便与 Lambda 函数结合使用。Lambda 始终加密静态环境变量。

此外,您可以使用以下功能来自定义环境变量的加密方式。

  • 密钥配置 – 在每个函数级别,您可以将 Lambda 配置为使用您在 AWS Key Management Service 中创建和管理的加密密钥。这些称为客户管理的 客户主密钥 (CMK) 或客户托管密钥。如果您未配置客户托管密钥,Lambda 将使用 Lambda 在您的账户中创建的名为 aws/lambda 的 AWS 托管 CMK。

  • 加密帮助程序 – 在将环境变量值发送到 Lambda 之前,Lambda 控制台允许您在客户端对其进行加密。这可通过防止在 Lambda 控制台中或 Lambda API 返回的函数配置中以未加密形式显示密钥来进一步增强安全性。控制台还提供了示例代码,您可以调整这些代码来在函数处理程序中对值进行解密。

有关更多信息,请参阅 AWS Lambda 环境变量

Lambda 始终对您上传到 Lambda 的文件进行加密,包括部署包层存档

默认情况下,Amazon CloudWatch Logs 和 AWS X-Ray 也对数据进行加密,并可配置为使用客户托管密钥。有关详细信息,请参阅加密 CloudWatch Logs 中的日志数据AWS X-Ray 中的数据保护

本页内容: