如何在AWS步骤功能中安全地传递敏感信息

时间:2017-09-20 18:52:48

标签: amazon-web-services aws-lambda aws-step-functions

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

2 个答案:

答案 0 :(得分:7)

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

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

答案 1 :(得分:1)

另一种选择是使用带有SecureString类型的SSM参数存储使用KMS加密。您可以在步骤之间传递SSM参数的名称。 lambda函数将使用API​​在单个请求中检索和解密该值。有关如何使用Python中的boto3处理SSM参数存储的文档,请参阅以下链接。

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

您必须确保lambda函数的角色可以访问SSM参数 AND 访问用于加密值的相同KMS密钥。