Menyimpan detail kartu kredit


60

Saya perlu menyimpan nomor kartu kredit untuk penagihan berulang melalui pedagang pihak ke-3 kami.

Apakah ada standar yang harus saya patuhi sehubungan dengan penyimpanan detail? Kami telah menerima kartu kredit selama bertahun-tahun, tetapi kami sering membuang detailnya begitu selesai. Pelanggan kami telah meminta agar kami menyimpan detail mereka sehingga mereka tidak perlu membayar biaya berlangganan secara manual setiap bulan.

Pindah ke PayPal untuk menggunakan langganan mereka bukanlah suatu opsi. Kita harus menyimpannya, dan aku harus memastikan penyimpanannya aman!

Kami menggunakan MSSQL 2005 untuk data kami, dan semuanya sudah SSL'd.

Jawaban:


86

Anda harus mengikuti (ke surat itu) dan lebih disukai melebihi standar PCI DSS . Ini sama sekali bukan tugas yang mudah untuk diselesaikan dan tidak boleh dianggap sepele.

Saya sangat menyarankan Anda menemukan prosesor pihak ketiga yang dapat menangani ini untuk Anda dan mengintegrasikannya ke dalam sistem penagihan Anda. Lebih dari sekadar memiliki SSL dan mengenkripsi informasi dalam database. Anda juga harus memantau akses, mendeteksi intrusi, memiliki sistem yang dapat memberi tahu hanya orang yang terkena dampak jika terjadi pelanggaran (dan menentukan data apa yang mungkin telah dikompromikan), dll.

Kemudian, ada akses fisik ke server, jaringan, dll. Ini berarti kabinet terkunci yang tidak dibagi pada server yang Anda miliki di mana LAN fisik juga dilindungi. Kepatuhan tidak akan murah, atau mudah.

Sungguh, habiskan segala upaya yang mungkin untuk membongkar ini ke pihak ketiga. Tanggung jawab itu sendiri tidak sebanding dengan risikonya kecuali jika Anda berbicara transaksi yang jumlahnya mencapai ratusan ribu (masukkan mata uang Anda di sini) setiap bulan. Dalam hal itu, biaya yang Anda simpan mungkin membenarkan membawa bakat yang dibutuhkan untuk menerapkan dan memantau sistem yang menyimpan informasi. Kamu akan membutuhkan:

  • Pemrogram sistem (Anda akan memerlukan kait audit level sistem file dan kernel)
  • Guru IDS / IPS (kecuali jika Anda menyukai vendor lock-in)
  • 24/7/365 staf untuk memantau peringatan yang dihasilkan dari sistem yang dirancang para ahli. Orang-orang ini tidak murah, mereka membuat keputusan untuk menarik colokan penagihan atau melaporkan bug dalam algoritma yang Anda gunakan.

Dan lagi, Anda bisa menurunkan semua itu ke pihak ketiga, cukup murah.


Hmm, kami sudah setengah jalan di sana karena kami menangani informasi sensitif atas nama klien kami (server terkunci dan deteksi intrusi dan IPSec pada DMZ sudah ada). Saya akan membaca dengan baik, terima kasih.
Mark Henderson

@Farseeker - Selain mencegah akses ilegal, bagian terpenting adalah mendeteksi dan mencari tahu apa yang mungkin telah dikompromikan dan siapa yang perlu diberitahu dengan sangat cepat. Catatan, ini akan mencakup penyalinan tidak sah dari file yang mendukung database juga.
Tim Post

5
Fakta bahwa Anda sedang menangani data kartu kredit sekarang, bahkan jika Anda tidak menyimpannya secara permanen, berarti Anda harus mematuhi PCI DSS.
Stephen Jennings

@Stephen - Penanganan dan penyimpanan adalah hal yang benar-benar terpisah dalam hal PCI. Menangani berarti POST'ing beberapa data ke gateway dan menunggu jawaban. Menyimpan adalah kaleng cacing yang unik.
Pos Tim

Persyaratan PCI DSS 3.2 menunjukkan bahwa trek dan kode verifikasi tidak dapat disimpan setelah otorisasi walaupun dienkripsi dan ini termasuk SEMUA log termasuk log transaksi untuk database.
Leigh Riffel

23

Ini tidak pernah merupakan ide yang baik untuk menyimpan rincian kartu kredit yang pernah . Anda hanya mengatur diri sendiri untuk jatuh, setiap gateway pembayaran yang layak akan memungkinkan Anda untuk melakukan transaksi berulang dengan token di mana Anda tidak perlu menyimpan rincian kartu kredit.


3
+1 untuk gagasan tidak pernah menyimpan CC di basis data Anda. Penyedia gateway pembayaran kami menyimpan semua informasi itu sekarang, yang sangat melegakan pada paparan keamanan kami.
Milner

Sebagai contoh, salah satu penawaran tersebut adalah Authorize.net Customer Information Manager (CIM) authorize.net/solutions/merchantsolutions/merchantservices/cim dan karena penagihan berulang disebut Penagihan Berulang Otomatis (ARB) authorize.net/solutions/merchantsolutions/merchantservices/ ... Anda dapat menyimpannya, tetapi mereka tidak akan pernah aman. Pada akhirnya Anda akan membayar tentang apa yang akan menyebabkan layanan kehilangan reputasi Anda, kehilangan penjualan, denda dari prosesor Anda dan segala litigasi yang berasal dari kompromi data.
Fiasco Labs


8

Apakah Pedagang Pihak Ketiga Anda tidak menyertakan opsi untuk Pembayaran Kartu Kredit Berkelanjutan - tentu saja sebagian besar yang utama di Inggris (DataCash, RBS World Pay, dll.).

Pada dasarnya, Anda mengirimkan Rincian Kartu satu kali kepada mereka, dengan permintaan otoritas CCC (yang, jika saya ingat dengan benar perlu memasukkan jadwal yang diharapkan dan jumlah reguler), dan kemudian Anda menerima token kembali dari mereka. Kemudian setiap bulan / apa pun yang Anda jajak pendapat pedagang dengan token, dan mereka memproses transaksi berikutnya untuk Anda - biasanya ada juga fasilitas untuk mengatur ini untuk variabel, permintaan ad-hoc. Persyaratan utama di pihak Anda adalah memberi tahu pelanggan (biasanya setidaknya 10 hari) sebelum melakukan pembayaran.

Dengan cara ini, Anda tidak menyimpan detail CC di mana pun, itu semua ditangani oleh orang-orang yang telah memenuhi persyaratan.

Ini mirip dengan melakukan Pra-otorisasi pada kartu, jadi Anda tidak perlu menyimpan kartu kredit, hanya token dari Merchant yang dapat Anda hubungi sesuai kebutuhan.


4

Kita harus menyimpannya, dan aku harus memastikan penyimpanannya aman!

Satu pertanyaan: Mengapa?

Saya hanya meminta itu karena saya harus berurusan dengan PCI sendiri, dan mempertahankannya sungguh menyebalkan. Meskipun pekerjaan saya sehari-hari membuat kami memenuhi syarat sebagai anak tangga terendah untuk kepatuhan PCI, masih banyak yang masuk ke dalamnya. Enkripsi, pertimbangan hak istimewa paling rendah, keamanan OS server, keamanan jaringan internal, keamanan perbatasan, audit pihak ketiga ... semuanya harus diikuti. Dan itu bahkan dengan kita tidak menyimpan info kartu kredit!

(Sidenote: Jika Anda melakukan e-commerce, Anda harus memenuhi PCI bahkan jika Anda tidak menyimpan data CC. Jika Anda tidak mengeluh sekarang, anggap diri Anda beruntung karena belum menggigit Anda.)

Cari tahu apakah prosesor Anda menanganinya. Kami menggunakan Authorize.net dan mereka memiliki API yang luar biasa sehingga kami dapat membangun front-end kustom kami sendiri, tetapi mereka tetap menyimpan dan menangani pembayaran yang sebenarnya. Jika kami ingin mengatur penagihan berulang, mereka memiliki sistem untuk menyimpan informasi. Jujur, saya lebih mempercayai mereka daripada saya percaya diri.


4

Seperti yang disebutkan orang lain, Anda mencari PCI-DSS. Juga seperti yang disebutkan orang lain, kepatuhan cenderung mahal untuk situs kecil.

Pindah ke PayPal untuk menggunakan langganan mereka bukanlah suatu opsi. Kita harus menyimpannya, dan aku harus memastikan penyimpanannya aman!

Anda dapat secara lokal menyimpan ID yang mengidentifikasi informasi kartu kredit pelanggan di gateway pembayaran Anda. Saya tidak yakin PayPal menawarkan opsi ini, tetapi ada gateway pembayaran lain yang memungkinkan.

Juga ingatlah bahwa meskipun Anda tidak menyimpan data kartu kredit ke disk, Anda masih berada dalam ruang lingkup untuk beberapa persyaratan PCI-DSS. Sejauh ini cara termudah untuk patuh adalah dengan tidak mengambil data CC (mis .: dengan mengirimkan formulir pembayaran langsung ke gateway pembayaran).


3

Layanan seperti http://chargify.com/ menawarkan lapisan tambahan di atas gateway pembayaran yang ada. Mereka mungkin akan menawarkan segala macam cara untuk menyimpan kartu kredit untuk Anda, menerapkan pembayaran berulang, dan bahkan membuat laporan untuk Anda.

Ini akan membuat Anda menghindari seluruh tanggung jawab dan masalah kepatuhan PCI. Satu kekhawatiran yang saya miliki, adalah jika suatu hari Anda ingin berganti vendor, akun merchant, atau gateway. Bagaimana Anda membawa 10.000 pelanggan Anda? Apakah mereka menyerahkan database kartu kredit? Apakah pekerjaan dengan pesaing akan memindahkan informasi kartu kredit?

Aku meragukan itu. Kemungkinannya adalah Anda harus meminta semua pelanggan Anda untuk mengirimkan kembali informasi tagihan mereka jika Anda mengganti penyedia layanan. Ini adalah satu argumen kecil yang mendukung menyimpan informasi kartu kredit sendiri. Mungkin hanya layak jika Anda akan memiliki banyak pelanggan dan banyak pemasukan. Saya akan sangat ingin mendengar pemikiran orang lain tentang teka-teki khusus ini.


Itu poin yang sangat bagus, saya belum memikirkan itu. Kami telah menggunakan SecurePay selama sekitar 5-6 tahun dan belum memiliki masalah dengan mereka, jadi saya pikir kami akan bertahan dengan mereka, tetapi siapa yang tahu apa yang akan terjadi di masa depan ...
Mark Henderson

2

Saya belum memiliki perwakilan yang cukup untuk mendukung atau berkomentar, jadi ini akan menjadi jawaban baru. Seperti yang ditunjukkan zhaph , banyak perusahaan pedagang menawarkan sistem pembayaran berulang di mana mereka menangani penyimpanan untuk Anda.

Kami telah menggunakan Authorize.net untuk setiap pelanggan yang tidak mau menggunakan PayPal dan itu telah bekerja dengan cukup baik (satu-satunya keluhan utama kami adalah bahwa kunci API diatur ulang setiap 6 bulan dan mereka tidak repot-repot memberi tahu Anda ketika itu terjadi, jadi halaman berhenti bekerja). API mereka berbasis XML dan Anda dapat menemukan pembungkus di hampir setiap bahasa.


1

Perhatikan bahwa jika Anda akhirnya memutuskan untuk menyimpan informasi kartu kredit di db Anda sendiri, Anda tidak boleh, dalam keadaan apa pun menyimpan kode keamanan 3 digit kartu . Melakukan hal itu dilarang keras oleh asosiasi kartu.

BTW, Anda tidak perlu kode keamanan kartu untuk melakukan transaksi. Ini meningkatkan tingkat deteksi penipuan, tetapi Anda tidak perlu membutuhkannya jika Anda memiliki hubungan yang sedang berlangsung dengan pelanggan. (Dan bahkan jika Anda pikir Anda membutuhkannya, Anda tidak dapat menyimpannya. Apa pun yang terjadi.)

Saya juga merekomendasikan kedua rekomendasi lain untuk tidak menyimpan info. Authorize.Net, Manajer Informasi Pelanggan, mudah dan murah untuk digunakan. Akan jauh lebih murah bagi Anda untuk menggunakannya daripada mengeluarkan biaya PCI yang melekat dalam menyimpan info di server Anda sendiri.


1

Jika Anda akan menyimpan kartu kredit di basis data Anda, enkripsi adalah kuncinya. Anda juga ingin (atau mungkin perlu) meminta pihak ketiga melakukan pengujian kepatuhan rutin untuk memastikan sistem Anda siap.


5
Tapi jangan menyimpan CC di basis data Anda. Jangan.
dimo414

Enkripsi hanyalah awal. Pergi unduh SAQ (Self Assessment Questionnaire) Anda yang berlaku. Pcisecuritystandards.org/merchants/self_assessment_form.php dan mulailah mencari tahu bahwa enkripsi basis data cukup jauh di bawah daftar persyaratan. Ada banyak cara bocor kredensial kartu kredit Anda bahkan belum menyentuh yang berkaitan dengan penyimpanan kartu kredit.
Fiasco Labs
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.