使用 AWS Step Functions 将 Lambda 串在一起很有趣,但是有没有办法在执行详细信息屏幕上禁用/隐藏日志记录? 将私人信息从一个 lambda 传递到另一个 lambda 需要能够秘密完成,并且在每个步骤中添加 KMS 加密/解密会产生大量开销,对于生活在没有互联网访问的 VPC 中的 lambda 来说这是不可能的.
我们已经与亚马逊进行了交谈,看起来没有办法从控制台隐藏这些信息。另一种方法是限制每一步发送到 Lambda 函数的内容。
因此,您可以确保某些功能只能看到输入数据的非 PII 子集。通常的解决方法是根本不传递 PII 数据,而是将 PII 数据放置在加密的数据存储中,例如 S3 存储桶或加密的 RDS 数据库表,并通过状态机传递对该对象的引用。
另一种选择是使用 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 密钥。