存储信用卡详细信息


60

我需要存储信用卡号,以便通过我们的第三方商家进行定期结算。

在存储详细信息方面,我需要遵循哪些标准?我们已经接受信用卡已有多年了,但是一旦使用完毕,我们通常会丢弃其详细信息。我们的客户已要求我们存储其详细信息,因此他们不必每月手动支付其订阅费用。

转移到PayPal以利用其订阅不是一种选择。我们必须存储它们,我需要确保存储安全!

我们将MSSQL 2005用于我们的数据,并且所有内容都已使用SSL。

Answers:


86

您将需要按照(信),最好超过PCI DSS标准。这绝不是容易完成的任务,也不是一件容易的事。

强烈建议您找到可以为您处理此事并将其集成到您的计费系统中的第三方处理器。它不仅仅具有SSL和加密数据库中的信息。您还必须监视访问,检测入侵,建立适当的系统,这些系统可以在发生漏洞时仅通知受影响的人(并确定可能已泄露了哪些数据)等。

然后,就可以对服务器,网络等进行物理访问。这意味着在您拥有物理LAN的服务器上,共享的服务器上没有共享的上锁的机柜。合规性不会便宜或容易。

确实,请尽一切可能将其转移给第三方。除非您说每月要进行数十万笔交易(在此处插入您的货币),否则仅承担责任就不值得冒险。在这种情况下,您节省的费用可能证明有足够的人才来实施和监视存储信息的系统。你需要:

  • 系统程序员(您将需要内核和文件系统级审核钩子)
  • IDS / IPS专家(除非您喜欢供应商锁定)
  • 24/7/365工作人员可以监视专家设计的系统生成的警报。这些人并不便宜,他们决定拔掉账单插头或报告您使用的算法中的错误。

再说一次,您可以将所有这些钱便宜地转移给第三方。


嗯,我们已经中途了,因为我们代表客户处理敏感信息(锁定服务器和入侵检测以及DMZ上的IPSec已经到位)。我会读得很好,谢谢。
马克·亨德森

@Farseeker-除了防止非法访问外,最重要的部分是检测到它并找出可能受到危害的内容以及需要尽快通知谁。请注意,这也将包括未经授权地复制备份到数据库的文件。
Tim Post

5
即使不永久存储,您现在也要处理信用卡数据,这意味着您需要遵守PCI DSS。
史蒂芬·詹宁斯

@Stephen-关于PCI,处理和存储是完全独立的。处理只是意味着将一些数据发布到网关并等待响应。存储是蠕虫的独特罐头。
Tim Post

PCI DSS要求3.2指出,即使在加密后也无法存储跟踪和验证码,即使已加密,也包括所有日志,包括数据库的事务日志。
雷·里菲尔

23

这是从来没有来存储信用卡信息是个好主意永远。您只是在准备秋天,任何体面的支付网关都将允许您使用令牌进行重复交易,而无需存储信用卡详细信息。


3
+1表示永不将CC储存在您的资料库中。我们的支付网关提供商现在存储所有这些信息,这极大地减轻了我们的安全风险。
米尔纳

例如,一个这样的产品就是Authorize.net客户信息管理器(CIM)authorize.net/solutions/merchantsolutions/merchantservices/cim,并且由于提到了定期计费,因此自动重复计费(ARB)authorize.net/solutions/merchantsolutions/merchantservices/ …您可以存储它们,但是它们永远都不安全。最后,您将支付服务将给您带来的声誉损失,销售损失,处理器罚款以及数据泄露引起的任何诉讼所造成的损失。
Fiasco Labs


8

您的3rd Party Merchant是否不包括连续信用卡付款选项-英国这里的大多数主要付款方式(DataCash,RBS World Pay等)都可以。

基本上,您需要向他们提交一次“卡详细信息”,并要求获得CCC授权(如果我记得正确的话,需要包括预期的时间表和正常金额),然后您会从他们那里收到令牌。然后,每个月/无论您用什么令牌对商人进行轮询,他们都会为您处理后续的交易-通常,还可以针对可变的临时请求设置这些交易。您的主要要求是在付款之前通知客户(通常至少10天)。

这样,您就不会在任何地方存储抄送详细信息,所有这些都由满足要求的人员来处理。

这类似于在卡上进行预授权,因此您不必存储信用卡,只需存储来自商家的令牌即可根据需要调用。


4

我们必须存储它们,我需要确保存储安全!

一个问题:为什么?

我之所以这么问,是因为我必须自己处理PCI,并且要跟上它是很痛苦的。即使我的日常工作使我们成为PCI合规性要求最低的梯级,但仍有很多工作要做。加密,最低特权注意事项,服务器操作系统安全性,内部网络安全性,边界安全性,第三方审核...等等,这些都是与时俱进的。而且即使我们不存储信用卡信息!

(旁注:如果您正在进行电子商务,即使您不存储CC数据,也必须符合PCI规范。如果现在不抱怨,请考虑一下还没有被您咬伤,这是您的幸运。)

查看让您的处理器来处理它。我们使用Authorize.net,它们具有出色的API,因此我们可以构建自己的自定义前端,但是它们负责存储和处理实际的付款。如果我们想设置定期计费,则他们有一个存储信息的系统。老实说,我对他们的信任远胜于对自己的信任。


4

正如其他人所述,您正在寻找PCI-DSS。另外,正如其他人所提到的,对于小型站点而言,合规性可能代价高得惊人。

转移到PayPal以利用其订阅不是一种选择。我们必须存储它们,我需要确保存储安全!

您可以在本地存储一个ID,该ID可以在付款网关上标识客户的信用卡信息。我不确定PayPal是否提供此选项,但是还有其他付款网关可以使用。

还请记住,即使不将信用卡数据存储到磁盘,您仍然可以满足某些PCI-DSS要求。到目前为止,最简单的合规方式是不获取任何抄送数据(即:直接将付款表单过帐到付款网关)。


3

诸如http://chargify.com/之类的服务在现有支付网关的顶部提供了额外的一层。他们可能会提供各种方式来为您存储信用卡,执行定期付款,甚至为您创建报告。

这将使您规避整个责任和PCI合规性问题。我所关心的是,如果有一天您想更改供应商,商家帐户或网关。您如何带动10,000名客户?他们是否交出信用卡数据库?是否可以与竞争对手合作来转移信用卡信息?

我对此表示怀疑。如果您更改提供商,则您可能必须要求所有客户重新提交其帐单信息。这是一个小观点,赞成您自己存储信用卡信息。仅当您将拥有大量客户和大量收入时,才可能值得。我很想听到其他人对这个特殊难题的想法。


很好,我没想到。我们已经使用SecurePay大约5-6年了,对它们没有任何担忧,所以我认为我们会坚持使用它们,但是谁知道未来会怎样...
Mark Henderson 2010年

2

我没有足够的代表来评论或评论,所以这是一个新的答案。正如zhaph所指出的,许多商户公司都提供定期付款系统,由他们为您处理存储。

我们一直在为所有不愿意使用PayPal的客户使用Authorize.net,并且它运行良好(我们唯一的抱怨是API密钥每6个月重置一次,他们不愿意在发生这种情况时通知您,因此页面刚刚停止工作)。他们的API基于XML,您几乎可以在每种语言中找到包装器。


1

请注意,如果您最终决定将信用卡信息存储在自己的数据库中,则在任何情况下都不应存储3位数字的信用卡安全码。卡协会严格禁止这样做。

顺便说一句,您不需要卡安全代码即可进行交易。它提高了欺诈检测率,但是如果您与客户之间存在持续的关系,则不需要使用它。(即使您认为自己需要它,也无法存储。无论如何。)

我还建议不要存储其他信息。Authorize.Net的客户信息管理器易于使用且价格便宜。对于您来说,使用它会便宜很多,而不是在将信息存储在您自己的服务器上时固有的PCI成本。


1

如果要将信用卡存储在数据库中,则加密是关键。您还将希望(或可能需要)让第三方进行例行合规性测试,以确保您的系统能够正常使用。


5
但是不要将抄送存储在数据库中。别。
dimo414

加密仅仅是开始。去下载适用的SAQ(自我评估问卷)pcisecuritystandards.org/merchants/self_assessment_form.php,然后开始弄清楚数据库加密远远不在需求列表之列。泄露信用卡凭证的方法有很多,甚至还没有涉及到与信用卡存储有关。
Fiasco Labs 2013年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.