1

我需要将银行帐户数据保存在 Web 项目中。项目是asp.net mvc 3,数据库是MSSQL 2008 R2。

但是我应该怎么做呢?

我的解决方案是:

  1. 解决方案:使用 TripleDESCryptoServiceProvider 加密数据并将其保存到数据库中。

  2. 解决方案:可能只保存账户数据的最后 3 个数字(就像亚马逊向您展示的那样),以便用户识别他保存到系统的账户数据。加密整个帐户数据并将它们保存到 Web 项目无权访问的不同数据库(可能使用存储过程)。

我们只需要账户数据,收取月费。所以我们在 web 项目中不需要它们。但是用户必须识别他提供了哪些帐户数据来支付费用。

什么是最好的解决方案?

编辑:

谢谢大家的回复。我认为我们将真正使用服务提供商,它将存储帐户数据并执行所有其他工作,例如应收帐款管理。

4

2 回答 2

3

实际上,从我的评论开始 - 您最好的选择可能是与您的支付网关交谈。他们中的许多人都运行一个令牌系统,允许人们在不需要存储卡详细信息的情况下收取定期付款。用户输入一次详细信息,它们会存储在支付网关中,您会取回一个令牌,然后您可以重新使用它来执行重复支付。

鉴于这种情况,您可以只存储卡号的最后 4 位数字:这应该足以让用户在需要时再次识别他们的卡。

它们可能也是与安全和存储方法相关的信息的一个很好的第一点。

于 2012-01-25T10:32:36.423 回答
0

我想这归结为在您保存银行号码后谁需要访问您的银行号码。

如果它们由您的 Web 应用程序保存,然后由另一个私有应用程序读取,我的建议是使用公钥加密站点中的结果,并且仅在您的其他应用程序中使用私有解密密钥。这意味着即使您的数据库受到威胁,他们也需要您的私钥来访问数据。将此存储在其他地方。

正如其他人所说,最好的解决方案是尽可能避免存储数据

于 2012-01-25T10:34:01.987 回答