it-swarm-tr.com

Şirketimizi web uygulamamızda kredi kartı numarası saklamamaya ikna edin

Çalıştığım şirketin müşteri hesaplarına aylık kredi kartı ücreti ödeyecek bir sisteme ihtiyacı var. Müşteriler, kredi kartı bilgilerini PHP (SSL üzerinden HTTP üzerinden sunulacak) ile yazılmış çevrimiçi bir arayüzden güncelleyebilecek ve aylık ücretler şifre korumalı bir yönetici aracılığıyla manuel olarak gerçekleştirilecektir. aynı arabirimin, temel olarak Authorize.Net'in API'sine toplu çağrı anlamına gelecektir.

İş arkadaşlarım (şifreli) kredi kartı bilgilerini bir MySQL veritabanında saklamak istiyor. Muhtemelen Rijndael/AES veya Twofish kullanarak kredi kartı numaralarını PHP'nin mcrypt uzantısı ile şifrelemeyi planlıyorlar. Anahtar yönetimi konusu göz ardı edildi, ancak aşağıdaki iki seçenekten bahsedildi:

  1. her kredi kartı girişi için ayrı bir anahtar ile veritabanında anahtarların saklanması; veya

  2. tüm kredi kartı girişleri için tek bir şifreleme anahtarını bir PHP dosyasında bir değişken olarak depolamak (PHP WordPress ve MediaWiki mağaza veritabanı kimlik bilgileri).

Onları bu rotaya gitmemeleri için nasıl ikna edebilirim? Ödeme işlemleri için Authorize.net kullanacağız, bu yüzden bahsettim kredi kartı bilgilerini kendimiz depolamaya alternatif olarak Müşteri Bilgi Yöneticisi hizmeti. Ancak, konuyu zorlayıcı bir argüman oluşturacak kadar iyi bilmiyorum (argümanlarım "hiçbirimiz güvenlik uzmanı değiliz" ve "Kredi kartı bilgilerimi bu şekilde saklayan bir şirketten rahatsız olmazdım").

Onları Müşteri Bilgi Yöneticisi gibi bir üçüncü taraf hizmeti kullanmaya ikna edemezsem , neleri saklamalıyım? müşterilerin kredi kartı bilgilerini güvende tutmak için? Özellikle, şifreleme anahtarlarını nasıl yönetmeliyim? Her müşteri girişi için ayrı bir şifreleme anahtarı olmalı mı? İşlemleri Authorize.Net'e göndermeden önce kredi kartı bilgilerinin şifresini çözebilmek için anahtarları nerede saklayabilirim? Yukarıda belirtilen iki seçenek benim için çok sağlam görünmüyor (ama yine de, konuyu her ikisine de zorlayıcı bir tartışma yapacak kadar iyi bilmiyorum).


Güncelleme : Şirkette PCI DSS uyumluluğunu bilen birini buldum, bu yüzden yapmak için onunla çalışıyorum Ancak, yukarıdaki sorularıma cevapları takdir ediyorum (hem bilgimi geliştirmek hem de benzer bir durumda başkalarına yardım etmek için).

Güncelleme 2 : Başarılı! Başka bir geliştirici oturdu ve PCI DSS yönergesini okudu ve sonuçta bilgileri kendimiz saklamanın kötü bir fikir olduğuna karar verdi. Authorize.Net'in Müşteri Bilgi Yöneticisi hizmet.

38
M8R-53mg86

Kart numaralarını saklamak, PCI-DSS gereksinimlerine uymanız veya satıcı hesabı sözleşmenizin para cezası ve ihlali riskini almanız gerektiği anlamına gelir. PCI-DSS'nin muazzam bir gereksinimleri vardır - bazıları mantıklı, bazıları zahmetli, bazıları şüpheli kullanışlılık - ve buna uymanın maliyeti ve buna uyduğunuzu belgelemek çok yüksek olabilir.

PCI-DSS 2.0 standardı indirin ve korkun.

Özellikle, önerilen yaklaşımların hiçbiri PCI-DSS uyumlu değildir. Anahtarlar korumasız olarak veya korudukları kart sahibi verileriyle aynı yerde saklanmamalıdır.

Bu kurum içi uygulama yapmanız gerekiyorsa, PCI-DSS'nin yalnızca sınırlı sayıda sistem için geçerli olması için kart numaralarına dokunan bileşenleri diğer her şeyden ayırmanız gerekir. Kart sahibi verilerinizi minimumda tutmaya yardımcı olmak için belirteç çözümlerine bakın. Bunu doğru yapmazsanız, tüm sunucularınızı (hatta tüm şirket masaüstlerinizi!) PCI kapsamına kolayca bırakabilirsiniz; bu noktada uyumluluk imkansız hale gelir.

Authorize.net otomatik yinelenen faturalandırma hizmetleri sunar. Akıl sağlığı sevgisi için bunu kullanın.

33
bobince

"Hiçbirimiz güvenlik uzmanı değiliz" ve "Kredi kartı bilgilerimi bu şekilde saklayan bir şirketten rahatsız olmazdım" tamamen geçerli argümanlar. Teknik açıdan (esaslar üzerine), tartışmayı bitirmek için gerekir. Ancak, güvenlik uzmanı olmayan kişilerle tartışıyorsanız, iyi argümanları tanıyacak durumda olmayabilirler.

Yani, esasları tartışmanın sizi hiçbir yere götürmediğini görürseniz, yum Balyoz (bürokratlara karşı +20 hasar verir). Özellikle, onlara PCI DSS'yi hatırlatın. Onlara PCI DSS uyumluluğunu elde etme maliyetini hesaplayıp fiyatlandırmadıklarını sorun. Onlardan bu özelliğin ne kadar ek gelir sağlayacağının maliyet-fayda analizini isteyin (genellikle cevap: 0). ) ve işin maliyetinin ne kadar olacağı (genellikle cevap: büyük) Çoğu durumda bu oyun biter.

Ya da en azından tartışmayı bitirmeli. Değilse, yöneticilerinizle konuşun, çünkü bu sonuçta bir iş kararıdır ve doğru çağrıyı çok hızlı bir şekilde tanımalıdırlar.

Ve yöneticileriniz bunu anlamadıysa - önerebileceğim tek şey: yeni yöneticiler edinin. Belki özgeçmişini güncelleme zamanı.

28
D.W.

Şirketinizin bir SAQ DSS SAQ D'deki tüm sorulara cevap vermeden veya hatta tüm soruları cevaplamaya çalışmış gibi görünmüyor). kart sahibi verilerinden kurtulmanın bir yolunu arıyor ve bunu yapmanın çok maliyetli olmadığını umuyor. Bir çözümün uygulanmasının henüz maliyetli olmadığı bir noktadaysanız, verilerinizi kesinlikle Authorize.net veya başka bir 3. taraf.

İş arkadaşlarınıza yapabileceğiniz en iyi argüman, bir PCI PCI'nın ne kadar büyük olduğunu ve kart sahibi verilerini kendiniz saklamıyorsanız bu güçlüğün ne kadar azaltıldığını açıklamaktır. PCI uyumluluğunu korumak tam zamanlı bir iştir. Kart sahibi verilerini saklıyorsanız, uyumluluğu korumak için yerine getirmeniz gereken çok daha fazla gereksinim vardır (PCI DSS SAQ D, SAQ C'nin iki katıdır). Dürüst olmak gerekirse, verileri kendiniz saklamayı bile düşünmezdim.

7
freb

Çoğu Patron/İş Arkadaşınız, onları sunabileceğiniz tüm 'teknik' sorunları anlamayabilir.

Bu nedenle, bunları mükemmel bir şekilde anlayabilecekleri bir alanda ele almanız gerekir - maliyet/para.

Bunu açıklarken faydalı bulduğum şeylerden biri, hacklenecek ve kredi kartı bilgileri çalınacak olursa, sadece para cezaları için değil, aynı zamanda yeni bir kredi kartının yeniden verilmesi maliyetinden de sorumlu olacaklarıdır.

Örneğin: Şirketinizde 100.000 kredi kartı numarası varsa, herhangi bir para cezası ödemeden ÖNCE bu kartları değiştirmek için bir milyon dolara mal olacaktı (oh ve bu arada PCI uyumlu değilse CFO hapse girebilir)

Tıpkı malları için sigortaları gibi

4
pzirkind