我必须收集私人信息并存储它。我想做的是收集信息并将其存储在 Intranet 服务器上。收集的数据是为美国用户提供的,并将存储在美国。
基本上我需要通过网站收集银行账户信息、ssn 和其他高度敏感的数据,并将其存储在本地 Intranet 上 1 个月。
这可能吗,最安全的方法是什么?
我必须收集私人信息并存储它。我想做的是收集信息并将其存储在 Intranet 服务器上。收集的数据是为美国用户提供的,并将存储在美国。
基本上我需要通过网站收集银行账户信息、ssn 和其他高度敏感的数据,并将其存储在本地 Intranet 上 1 个月。
这可能吗,最安全的方法是什么?
做任何事情都是可能的。
网络分离和加密是架构中保护重要数据的两个更重要的方面。
支付卡行业数据安全标准包含一系列旨在保护信用卡信息的实践,可为您提供参考基准。
PCI DSS
如果您要存储卡详细信息(可能还有银行账户详细信息),则需要从 PCI ASV(经批准的安全供应商)进行安全测试。
如果您在英国服务器上存储有关英国个人的个人详细信息(或与此相关的任何详细信息),您需要通知数据专员 - 我相信这是一次性付款 35 英镑,但我不确定。如果您将它们存储在国外,则适用不同的规则。
“通过网站”(我认为是指公共互联网网站)收集的任何信息只能以两种方法之一存储:
或者
对于大型 Web 应用程序,选项 1 不是标准,因为您通常有一个专门用于数据收集和表示层的 Web 服务器和一个单独的数据库服务器,用于存储数据和服务来自 Web 服务器的请求。Web 服务器通常位于网络的 DMZ 或可公开访问的部分,因为数据库服务器将位于具有防火墙的专用网络后面,该防火墙仅允许来自 Web 服务器的连接。
通过这种设置,只要有正确的保护措施(防火墙、加密、数据完整性和审计日志等),即使是最敏感的用户数据通常也可以存储在数据库服务器中。本质上,数据库服务器并未连接到公共 Internet,因此除非您的 Web 服务器受到威胁,否则任何人都无法访问您的数据。这也是为什么您永远不应该在 Web 服务器上以明文形式存储数据库用户名和密码,而应始终使用加密的连接字符串或基于身份的身份验证。本质上,您将 Web 服务器视为敌对领土(因此 DMZ=非军事区命名),并将您的数据库视为安全位置。
第一个要回答的问题是:你必须存储这些信息吗?最佳做法是尽可能少地存储私人信息。假设您有真正的业务需求:
我建议从 SSL 证书开始。确保您的 Web 服务器设置为将端口 80 重定向到 443,以确保所有流量都通过 HTTPS。
获取数据后立即对其进行加密,并一直保持这种状态,直到您需要明文的最后一刻。使用 AES 加密数据。使用经过验证的良好实现。不要滚动您自己的加密。
确保您的服务器在所有安全补丁上都是最新的(并保持这种状态)。运行严密的防火墙,只打开最少的端口(80 和 443?)。
监控您的服务器是否有异常活动。
不要将数据存储在 WEB 服务器主机上。将所有数据传递给不可公开访问的机器。
请注意您的服务器所在州的合规性法律。您可能会受到各种免责声明、披露和数据泄露法律的约束。
PCI DSS 指南很有用。但是,请注意,他们专注于一件事,防止信用卡账户持有人数据的泄露。