如何在 AWS Step Functions 中安全地传递敏感信息

问题描述 投票:0回答:3

使用 AWS Step Functions 将 Lambda 串在一起很有趣,但是有没有办法在执行详细信息屏幕上禁用/隐藏日志记录? secret information being displayed in plaintext 将私人信息从一个 lambda 传递到另一个 lambda 需要能够秘密完成,并且在每个步骤中添加 KMS 加密/解密会产生大量开销,对于生活在没有互联网访问的 VPC 中的 lambda 来说这是不可能的.

amazon-web-services aws-lambda aws-step-functions
3个回答
10
投票

我们已经与亚马逊进行了交谈,看起来没有办法从控制台隐藏这些信息。另一种方法是限制每一步发送到 Lambda 函数的内容。

因此,您可以确保某些功能只能看到输入数据的非 PII 子集。通常的解决方法是根本不传递 PII 数据,而是将 PII 数据放置在加密的数据存储中,例如 S3 存储桶或加密的 RDS 数据库表,并通过状态机传递对该对象的引用。


4
投票

另一种选择是使用 SSM 参数存储以及使用 KMS 加密的

SecureString
类型。 您可以在步骤之间传递 SSM 参数的名称。 lambda 函数将使用 API 来检索和解密单个请求中的值。 请参阅下面的链接,了解有关如何在 Python 中使用 boto3 使用 SSM 参数存储的文档。

http://boto3.readthedocs.io/en/latest/reference/services/ssm.html#SSM.Client.get_parameter

您必须确保 lambda 函数的角色能够提供对 SSM 参数的访问权限,并且能够访问用于加密该值的相同 KMS 密钥。


0
投票
对于任何寻找此信息的人来说,step function 现在默认对静态和传输中的执行数据进行加密。 如果您不想使用默认密钥,也可以使用客户管理的 KMS 密钥。 看:

https://docs.aws.amazon.com/step-functions/latest/dg/encryption-at-rest.html https://docs.aws.amazon.com/step-functions/latest/dg/data-protection.html

© www.soinside.com 2019 - 2024. All rights reserved.