将敏感信息存储在dynamodb中

0

【以下的问题经过翻译处理】 我有一个需求,需要将敏感信息存储在dynamodb表中。 客户端应用程序输入信息,将数据发送到API网关,然后再将数据转发到表中。 客户端应用程序的Cognito用户在每个条目中都有不同的敏感数据。

我希望将对不是Cognito用户的人访问此信息的机会最小化,例如,作为开发人员,我不想能够进入dynamodb控制台并在查看表时访问数据的实际值。 理想情况下,我希望客户端应用程序执行某些操作,这样当数据发送到AWS时,它已经不能被人类阅读,但是当客户端应用程序再次获取数据时,它可以变得可读。

是否可以隐藏一些列或整个表,使IAM用户无法访问,但Lambda函数仍然可以访问它? 是否可以使用KMS密钥加密数据,以使仅客户端应用程序或Cognito用户能够访问该密钥以加密和解密客户端数据?

当前的解决方案是为每个项目生成一个数据密钥,并将其与数据存储在一起,以使数据不可读,用户不必负责存储和处理密钥。但是,这仅在敏感数据与IAM用户之间留下了一步分离,IAM用户可以使用密钥解密数据并查看数据。 是否有更好的解决方案,不会导致Cognito用户负责记住其数据的加密密钥,但也可以防止IAM用户采取简单的步骤来查看它?

我已经看到了对此帖子的回复https://repost.aws/questions/QUtBzzrw0jQmGwmPpkeAQLYw/data-redaction-or-mask-in-dynamodb,该帖子也涉及同样的问题

profile picture
EXPERTE
gefragt vor 9 Monaten50 Aufrufe
1 Antwort
0

【以下的回答经过翻译处理】 是否可以隐藏某些 IAM 用户的某些列或整个表格,但 Lambda 函数仍然能够访问它?

是的,您可以使用细粒度访问控制。

是否可以使用 KMS 密钥加密数据,以使只有客户端应用程序或 Cognito 用户可以访问该密钥以在客户端加密和解密数据?

每个 KMS 密钥都可以有自己的访问策略,在其中您可以定义谁可以访问哪个密钥。您可以使用 KMS 与加密客户端结合使用,以加密和解密敏感数据。

profile picture
EXPERTE
beantwortet vor 9 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen

Relevanter Inhalt