将用户的电子邮件加密为唯一的ID

问题描述

在我们的Web应用程序中,我们要求记录用户的活动。用户信息可以从jwt令牌中提取。并且由于隐私原因,不允许将用户的员工ID或电子邮件用作日志中的标识符。

我正在考虑的选项之一是在持久层中创建用户表,并在其中存储uuid标识符。但是由于某些原因,我不想走这条路,因为过程非常复杂。

我还有另一个选择是加密用户的电子邮件,并使用十六进制密文作为标识符。这样,我就不需要在持久层中保留用户->标识符映射。

你们怎么看?

解决方法

本身是难以理解的数据(例如,电子邮件地址的哈希值),但仍用作真实人的标识符的数据是假名数据(在GDPR中定义)。

如何处理此问题在很大程度上取决于您的实际情况。如果记录了标识符(是否使用假名),则仅当日志可用于数据控制器以外的其他人(例如,如果您使用Google Analytics(分析))时才表示暴露。因此,您可以通过限制谁可以查看日志而不是您在日志中输入内容来解决此问题。

您描述的两种方法在结果上似乎没有显着不同。无论哪种方式,您都可以存储可以通过您持有的其他数据链接到个人的数据。无论是存储散列/ UUID还是动态生成它们都没有什么区别。