2010-09-20 33 views
9

Tôi đang xây dựng một ứng dụng cần chấp nhận thanh toán bằng thẻ tín dụng với một cái gì đó như active merchant. Về mặt an ninh, liệu có thể để nó tồn tại trên heroku và sử dụng authorize.net (hoặc tương tự) làm cổng thanh toán không?Có thể thực hiện thanh toán bằng thẻ tín dụng từ máy chủ heroku sử dụng activemerchant không?

Điều gì xảy ra nếu cần lưu trữ số thẻ tín dụng?

Sửa

sẽ không được chuyển tiếp người dùng authorize.net.

Trả lời

4

Câu trả lời đơn giản là có, tôi tin như vậy, nhưng ngoài ra nó còn tùy thuộc.

Bạn có thể đặt biến môi trường cho các khóa khác nhau và các giá trị khác liên quan đến dịch vụ bên thứ ba (http://docs.heroku.com/config-vars) hoặc chỉ kiểm tra và triển khai chúng.

Nếu bạn đang sử dụng dịch vụ thanh toán được lưu trữ cho authorize.net và chuyển tiếp đến trang web của họ, bạn không cần ssl mình. Nếu bạn sẽ lưu trữ biểu mẫu nơi số thẻ tín dụng và thông tin cá nhân được gửi, sau đó chuyển tiếp thông tin này đến authorize.net qua API của họ trên máy chủ, bạn cần thiết lập ssl cho heroku (http://docs.heroku.com/ssl) để biểu mẫu của bạn được an toàn.

Bây giờ, có một điều để chấp nhận thanh toán bằng thẻ tín dụng và chỉ cần chuyển qua thourgh, đó là cách khác để lưu số thẻ tín dụng và thông tin cá nhân khác. Không chỉ bạn đến các tài liệu tiêu chuẩn bảo mật khác nhau (tức là PCI DSS áp dụng ở đây), tôi sẽ chỉ nói rằng trừ khi bạn hoàn toàn có, không lưu trữ số CC và thông tin cá nhân liên quan, chỉ cần chuyển tiếp tới cổng và đảm bảo bạn không ghi lại các trường đó (http://guides.rubyonrails.org/security.html#logging). Nếu bạn cần lưu trữ dữ liệu thẻ tín dụng, tôi nghĩ bạn cần kiểm soát nhiều hơn cơ sở dữ liệu và máy chủ để đạt được sự tuân thủ và tôi không biết một máy chủ lưu trữ đám mây chung như AWS hoặc heroku mà bạn có thể sử dụng và thực hiện điều này (có thể một số người dùng SO khác sẽ sửa tôi). Tuy nhiên, việc sử dụng cổng thanh toán như authorize.net có thể giúp bạn ở đó.

Tôi cũng sẽ chỉ ra rằng các tiểu bang khác nhau hiện có luật về lưu trữ dữ liệu nhạy cảm (như MA, nơi tôi sống), do đó, một lý do khác để tránh thực hiện trừ khi nó là điều cần thiết cho mô hình kinh doanh của bạn.

Đối với một cuộc thảo luận chung hơi ngày, nhưng tốt tuân thủ PCI, nhìn ở đây: http://broadcast.oreilly.com/2009/02/pci-in-the-cloud.html

+0

"Nếu bạn cần để chuyển tiếp dữ liệu thẻ tín dụng" Ý anh là "lưu trữ dữ liệu thẻ tín dụng"? – James

+1

vâng, tôi có nghĩa là phản hồi lưu trữ - chỉnh sửa. Cảm ơn. –

+0

Tôi tò mò - hầu hết các cổng thanh toán yêu cầu địa chỉ IP cho máy chủ. Cách này hoạt động cho các ứng dụng được lưu trữ trên máy chủ của Heroku, vì tất cả chúng đều có cùng một bản ghi A (proxy.heroku.com) –

Các vấn đề liên quan