是否可以使用activemerchant从heroku服务器进行信用卡付款?

Jam*_*mes 9 security authorize.net heroku activemerchant

我正在构建一个需要接受信用卡付款的应用程序,例如活跃的商家.在安全性方面,它是否可以在heroku上使用并使用authorize.net(或类似的)作为支付网关?

如果需要存储信用卡号码怎么办?

编辑

不会将用户转发到authorize.net.

And*_*icz 4

简单的答案是肯定的,我相信是这样,但除此之外还得看情况。

您可以为与第三方服务相关的各种键和其他值设置环境变量(http://docs.heroku.com/config-vars),或者只是将它们签入并部署它们。

如果您使用authorize.net 的托管支付服务并转发到他们的网站,则您自己不需要ssl。如果您将托管提交信用卡号和个人信息的表单,然后通过服务器上的 API 将其转发到authorize.net,则需要为 heroku 设置 ssl ( http://docs.heroku.com /ssl)以便您的表单是安全的。

现在,通过信用卡接受付款并直接通过是一回事,保存信用卡号码和其他私人信息则是另一回事。在不向您指出各种安全标准文档(即 PCI DSS 适用于此处)的情况下,我会简单地说,除非您绝对必须,否则不要存储 CC 号码和相关个人信息,只需转发到网关并确保您不存储记录这些字段(http://guides.rubyonrails.org/security.html#logging)。如果你确实需要存储信用卡数据,我认为你需要对数据库和服务器有更多的控制才能达到合规性,而且我不知道像AWS或heroku这样的通用云主机可以使用并执行此操作(也许其他一些用户会纠正我)。然而,使用像authorize.net这样的支付网关可以帮助您实现这一目标。

我还要指出,不同的州现在都有关于存储敏感数据的法律(例如我居住的马萨诸塞州),因此这是避免这样做的另一个原因,除非它对您的业务模式至关重要。

有关 PCI 合规性的有点过时但很好的一般性讨论,请参见此处:http ://broadcast.oreilly.com/2009/02/pci-in-the-cloud.html